PetoBin把EXE转成bin工具思路"

admin 2026-10-16 09:50:40 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

PetoBin把EXE转成bin工具思路

原创

词不达意
词不达意

词不达意安全团队

2026年9月23日 16:51
上海

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

工具免杀思路

在实现工具免杀时,我们常常使用petobin类的程序,如Donut、EXEToShellcode,将自定义的工具程序转换为.bin(raw shellcode类型),再自实现加载器去运行工具,实现工具免杀

tobin

使用ai实现了一个petobin的程序,方便自己使用,而且无开源的明显特征,接下来分享下实现思路。

普通 EXE 不能直接复制到内存后运行,因为 Windows 平时会替它完成很多准备工作:分配内存、复制节、修正地址、加载 DLL、填写函数地址,最后才跳到程序入口。tobin 生成的 out.bin,就是把这些准备工作一并打包进去。

整体流程

生成的.bin文件结构

out.bin
├─ 64 字节 bootstrap       自定位并找到 loader
├─ 192 字节 descriptor     描述各部分位置、大小和校验值
├─ PE loader               在内存中装载 EXE
├─ 可选默认参数
└─ 原始 EXE 文件

具体流程

输入 EXE
   │
   ▼
检查是不是合法 x64 PE
   │
   ▼
加入 bootstrap + descriptor + loader
   │
   ▼
生成 out.bin
   │
   ▼
普通 RAW loader 从 offset 0 调用
   │
   ▼
bootstrap 找到 PE loader
   │
   ▼
PE loader 在内存中还原并运行 EXE

Builder 拼装器

它把各部分按照 16 字节边界排列,并生成 descriptor。descriptor 记录:

  • • 整个 RAW 文件大小;
  • • loader 的位置和大小;
  • • 参数的位置和大小;
  • • 原始 EXE 的位置和大小;
  • • EXE 的 ImageBase;
  • • SizeOfImage;
  • • 入口 RVA;
  • • EXE 使用了哪些 PE 功能;
  • • 原始 EXE 的 SHA-256;
  • • descriptor 自身的 CRC32。
    这样 loader 不需要猜测“EXE 从哪里开始”,只需要读取 descriptor。

bootstrap 是什么

bootstrap只有 64 字节,可以理解为一个很小的“接力跳板”。
它做的事情是:

    1. 通过 RIP 相对寻址找到 out.bin 自身的内存基址。
    1. 保存 Windows x64 ABI 要求保护的寄存器。
    1. 调整栈对齐并预留 shadow space。
    1. 从 descriptor 读取 loader\_offset。
    1. 调用真正的 tobin\_loader。
    1. loader 返回后恢复寄存器并返回调用者。
      关键技术点是 PIC,也就是位置无关代码。无论 out.bin 被复制到哪个内存地址,它都能找到自己内部的 descriptor 和 loader。

PE loader 做什么

相当于一个简化版 Windows PE 装载器,执行顺序大致为:

    1. 验证 descriptor 的 magic、版本和 CRC32。
    1. 计算 payload SHA-256,确认 EXE 没被修改。
    1. 再次解析内嵌 PE。
    1. 从 PEB 找到已经加载的 kernel32.dll。
    1. 从导出表解析所需 Windows API。
    1. 使用 VirtualAlloc 分配 SizeOfImage 大小的内存。
    1. 复制 PE 头和各个 section。
    1. 如果实际地址不同,处理 DIR64 重定位。
    1. 加载依赖 DLL,填写 IAT。
    1. 初始化安全 cookie 和部分 TLS 数据。
    1. 根据节属性设置最终内存权限。
    1. 刷新指令缓存。
    1. 跳转到 EXE 的 OEP,也就是原始入口点。
      它不会直接静态链接 Windows API。相反,它从 PEB 获取 kernel32.dll,再读取 PE 导出表找到 VirtualAlloc、LoadLibraryA 等函数。这也是 loader 能保持位置无关的重要原因。

使用教程

将mimikatz转换为out.bin,简单写个loader去加载执行,正常运行支持go、rust、c/c++程序转换

纷传介绍

圈子往期文件内容如下


群友反馈

  • •冲锋马一键生成工具(一键生成免杀loader)
  • •lnk文件一键生成工具(一键生成免杀钓鱼lnk文件)
  • •bypass内存扫描插件(可绕过火绒、卡巴斯基等杀软内存扫描cs插件)
  • •暗涌在线免杀平台(白文件patch免杀loader(分离、单文件)一键生成平台、支持反沙箱)
  • •bypass任务计划工具(普通权限可添加、钓鱼快速免杀维权)
  • •后渗透工具免杀(petobin,分离加载避免静态落地被秒)
  • •BYOVD攻击一键结束赛门铁克进程
  • •BinPatch免杀工具过国内主流杀软
  • •白影(whiteShadow)自动化白加黑免杀工具v1.0
  • •白影(whiteShadow)自动化白加黑免杀工具v2.1
  • •Windows恶意软件常见API一览(PDF)
  • •Maldev Academy 恶意软件开发完整课程(源码+VM镜像)
  • •SplitRun一款exe免杀工具v1.0
  • •cs4.5二开过火绒内存扫描
  • •binfileBinder文件捆绑工具
  • •RPC添加计划任务绕过360核晶
  • •RunPack内部版单文件loader免杀1.3
  • •VoidShell/VoidShell-fe内部版:x86-64 Linux ELF 加壳混淆工具
  • •白影(whiteShadow)自动化白加黑免杀工具v2.4
  • •RRR C2 v1.2

重要声明

本文所涉及的技术、思路和工具仅用于本地靶场安全测试和防御研究,切勿将其用于非法入侵或攻击他人系统等目的,一切后果由使用者自行承担,禁止用于任何非法渗透测试,以及无授权违法测试,请遵守中华人民共和国网络安全法。


PetoBin把EXE转成bin工具思路" 网络安全文章

PetoBin把EXE转成bin工具思路"

本文介绍petobin工具将exe转换为bin格式以实现免杀的思路,通过bootstrap、descriptor和peloader在内存中还原并运行exe,支持自定义加载器,避免静态落地特征,并附使用教程及工具分享。
某大厂员工爆料:以后研发人员试用期转正、年度KPI、晋升,全都要参考Token消耗数据,用得少的人,不仅晋升无望,甚至可能被替代。" 网络安全文章

某大厂员工爆料:以后研发人员试用期转正、年度KPI、晋升,全都要参考Token消耗数据,用得少的人,不仅晋升无望,甚至可能被替代。"

某大厂爆料称研发人员试用期转正、年度KPI和晋升将参考token消耗数据,引发对考核合理性的讨论。文章指出token消耗受多种因素影响,直接作为绩效指标易导致刷量行为,建议关注交付结果、代码质量等实际价值,而非单纯量化token。
专家解读|筑牢政务系统第三方运维中的数据安全防线" 网络安全文章

专家解读|筑牢政务系统第三方运维中的数据安全防线"

本文解读宁夏某科技公司员工将政务系统敏感数据上传至公开代码仓库遭行政处罚的案例,指出第三方运维存在协作工具管理、权限控制等系统性不足。依据数据安全法与网络数据安全管理条例,强调委托方监督责任与受托方保护义务,并提出加强运维监督、落实安全制度、完善权限管理及建立协同处置机制等建议。
评论:0   参与:  0