0x01 工具介绍
0x02 安装与使用
void* sc_exec()
{
NativeApi func; // 上下文,里面有需要用到的`全局`变量
init_api(&func); // 初始化下,一般在里面获取函数地址之类的
// 方式一:硬编码你的命令
char cmdline[] = { 109, 115, 112, 97, 105, 110, 116, 46, 101, 120, 101 , 0 }; // mspaint.exe
// 方式二:将要执行的命令放在shellcode后面(需要你自己加到“shellcode导出文件”尾部),这样的好处就是,shellcode生成一次
// 要执行的命令可以通过重新修改尾部数据达到动态修改功能的目的
// 当然,放哪里都行,能找到地址就好
// char* cmdline = (char*)main_end + (UINT32)get_rtoffset();
func.winexec(cmdline, SW_SHOW);
return 0;
}
2、将 sc_exec 放到 order.txt 里面
main_entry
get_rtoffset
get_kernel32
get_export_byhash
get_import_module
calc_hash
init_api
strlen_me
sc_exec
_main
main_end
3、在_main里面调用下,然后编译执行
void* _main(){
sc_exec();
return 0;
}
0x03 项目链接下载
https://github.com/y11en/babysc
原文始发于微信公众号(网络安全者):自用的shellcode生成框架
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论