linuxsir首页 LinuxSir.Org | Linux、BSD、Solaris、Unix | 开源传万世,因有我参与欢迎您!
网站首页 | 设为首页 | 加入收藏
您所在的位置:主页 > Linux及计算机学科基础理论版 >

Sickle:推荐一款优质ShellCode开发工具

时间:2018-03-01  来源:未知  作者:admin666

Sickle是一个shellcode开发工具,用于加速创建正常运行的shellcode所需的各个步骤。

Sickle主要有以下功能:

  • 识别可能会导致shellcode无法正常执行的坏字符。
  • 支持多种语言输出格式(python,perl,javascript等)。
  • 通过STDIN接收shellcode并格式化。
  • 在Windows和Linux环境中均可执行shellcode。
  • 支持shellcode间差异性比较。
  • 反汇编shellcode到汇编语言(例如ARM,x86等)。
  • 快速错误检查

在实际测试当中,测试人员往往需要对一个shellcode进行反复枯燥的测试,才能最终确定shellcode是否可用。这对测试人员来说,是一件相当费时费力的事情。而在这个问题上Sickle也许能助我们一臂之力,Sickle可以为我们快速的检查出shellcode中可能存在的错误问题。(适用于Windows和Unix系统):

shellcode重建

有时你可能想通过自己重建shellcode以了解某个执行流畅的shellceode片段的底层机制。Sickle可以帮助你将原始shellcode与“重建”版本进行差异性比较。

坏字符识别

需要说明的是,关于坏字符的识别最好是在基于Linux的操作系统中使用。在Windows主机上转储shellcode时,并不会突出显示错误的字符。以下是在Unix环境下的一个使用示例:


 
反汇编

也支持一个二进制文件和提取的操作码(shellcode)转换为机器指令(-obj)。注意,这需要与原始操作码(-r)和STDIN(-s)一起执行。在下面的例子中,我把一个reverse shell转换为了程序集。

Sickle:推荐一款优质ShellCode开发工具

Wndows安装

如果你不使用它的反汇编功能,仅仅只是将Sickle作为一个wrapper/dump的工具,那么你可以使用任意版本的Python环境(包括2.7)。这里需要说明的是,我在Windows 10上编写/测试64位shellcode时遇到了一些问题。因此,为了避免大家使用时出现同样的问题,我建议大家安装Python 3.4.4 (amd64) ,但对于其它版本的windows系统并不存在该问题。其次,如果你编写的shellcode为x86,则任意版本的Python都没影响,例如Python 3.7.0a3。以下是在Windows 10主机上测试msfvenom生成的shellcode(“windows / x64 / shell_reverse_tcp”)的用法示例

Linux安装

Sickle是由Python3编写的,并且具有完整的功能,我建议直接安装capstone。Capstone的安装非常简单:
apt-get install python3-pip
pip3 install capstone

如果你不在NASM中编译你的shellcode,我已经添加了一个“objdump2shellcode”的功能。为了便于访问,我更喜欢将Sickle添加到/usr/bin/目录,但是如果使用Black Arch Linux Sickle则已被预安装。(以前称为objdump2shellcode):
root@wetw0rk:~# git clone https://github.com/wetw0rk/Sickle.git
root@wetw0rk:~# cd Sickle/
root@wetw0rk:~# chmod +x sickle.py
root@wetw0rk:~# cp sickle.py /usr/bin/sickle
root@wetw0rk:~# sickle
usage: sickle [-h] [-r READ] [-s] [-obj OBJDUMP] [-f FORMAT] [-b BADCHAR] [-c]
              [-v VARNAME] [-l] [-e EXAMINE] [-d] [-a ARCH] [-m MODE] [-rs]

Sickle - a shellcode development tool

optional arguments:
  -h, --help            show this help message and exit
  -r READ, --read READ  read byte array from the binary file
  -s, --stdin          read ops from stdin (EX: echo -ne "\xde\xad\xbe\xef" |
                        sickle -s -f <format> -b '\x00')
  -obj OBJDUMP, --objdump OBJDUMP
                        binary to use for shellcode extraction (via objdump
                        method)
  -f FORMAT, --format FORMAT
                        output format (use --list for a list)
  -b BADCHAR, --badchar BADCHAR
                        bad characters to avoid in shellcode
  -c, --comment        comments the shellcode output
  -v VARNAME, --varname VARNAME
                        alternative variable name
  -l, --list            list all available formats and arguments
  -e EXAMINE, --examine EXAMINE
                        examine a separate file containing original shellcode.
                        mainly used to see if shellcode was recreated
                        successfully
  -d, --disassemble    disassemble the binary file
  -a ARCH, --arch ARCH  select architecture for disassembly
  -m MODE, --mode MODE  select mode for disassembly
  -rs, --run-shellcode  run the shellcode (use at your own risk)

 *参考来源:github

友情链接
  • Mozilla发布Firefox 67.0.4,修复沙箱逃逸漏洞
  • 蚂蚁金服正式成为CNCF云原生计算基金会黄金会员
  • Firefox 68将采用Microsoft BITS安装更新
  • OpenSSH增加对存储在RAM中的私钥的保护
  • 谷歌想实现自己的curl,为什么?
  • Raspberry Pi 4发布:更快的CPU、更大的内存
  • Firefox的UA将移除CPU架构信息
  • Ubuntu放弃支持32位应用程序实属乌龙,Steam会否重回Ubuntu怀抱
  • Qt 5.13稳定版发布:引入glTF 2.0、改进Wayland以及支持Lottie动
  • 红帽企业Linux 7现已内置Redis 5最新版
  • Slack进入微软内部禁用服务清单,GitHub也在其列?
  • 安全的全新编程语言V发布首个可用版本
  • Windows Terminal已上架,快尝鲜
  • 阿里巴巴微服务开源生态报告No.1
  • 面世两年,Google地球将支持所有基于Chromium的浏览器
  • 推进企业容器化持续创新,Rancher ECIC千人盛典完美收官
  • CentOS 8.0最新构建状态公布,或于数周后发布
  • Debian移植RISC
  • 微软拆分操作系统的计划初现雏形
  • Oracle发布基于VS Code的开发者工具,轻松使用Oracle数据库
  • Ubuntu 19.10停止支持32位的x86架构
  • 微软为Windows Terminal推出全新logo
  • 联想ThinkPad P系列笔记本预装Ubuntu系统
  • 微软发布适用于Win7/8的Microsoft Edge预览版
  • 启智平台发布联邦学习开源数据协作项目OpenI纵横
  • 经过六个多月的延迟,微软终于推出Hyper
  • ZFS On Linux 0.8.1 发布,Python可移植性工作
  • DragonFly BSD 5.6.0 发布,HAMMER2状态良好
  • Linux Kernel 5.2
  • CentOS 8.0 看起来还需要几周的时间
  • 百度网盘Linux版正式发布
  • PCIe 6.0宣布:带宽翻倍 狂飙至256GB/s
  • PHP 7.4 Alpha 发布,FFI扩展,预加载Opcache以获得更好的性能
  • Canonical将在未来的Ubuntu版本中放弃对32位架构的支持
  • Scala 2.13 发布,改进的编译器性能
  • 微软的GitHub收购了Pull Panda,并且使所有订阅完全免费
  • Windows Subsystem for Linux 2 (WSL 2)现在适用于Windows 10用
  • Debian 10 “Buster”的RISC
  • MariaDB宣布发布MariaDB Enterprise Server 10.4
  • DXVK 1.2.2 发布,带来微小的CPU开销优化
  • DragonFlyBSD 5.6 RC1 发布,VM优化,默认为HAMMER2
  • PrimeNG 8.0.0 发布,支持Angular 8,FocusTrap等
  • GIMP 2.10.12 发布,一些有用的改进
  • 清华大学Anaconda 镜像服务即将恢复
  • Debian GNU/Linux 10 “Buster” 操作系统将于2019年7月6日发布
  • 时时彩论坛
  • 五星体育斯诺克
  • 北单比分直播
  • 河北11选5走势图
  • 福建体彩36选7开奖结果
  • 九龙图库下载