shellcode加载器 编写方法

 

 

1. 生成shellcode

利用常见的工具,如Metasploit和Cobalt Strike生成出shellcode,如下例子:

msfvenom -p windows/x64/exec CMD=calc.exe -f hex

2. 编写加载器

不同的编程语言,编写的逻辑也是基本一致。

- 选取库文件

- 输入shellcode

- 获取dll文件

- 内存属性获取(申请一块可读可写可执行的内容)

- 拷贝shellcode、长度到内存上

- 执行线程,利用回调函数执行shellcode

- 等待线程回调返回,防止主线程先结束

 

学到这里,疑问变得更多了。

执行shellcodeLoader前,需要对shell进行免杀、杀软绕过的的处理,这个是另外的学习方向和需要不同学习材料;

除了平台上给的通用shellcode,是否还有别的可以使用;

作为防守方时,如何动态调试分析、静态调试分析shellcode,

 

希望学完这些后,能自己完成很多有趣的漏洞利用代码和独立的Shellcode的编写,或者改写他人优秀的Shellcode代码。

 

参考文章:

https://xz.aliyun.com/t/2108

https://www.freebuf.com/column/231663.html

https://www.freebuf.com/articles/network/228795.html

posted @   ardyh  阅读(348)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2021-08-03 nmap 使用记录
点击右上角即可分享
微信分享提示