逆向分析中常见的api函数

原创 2015年11月18日 17:12:53
1  comctl32.dll

Windows应用程序公用GUI图形用户界面模块。

2  imm32.dll

电脑的系统文件,与输入法密切相关。

3  SetDispositionInformationFile

设置部署信息文件

4  LockFile

可以锁定文件的一部分, 锁成功返回非0,他只能锁定一个打开的文件,给予锁定者以独占的模式。禁止其他线程访问。UnlockFile()解锁,类似

5  ntdll.dll

描述了windows本地NTAPI的接口。是重要的Windows NT内核级文件。

6  conime.exe
7  msimg32.dll

是Windows图形设备接口GDI相关模块,用于支持新的API应用程序接口和GDI32相关特性。

8  winmm.dll

是Windows多媒体相关应用程序接口,用于低档的音频和游戏手柄。

9  WindowsShell.Manifest

WinXP 样式的配置文件;该文件损坏会导致 XP 变回经典样式的界面。

10  GetPrivateProfileString

初始化文件中指定的条目取得字串。

11  RegCreateKeyEx

该函数用来创建注册表键,如果该键已经存在,则打开它(注册表键不区分大小写)

12  ShellExecuteHook

从最初的第三方EXE加载DLL启动方式开始,到随后的使用rundll32.exe加载运行,再到利用NT服务的宿主程序svchost.exe实现启动,直到使用“ShellExecuteHook”(执行挂钩)技术,如今许多木马和恶意程序都在用户层使用ShellExecuteHook作为启动方式,实现随系统启动。

13 CreateToolhelp32Snapshot

函数通过获取进程信息为指定的进程、进程使用的堆[HEAP]、模块[MODULE]、线程建立一个快照.说到底,可以获取系统中正在运行的进程信息,线程信息等。

14 process32First 

是一个进程获取函数,当我们利用函数CreateToolhelp32Snapshot()获得当前运行进程的快照后,我们可以利用process32First函数来获得第一个进程的句柄.

15 Process32Next

是一个进程获取函数,当我们利用函数CreateToolhelp32Snapshot()获得当前运行进程的快照后,我们可以利用Process32Next函数来获得下一个进程的句柄.其原型为

16 GetEnvironmentVariable

获取系统变量。

17 GetModuleHandleA

获取一个应用程序或动态链接库的模块句柄

18 CreateMutex

作用是找出当前系统是否已经存在指定进程的实例。如果没有则创建一个互斥体。

19 GetStartupInfo

Windows API函数。该函数取得进程在启动时被指定的 STARTUPINFO 结构。

20 GetCommandLine

获得指向当前命令行缓冲区的一个指针。

21 GetEnvironmentStrings

函数获取系统环境变量。

22 GetModuleFileName

获取当前进程已加载模块的文件的完整路径,该模块必须由当前进程加载。

23 SystemParametersinfo

该函数查询或设置系统级参数。该函数也可以在设置参数中更新用户配置文件。

24  rep movs dword ptres:[edi], dword ptr [esi] 

循环从esi指向的内存区域复制数据到edi处的内存区域,复制ecx次,每次是一个DWORD  

25 REPNE SCAS BYTE PTR ES:[EDI]

扫描 ES:[EDI]字符串中的 AL值.值到找到AL值后停止.

25 FindFirstFile:

根据文件名查找文件。该函数到一个文件夹(包括子文件夹)去搜索指定文件如果要使用附加属性去搜索文件的话可以使用FindFirstFileEx函数。

26 GetEnvironmentStrings

该函数为当前进程返回系统环境变量,它取代了DOS模式下的相应函数:GetDOSEnvironment()

27 GetUserDefaultLCID:

获得默认的用户本地标识符。CHS简体中文

28 attrib.exe

是DOS下不常用的命令。它是显示、设置,或删除指派给文件或目录的属性。ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I]
     [drive:][path][filename][/S [/D] [/L]]

29 setenvironmentvariable

函数用于设置指定的环境变量:
用法:
BOOL WINAPISetEnvironmentVariable(
__in     LPCTSTR lpName, //环境变量名,当该值不存在且lpValue不为NULL时,将创建一个新的
__in_opt LPCTSTR lpValue //环境变量值);

30 LoadLibrary:

载入指定的动态链接库,并将它映射到当前进程使用的地址空间。

31 ExpandEnvironmentStrings

扩充环境字串。具体操作过程与命令行处理的所为差不多。也就是说,将由百分号封闭起来的环境变量名转换成那个变量的内容。比如,“%path%”会扩充成完整路径。在vb里经常用于为新进程创建一个环境块

32 GetVersion

判断当前运行的Windows和DOS版本

33 wsprintf

函数wsprintf()将一系列的字符和数值输入到缓冲区。输出缓冲区里的的值取决于格式说明符(即"%")。如果写入的是文字,此函数给写入的文字的末尾追加一个'\0'。函数的返回值是写入的长度,但不包括最后的'\0'。

34 ShellExecute createprocess  winexec:
这三者都可以执行可执行文件功能上:createprocess  >  shellexecute   >   winexec  复杂程度也是!winexec() 只用于可执行文件,是一个老函数啦,虽然使用方便,但不推荐!(兼容性也不好);shellexcute()是通过windows外壳打开任意文件,非可执行文件自动通过关联的程序打开对于可执行文件,区别不大,不过shellexcute可以指定运行时的工作路径;winexec() 必须有GetMessage或超时之后才返回!CreateProcess和ShellExecute都是直接返回的!
35 writefsdword

Write memory to a location specified by an offset relative to thebeginning of the FS segment。用法:
void__writefsword( 
   unsigned long Offset, 
   unsigned short Data 
);

36 GetLastError

该函数返回调用线程最近的错误代码值,错误代码以单线程为基础来维护的,多线程不重写各自的错误代码值。分析过程中常见的返回值类型:(1)当返回值为183—>当文件已存在时,无法创建该文件。(2)当返回值为2的时候找不到指定文件。(3)返回值为3的时候找不到指定路径。

37 VirtualAllocEx

函数可以用来在其他进程的地址空间内申请内存 。

38 CreateRemoteThread

函数用来在其他进程内创建一个线程,当然创建的线程是运行于目标进程的地址空间内的,它和目标进程自己创建的线程并没有什么区别。


加密与解密(逆向常用API)

原地址戳我。 转自鱼C工作室。     在逆向中,我们常常需要从一些关键的API函数入手,大部分新手对此望而生畏!       小甲鱼在这里给大家整理出逆向中需要掌握和注意的API函数及其用...
  • a460550542
  • a460550542
  • 2017年04月13日 21:53
  • 469

加密与解密(逆向常用API)

原地址戳我。 转自鱼C工作室。     在逆向中,我们常常需要从一些关键的API函数入手,大部分新手对此望而生畏!       小甲鱼在这里给大家整理出逆向中需要掌握和注意的API函数及其用...
  • a460550542
  • a460550542
  • 2017年04月13日 21:53
  • 469

从逆向分析角度看C++虚函数

从逆向分析角度,粗略地分析了虚拟表的结构,本人才疏学浅,有误之处,望各位指正...
  • yeweiouyang
  • yeweiouyang
  • 2013年07月28日 09:31
  • 5201

手把手教你逆向分析 Android 程序

转载自:https://segmentfault.com/a/1190000005133219  作者真是高手 很多人写文章,喜欢把什么行业现状啊,研究现状啊什么的写了一大通,感觉好像在写...
  • Working_Harder
  • Working_Harder
  • 2016年11月22日 16:32
  • 7204

简单逆向分析使用案例(7)--Reverse001.exe 获取密码

环境:      win7 旗舰版 x64       OD1.1(吾爱破解版)       PEiD0.95 使用资源       http://download....
  • oBuYiSeng
  • oBuYiSeng
  • 2015年12月16日 15:52
  • 2148

windows内核Api的学习

windows内核api就是ntoskrnl.exe导出的函数。我们可以跟调用应用层的api一样,调用内核api。不过内核api需要注意的是,如果函数导出了,并且函数文档化(也就是可以直接在msdn上...
  • QQ1084283172
  • QQ1084283172
  • 2015年07月02日 16:50
  • 2022

逆向分析入门

逆向分析前期学习1.首先建议学习几门语言; 汇编, C++, Python. 他们一个比一个抽象.C++里的编程范型是比较多的,而python是另一个程度的抽象.这三门语言,差不多可以代表现今发挥了巨...
  • wang010366
  • wang010366
  • 2016年09月16日 21:56
  • 1050

病毒木马查杀实战第005篇:熊猫烧香之逆向分析(上)

一、前言         对病毒进行逆向分析,可以彻底弄清楚病毒的行为,从而采取更有效的针对手段。为了节省篇幅,在这里我不打算将“熊猫烧香”进行彻底的分析,只会讲解一些比较重要的部分,大家只要掌握了这...
  • ioio_jy
  • ioio_jy
  • 2014年11月17日 12:29
  • 3474

逆向工程入门

本问只是为初入逆向工程大坑的新人们指出方向学习,没有实质性的技术。总的来说,基础才是最重要的。逆向工程入门应该算是所有学习方向中最难的。但是选择了这一方向的请不要放弃,一旦学成,必定会是大神级别的存在...
  • zh_explorer
  • zh_explorer
  • 2015年07月20日 20:13
  • 2137

逆向教程->U3D游戏逆向分析(伊甸逆向分析)

原软件下载地址:http://ng.d.cn/yidian/
  • Sarkozy2014
  • Sarkozy2014
  • 2014年09月09日 21:08
  • 4436
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:逆向分析中常见的api函数
举报原因:
原因补充:

(最多只允许输入30个字)