二进制安全,黑客手把手教你搭建系统环境( 三 )


安装gcc-multilib
gcc-multilib gcc-multilib是Debian的64位系统下运行32位程序的一个库 , 装了这个库就可以运行32位的程序了 。
#安装命令
sudo apt-get install gcc-multilib 或者
sudo aptitude install gcc-multilib
socat
socat socat是一个多功能的网络工具 , 名字来由是" Socket CAT" , 可以看作是netcat的加强版,socat是两个独立数据通道之间的双向数据传输的继电器 。这些数据通道包含文件、管道、设备(终端或调制解调器等)、插座(Unix , IP4 , IP6 - raw , UDP , TCP)、SSL、SOCKS4客户端或代理CONNECT 。Socat支持广播和多播、抽象Unix sockets、Linux tun/tap、GNU readline 和 PTY 。它提供了分叉、记录和进程间通信的不同模式 。多个选项可用于调整socat和其渠道 , Socat可以作为TCP中继(一次性或守护进程) , 作为一个守护进程基于socksifier , 作为一个shell Unix套接字接口 , 作为IP6的继电器 , 或面向TCP的程序重定向到一个串行线 。socat的主要特点就是在两个数据流之间建立通道;且支持众多协议和链接方式:ip, tcp, udp, ipv6, pipe,exec,system,open,proxy,openssl,socket等 。(文档英文的看起来太困难 , 这是别人写的 , 也不知道对不对 , 以后)
Ubuntu16.04下默认安装有 , 如果没有 , 需要安装的话 , 看了别人的文章 , 好像要下载源码编译安装 。
安装rp++
rp++ rp++是一种完全用c++编写的工具 , 目的是在PE/Elf/Mach-O(不支持FAT二进制文件)x86/x64二进制文件中找到ROP序列 。它是开源的 , 已经在几个操作系统上测试过:Debian / Windows 7 / FreeBSD / Mac OSX Lion(10.7.3) 。此外 , 它是x64兼容的 。我差点忘了 , 它同时处理英特尔和英特尔 。
 
#运行
【二进制安全,黑客手把手教你搭建系统环境】chmod +x rp-lin-x64
./rp-lin-x64
安装ROPgadget
ROPgadget介绍 这个工具可以让你在二进制文件上搜索的小工具 , 以方便你的ROP利用 。ROPgadget支持x86、x64、ARM、ARM64、PowerPC、SPARC和MIPS体系结构的ELF/PE/Mach-O格式 。从版本5开始,ROPgadget有一个新的核心 , 它是用Python的Capstone disassembly框架编写的 , 用于gadget搜索引擎——旧版本可以在存档目录中找到 , 但它不会被维护 。
安装ROPgadget之前需要先安装Capstone,这个反汇编框架之前已经安装过了 。
#方法一
#安装过capstone后 , ROPgadget可以作为一个单独的工具使用
ROPgadget.py
#方法二
#安装到Python的站点包库中 , 并且加入环境变量中
python setup.py install
ROPgadget
#方法三
#用pip安装
pip install ropgadget
ROPgadget
libc
libc-database介绍 libc是Linux下的ANSI C的函数库 。ANSI C是基本的C语言函数库 , 包含了C语言最基本的库函数 。libc-database是github上的一个仓库 , 可以进行服务器上所用函数库版本的识别 。
这里还有一个更全的 , 是一个网站 。libcdb.com
写到这总算告一段落了 , 如果后期还有更好的工具 , 我会补充 , 就先到这吧 。




推荐阅读