简单加壳实现
0x01 框架使用壳源 + SRC的加壳模式
VC6的开发环境, 接我上一个帖子(loadPE的编写)
0x02 主要流程
加壳过程:
1\ 获取shell的路径
2\ 获取待加壳程序的路径
3\ 将待加壳的程序读入内存, 加密(简单的 xor加密)
4\ 在shell中 新增一个节, 将加密的数据 追加到 shell程序的新增节中
壳子程序的解壳过程
1\ 读取主模块数据
2\ 解密 得到PE文件
3\ CreateProcess (挂起的形式创建)
4\ 获取Context
5\ 卸载外壳程序
6\ 在指定位置分配内存
7\ 修改Context
8\ 回复线程
0x03 说明
壳子很简单, 解壳的过程很多,源代码只是一个框架, 变化的手法很多
本人技术一般, 写的过程, 很多都是参考红色病毒的代码, 然后自己修改而成, 代码仅供参考, 给大家源代码 分享!
0x04 项目截图
源代码分享:
分为两个:
加壳端:
shell:
gunxsword 发表于 2018-1-16 09:03
历害历害,能写壳的都是高手!
真不是高手, 谢了快一周了, 卡了很多地方, 基本参考了红色病毒的源码, 然后自己修改而成! 感谢楼主的分享 学习了,多谢楼主 正对此感兴趣,谢谢分享! 谢谢分享。。。 历害历害,能写壳的都是高手! psp7456 发表于 2018-1-16 07:26
正对此感兴趣,谢谢分享!
谢谢支持, 代码仅供参考, 写的很烂的 支持一个 是免杀壳吗