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
本文来自博客园,作者:ardyh,转载请注明原文链接:https://www.cnblogs.com/ardyh/p/17604059.html

浙公网安备 33010602011771号