探索Bitmancer:用Nim构建Windows安全工具的新范式

探索Bitmancer:用Nim构建Windows安全工具的新范式

项目简介

Bitmancer是一个专为Windows操作系统设计的进攻性安全工具开发库,它由Nim语言编写。这个项目旨在提供可高度配置、独立于位置的通用API、程序和宏,以帮助你快速启动新的植入物、PoC测试或创新工具的开发。

请注意,这是一个正在进行中的大工程,可能会遇到一些问题,稳定性的保证暂时还未提供。但是,如果你是热衷于探索新工具和技术的开发者,那么Bitmancer值得你关注!

项目技术分析

Bitmancer的核心特点是其部分依赖于winim库,提供了类型支持。通过nimble安装即可:

nimble install winim

安装Bitmancer目前只能通过GitHub源码进行:

nimble install https://github.com/zimawhit3/Bitmancer

编译时可以使用nim.cfg来避免对MSVCRT和Kernel32的依赖以及Nim系统模块的全局变量,以实现位置无关代码:

nim c -d:mingw <Your_Nim_File>

在你的Nim文件中导入Bitmancer模块非常简单:

import Bitmancer

或者只导入特定功能:

import Bitmancer/core # 只导入核心模块
import Bitmancer/core/obfuscation/hash # 只导入哈希处理

应用场景

Bitmancer适用于各种安全工具开发场景,包括但不限于:

  • 创建隐蔽的植入物
  • 快速验证概念证明(Proof-of-Concept)代码
  • 开发用于漏洞利用、取证分析或逆向工程的工具

该库提供了多种实用功能,如ApiSet名称解析、常见API接口、哈希计算(编译时与运行时)、手动映射器、NTDLL函数封装、PE解析工具、SSN枚举等。

项目特点

现有功能

  • 动态链接库(DLL)的ApiSet名称解析
  • 常见API接口(如GetProcAddress,GetModuleHandle等)
  • 编译时与运行时哈希计算
  • 手动映射器(从磁盘加载)
  • NTDLL API接口,包括NT系统调用和Rtl过程
  • NTLoader数据库
  • PE解析和工具
  • SSN枚举(多种方法)
  • 栈字符串
  • 系统调用规避技术

未来计划

Bitmancer还计划支持更多高级功能,如反调试技术、加密、异常处理、回调、钩子函数、更多的NTDLL包装器、睡眠规避技术等。

使用示例

在Bitmancer中创建栈字符串是这样的:

var wStr {.stackStringW.} = "Hello!"
var cStr {.stackStringA.} = "World!"

自动生成并使用系统调用的示例:

## 自定义系统调用类型
type NtClose = proc(h: HANDLE): NTSTATUS {.stdcall, gcsafe.}

## 获取系统调用对象
let NtSyscall = ctGetNtSyscall[NtClose](...)

## 调用系统调用
NtCloseWrapper(h, NtSyscall.wSyscall, NtSyscall.pSyscall, NtSyscall.pFunction)

更多例子可以在项目仓库的examples目录下找到。

Bitmancer以其强大的功能和高度灵活性,为Windows平台的安全工具开发提供了全新的可能性。现在就加入,开始你的技术探险之旅吧!

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

任翊昆Mary

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值