电脑中木马了!c++木马开机自启动- ActiveX启动
一 学习目标
这是一段远程控制木马开机启动的代码,主要使用了ActiveX方式启动。结合自己的了解重新整理了笔记。而作为编程新手入门的自己决定要开始梳理学习目的和订下学习的目标。从今天开始要坚持做到
1.逼自己去看英文版本的MSDN掌握windowsAPI的使用。
2.锻炼编程开发能力,快速开发出安全工具。
3.逆向自己编写的程序熟习反汇编代码来提升自己的逆向能力,由于逆向和开发的能力是成正比的。
image
二 编程思路
- ActiveX启动原理
ActiveX启动是在HKEY_LOCAL_MACHINE下的Software\ Microsoft\Active Setup\Installed Components\中注册一条相似{36f8ec70-c29a-11d1-b5c7-0000f8051515}的子建,而后子键中新建StubPath的值项,内容为启动的文件名
image
编写的思路
要考虑到假如键值已经存在,那么就删除。假如键值没有,那么就创立
- 1、打开指定的注册表键 RegOpenKeyEx
第一步则先判断打开的注册表键动作能否成功,根据状态继续执行之后的步骤
- 1.1 未成功
- 1.2 获取系统文件夹 GetSystemDirectory
- 1.3 获取执行文件当前所在目录 GetModuleFileName
- 1.4 复制自身到系统文件夹中 CopyFile
- 1.5 新建注册表子键与值项 RegCreateKeyEx
- 1.6 新建注册表子建值项内容 RegSetValueEx
- 1.7 关闭注册表句柄 RegCloseKey
- 2、 成功
- 执行弹出计算器 WinExec
- 删除键值 RegDeleteKey
image
三 实现流程
编程环境
操作系统:windows 7
编译器版本:vs 2010
前置API函数
// 打开注册表 RegOpenKeyEx() // 打开系统目录路径 GetSystemDirectory() // 获取当前程序运行目录路径 GetModuleFileName() // 复制文件 CopyFile() // 创立新的注册表键 RegCreateKeyEx() // 修改注册表键值 RegSetValueEx() // 释放注册表键句柄 RegCloseKey() // 执行程序函数 WinExec() // 开启线程 _beginthreadex() // 等待线程 WaitForSingleObject() // 关闭线程 CloseHandle()
C++代码
vs2010,vs2015编译通过
image
成功截图
image
最后,假如你想学c++可以加入小编学习群:825414254获取素材资料开发工具以及学习资料(不是学c++的同学非诚勿扰哦!)
image
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 电脑中木马了!c++木马开机自启动- ActiveX启动