Binary Analysis Tool安装使用教程
Binary Analysis Tool(BAT)是一个用于检测二进制文件使用到的开源组件,协助及早发现程序发布后可能会面临的开源协议解执的开源免费检测工具。
一、安装BAT和bat-extratools
1.1 安装BAT
安装环境:Kali-2.0+Python-2.7
git clone https://github.com/armijnhemel/binaryanalysis.git
cd binaryanalysis/src
python setup.py install

1.2 安装bat-extratools
bat-extratools是BAT一些高级检测项用到的依赖,如果不安装在某些检测中会报“OSError: [Errno 2] No such file or directory”之类的错误

git clone https://github.com/armijnhemel/bat-extratools.git
cd bat-extratools/
#apt-get install devscripts #安装debuild
apt-get install zlib1g-dev liblzo2-dev liblzma-dev #安装编译依赖
debuild -uc -us #构建bat-extratools的deb安装包
cd ..
ls -l
dpkg -i bat-extratools_27.0_amd64.deb #安装bat-extratools

二、使用BAT扫描二进制文件
bat-scan----安装BAT后带来的系统命令
-c----扫描使用的配置文件;/etc/bat/bat-scan.config是bat自带的配置文件
-b----要扫描的二进制文件;我这里以ping命令为例,换成自己想扫的文件即可
-o----扫描结果输出到的文件;我这里指定输出到当前目录的ping_scan_results文件
bat-scan -c /etc/bat/bat-scan.config -b /bin/ping -o ping_scan_results

三、安装使用batgui2
batgui2使用python2.x编写,使用PyQt5做图形界面;但是PyQt5并没有python2.x版本,非官方针对python2.x版本编译的python-qt5又只支持windows
要运行起来有两个思路,一个是Lniux安装python3.5以上版本,然后使用python3自带的2to3.py将batgui2转换成python3.x程序。但实际操作中发现应该是batgui2中大量混用了tab键和空格键,导致转成的python3程序报错,而且里实在太大基本没法调,我放弃了这条路。
第二个思路是,把生成的结果文件复制到windows机器,在windows机器安装运行batgui2,然后在windows打开查看。我这里使用这个思路
python-qt5需要下载的件较大,为了避免pip网络问题,我这里使用官方提供的git离线安装方式安装。当然你也可以考滤将pip源配置成清华源或中科大源
再次注意我们这里是在windows安装,所以以下命令是在cmd执行
git clone https://github.com/pyqt/python-qt5.git
cd python-qt5
python -c "import util;util.createqtconf()"
python setup.py install
下载运行batgui2
git clone https://github.com/monkeyiq/batgui2
cd batgui2
python batgui.py
运行起来后我们通过File--Open载入上一步得到的ping_scan_results文件,界面如下:

可以看到并没有扫出什么东西,复杂点的程序还有一些其他如.ko之类的,但基本不能算实现检测使用了哪些开源组件的功能
也有可能是需要调整扫描配置文件,有待研究。
参考:
https://github.com/armijnhemel/binaryanalysis/blob/master/doc/bat-manual.pdf
Binary Analysis Tool安装使用教程的更多相关文章
- Cadence仿真利器,Cadence SI / PI Analysis – Sigrity安装及破解指南
Sigrity提供了丰富的千兆比特信号与电源网络分析技术,包括面向系统.印刷电路板(PCB)和IC封装设计的独特的考虑电源影响的信号完整性分析功能. Sigrity分析技术与Cadence Alleg ...
- Web Capacity Analysis Tool 压力测试工具使用笔记
一.背景介绍 Web Capacity Analysis Tool是微软轻量级Web压力测试工具, 早先是IIS 6.0Resource Tool kit 工具包中的一个组件,现在独立出来有一个社区版 ...
- Microsoft SQL Server 2012 数据库安装图解教程
本文部分引用以下文章: SQL Server 2012 安装图解教程(附sql2012下载地址)_MsSql_脚本之家 http://www.jb51.net/article/36049.htm SQ ...
- 在 Windows 上安装 Hadoop 教程(转)
在 Windows 上安装 Hadoop 教程 一见 2010.1.6 www.hadoopor.com/hadoopor@foxmail.com 1. 安装 JDK 不建议只安装 JRE,而是建议直 ...
- Jenkins ubantu15 安装使用教程
Jenkins ubantu15 安装使用教程 环境:unbatu15 + java version "1.8.0_181" + jenkins (2.137) 命令拉取: ...
- 转发:[服务器]SSL安装证书教程
[服务器]SSL安装证书教程 来自阿里云教程 Tomcat服务器安装SSL证书 安装PFX格式证书 https://help.aliyun.com/document_detail/98576.ht ...
- IntelliJ IDEA - 热部署插件JRebel 安装使用教程
IntelliJ IDEA - JRebel 安装使用教程 JRebel 能做什么? JRebel 是一款热部署插件.当你的 Java-web 项目在 tomcat 中 run/debug 的时候 , ...
- Zabbix3.x安装图解教程
准备知识: Zabbix3.x比较之前的2.0界面有了很大的变化,但是安装部署过程与2.x基本完全一样. 1.Zabbix2.x安装图解教程 http://www.osyunwei.com/archi ...
- VMware vCenter Server安装图解教程
安装说明: 1.安装VMware vCenter Server的主机操作系统为:Windows Server 2008 R2 2.在Windows Server 2008 R2中需要预先安装好SQL ...
随机推荐
- 【BZOJ】1831: [AHOI2008]逆序对
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1831 考虑$-1$的位置上填写的数字一定是不降的. 令${f[i][j]}$表示$DP$到 ...
- C# 整理DotNetBar中SuperGridControl的一些基础属性
//控制表格只能选中单行 superGridControl1.PrimaryGrid.MultiSelect = false; superGridControl1.PrimaryGrid.Initia ...
- node启动服务报错Node.js Error: Cannot find module express
在node文件夹中(M:\express-test),执行 npm install express 在使用npm安装express时,报npm WARN saveError ENOENT: no su ...
- lattice 作图 举例
library(lattice) Depth <- equal.count(quakes$depth, number=8, overlap=.1)xyplot(lat ~ long | Dept ...
- C#_Demo_摄像头实时_4线程人脸识别注册开发全过程
v效率有点低,大家看看哪里开可以节省时间?源代码:https://github.com/catzhou2002/ArcFaceDemo说实话,为了提高识别效率,我也是竭尽所能,干了不少自认为的优化,如 ...
- Linux下boost库的编译、安装详解
下载boost源码 boost下载地址 解压到一个目录 tar -zxvf boost_1_66_0.tar.gz 编译boost库 进入boost_1_66_0目录中 cd boost_1_66_0 ...
- mint19 源码安装python3.7
基于Ubuntu 18.04 自带了3.6,可惜 3.7秒出. 一个原则是: 自带的3.6不要动 防止用apt install python3-XXX时版本不对. 理由: 自带的2.7和3.6都是让 ...
- 最大频率栈 Maximum Frequency Stack
2018-10-06 22:01:11 问题描述: 问题求解: 为每个频率创建一个栈即可. class FreqStack { Map<Integer, Integer> map; Lis ...
- 昂达 v891 连接上adb 调试
这篇文章可以删除了. 可以看看有关v891root和分区的文章,里面介绍了驱动程序的工具了. USB线连上之后,可以直接访问文件,所以连接本身肯定没有问题的. 可是,总是Windows 那边MTP驱 ...
- 在Spring Boot中使用 @ConfigurationProperties 注解, @EnableConfigurationProperties
但 Spring Boot 提供了另一种方式 ,能够根据类型校验和管理application中的bean. 这里会介绍如何使用@ConfigurationProperties.继续使用mail做例子. ...