LoginSignup
0
0

More than 3 years have passed since last update.

OffensiveNim之偏僻语言shellcode加载器

Last updated at Posted at 2020-11-24

@byt3bl33d3r 师傅在twitter上发布了他最新的一个GitHub仓库,名为OffensiveNim。该仓库使用介绍了一种新的编译型语言来写一些工具,比如minidump、shellcode loader。

为什么选择nim?

  1. 可以直接编译为C、C++、Objective-C和Javascript。
  2. 语法简单,不依赖运行时虚拟机。
  3. 具有极其成熟的外部接口API。
  4. 跨平台交叉编译。
  5. 可以将代码直接编译为Javascript,甚至初步支持WebAssembly

使用OffensiveNim

OffensiveNim提供了几个代码demo

image.png

我们使用kali来编译OffensiveNim提供的demo,先git clone下来

git clone https://github.com/byt3bl33d3r/OffensiveNim.git

安装nim编译器和nimble包管理器。

sudo su
apt update
apt install nim

如果你要编译出Windows下可以运行的exe和dll文件,那么必须安装mingw

apt install mingw-w64

然后使用包管理器nimble安装winim包

nimble install winim

image.png

最后cd到OffensiveNim的根目录,运行make命令即可。

几分钟编译完之后会在bin目录下生成exe可执行文件,拖回本地执行即可。

加载shellcode

拖回本地的文件落地就被Windows defender杀烂,根据特征应该是msf的shellcode特征。
image.png

查看其代码在shellcode_bin.nim中写死了shellcode。
image.png

那就用nim写一个shellcode混淆的就可以了,实现的代码就不放了,就一个xor加密shellcode。

image.png

正常上线
image.png

参考

  1. https://github.com/byt3bl33d3r/OffensiveNim/
  2. https://twitter.com/byt3bl33d3r/status/1330572114970042369
  3. https://nim-lang.org/
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0