我是Ida的新手,我需要用它来识别可执行文件中的哪些函数调用其中的一个。我试图找到一种方法将数据包加密为安全练习。让我们说我想查看导入窗口并看到这些,这是否意味着那些是可执行文件中引用的唯一函数? 如何找到引用sendto的位置?我尝试按名称搜索它,但搜索需要永远,似乎没有找到任何东西。
地址序号库
------- ------- ---- -------
0109150C 111 imp_WSAGetLastError WS2_32
01091524 101 __imp_WSAAsyncSelect WS2_32
0109157C freeaddrinfo WS2_32
01091578 getaddrinfo WS2_32
01091548 57 __imp_gethostname WS2_32
01091518 52 __imp_gethostbyname WS2_32
01091530 23 __imp_socket WS2_32
01091528 21 __imp_setsockopt WS2_32
01091554 20 sendto WS2_32
0109154C 19 __imp_send WS2_32
01091574 18 __imp_select WS2_32
01091558 17回收WS2_32
01091550 16 __imp_recv WS2_32
01091508 15 __imp_ntohs WS2_32
01091514 14 ntohl WS2_32
01091540 13 __imp_listen WS2_32
0109151C 12 __imp_inet_ntoa WS2_32
01091520 11 __imp_inet_addr WS2_32
01091580 10 __imp_ioctlsocket WS2_32
01091568 115 __imp_WSAStartup WS2_32
01091538 9 __imp_htons WS2_32
01091534 3 __imp_closesocket WS2_32
0109152C WSAIoctl WS2_32
01091510 8 htonl WS2_32
01091570 151 __imp _WSAFDIsSet WS2_32
0109155C 7 getsockopt WS2_32
0109153C 2 __imp_bind WS2_32
01091564 6 getsockname WS2_32
01091560 5 getpeername WS2_32
01091544 1 __imp_accept WS2_32
01091584 4 __imp_connect WS2_32
0109156C 116 __imp_WSACleanup WS2_32
答案 0 :(得分:10)
如果你想找到导入函数的使用位置,我在导入视图中有MessageBoxA
函数:
00406160 MessageBoxA USER32
双击它,它会让你进入IDA视图,你会看到类似的东西:
.idata:00406160 ; int __stdcall MessageBoxA(HWND hWnd, LPCSTR lpText, LPCSTR lpCaption, UINT uType)
.idata:00406160 extrn __imp_MessageBoxA:dword ; DATA XREF: MessageBoxA^r
单击函数名称MessageBoxA
,它将变为黄色,然后单击键盘上的 X 或右键单击该函数,然后选择跳转到外部参照到操作数... 即可。您将转到使用该函数的位置,或者如果从多个位置调用它,您将看到对话框。