开发者社区> 老朱教授> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

C++免杀

简介:
+关注继续查看
假设我们的特征码定位在MessageBoxA函数的地址(只是举个例子,一般这个函数不会被杀,其他函数也类似方法)那么我们到源码里面发现,我们在PrintMsg函数中调用了这个API函数,那么我们就要对他进行处理。对于输入表被查杀我们一般的处理方法是修改函数的调用方式,比如采用dll动态调用,通过上图,我们知道我们是以非unicode方式编译的MessageBox,他对应的非Unicode的函数为MessageBoxA,同时我们也得到这个MessageBoxA函数在UER32.dll文件中。那么我们修改MessageBox的调用方式为dll的动态调用,其代码修改成:
typedef int (WINAPI *MessageBoxAT)
(
  HWND hWnd,
  LPCSTR lpText,
  LPCSTR lpCaption,
  UINT uType
);

void PrintMsg()
{
  char StrMsg[]="FgneL!olleH";
  MessageBoxAT pMessageBoxA= (MessageBoxAT)GetProcAddress(LoadLibrary("user32.dll"),"MessageBoxA");
  pMessageBoxA(NULL,strrev(StrMsg),NULL,MB_OK);
}
这样以后我们就修改了输入表中调用API函数的名称了。其他API函数也可以类似的修改调用方式。



本文转自94cool博客园博客,原文链接:http://www.cnblogs.com/94cool/archive/2012/10/31/2747403.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
推荐算法CB
CB算法 基于内容的推荐。 用户喜欢电影: A ,现在有一部新电影B,怎么确定是否要推荐给用户。 1.对所有的电影进行特征建立和建模。特征就是电影的属性:比如名字,描述,类型,标签,主演等等 2.根据A的特征去筛选电影,如果B的得分很高,那么就可以推荐给此用户 应用场景 比如一个音乐网站,你点击一首歌,那么基于这首歌会推荐内容相关的其他歌曲给你。
1788 0
C++库
音频处理: SoundTouch 音频处理工具--C++ 图像处理: OpenCV 图像处理工具--C++
576 0
[Spark]Spark RDD 指南五 持久化
1. 概述 Spark中最重要的功能之一是操作时在内存中持久化(缓存)数据集(persisting (or caching) a dataset in memory across operations)。
1107 0
国外免费CDN
www.globule.org http://codeen.cs.princeton.edu/ http://www.
614 0
+关注
3545
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载