导出函数,非导出函数,公开函数,非公开函数

导出函数:顾名思义,出现在导出表(EAT)里面的函数,可以给外部调用的函数,验证是否为导出函数的方法,熟悉逆向的朋友可以使用LordPE之类的工具查看,当然也可以使用GetProcAddress或者MmGetSystemRoutineAddress之类的函数来获取地址,如果成功的话就是导出函数。

非导出函数:这种函数是供自己调用使用的,不想提供给别人使用,当然也有方法可以获取函数地址,可以根据函数的特征来搜索,这就是传说中的硬编码,经典的案例案例如,NtReadVirtualMemory。

公开(文档化)函数:微软(可以是其它厂商~)提供的带有函数原型和文档的函数,这种函数使用起来最方便,不用去寻找或者逆向函数原型,还带有参数说明~~。

非公开(非文档化)函数:没有函数原型和文档的函数,微软经常会把一些参数可能会随时变化的函数,或者功能有点强大的不河蟹的函数隐藏起来,这些也是不河蟹软件最喜欢的函数。通常这类函数可以被GetProcAddress或者MmGetSystemRoutineAddress获取到地址,但是函数原型需要搜索或者逆向。

 

1.公开函数肯定是导出函数,只要你在msdn上能找到函数可定都是能直接调用的导出函数,除非微软蛋疼了。

2.导出函数可以是非公开函数,比如LdrLoadDll这个函数,能取到地址但是msdn上面没有说明。

 

posted on 2013-09-07 22:40 ultracpp 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/ultracpp/p/3307864.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值