如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术

admin 2023年12月29日00:34:27评论21 views字数 1419阅读4分43秒阅读模式

如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术


如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术

关于ModuleShifting


ModuleShifting是一款针对Module Stomping和Module Overloading注入技术的安全测试工具,该工具基于Python ctypes实现其功能,因此可以通过Python解释器或Pyramid在内存中完整执行,这样就可以避免使用编译加载器了。


需要注意的是,该技术可以与PE或Shellcode Payload结合使用,但当前版本的ModuleShifting只能与Shellcode Payload一起使用。


功能介绍


当该工具与Shellcode Payload一起使用时,将执行下列操作:

1、通过LoadLibrary加载合法的宿主DLL;

2、将指定区域的内存权限修改为RW;

3、将Shellcode重写至目标区域;

4、添加可选填充数据以更好地伪装成误报行为;

5、将权限更改为RX;

6、通过函数指针执行Shellcode;

7、在执行的Shellcode上写入原始DLL内容;


如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术


当该工具与一个PE Payload一起使用时,则会执行下列操作:

1、通过LoadLibrary加载合法的宿主DLL;

2、将指定区域的内存权限修改为RW;

3、将PE内容逐节复制到指定目标点上;

4、添加可选填充数据以更好地伪装成误报行为;

5、执行基地址重新分配;

6、解析导入;

7、通过将权限设置为其本机值来完成内存处理(避免创建RWX内存区域);

8、TLS回调执行;

9、执行PE入口点;


工具安装


由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3环境。接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:
git clone https://github.com/naksyn/ModuleShifting.git


ModuleShifting可以和Pyramid一起使用,配合一个Python解释器,即可在内存中完整执行本地进程注入了。


此时我们还需要使用下列命令克隆Pyramid代码库:

git clone https://github.com/naksyn/Pyramid


然后使用你喜欢的C2生成一个Shellcode Payload,并将其拖动到Pyramid的Delivery_files文件夹中。


修改Pyramid Modules文件夹中moduleshifting.py脚本中的相关参数,然后使用下列命令开启Pyramid服务器:

python3 pyramid.py -u testuser -pass testpass -p 443 -enc chacha20 -passenc superpass -generate -server 192.168.1.2 -setcradle moduleshifting.py
(滑动查看更多)

工具运行截图

如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术


如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术


如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术


如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术


如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术


如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术


许可证协议


本项目的开发与发布遵循Apache-2.0开源许可证协议。


项目地址


ModuleShifting

GitHub - naksyn/ModuleShifting: Stealthier variation of Module Stomping and Module Overloading injection techniques that reduces memory IoCs. Implemented in Python ctypes


原文始发于微信公众号(FreeBuf):如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年12月29日00:34:27
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   如何使用ModuleShifting测试Module Stomping和Module Overloading注入技术https://cn-sec.com/archives/2345224.html

发表评论

匿名网友 填写信息