whisperx7 / IOT-firmware-vulnerability-detection

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ftaint

编译系统:Docker

编译器版本:Docker version 20.10.24

编译依赖环境:

  • 操作系统:基础镜像为Ubuntu 16.04 (xenial)
  • 软件包:存放评估脚本的目录
    • virtualenvwrapper
    • python2.7-dev
    • build-essential
    • libxml2-dev
    • libxslt1-dev
    • git
    • libffi-dev
    • cmake
    • libreadline-dev
    • libtool
    • debootstrap
    • debian-archive-keyring
    • libglib2.0-dev
    • libpixman-1-dev
    • libqt4-dev
    • graphviz-dev
    • binutils-multiarch
    • nasm
    • libc6:i386, libgcc1:i386, libstdc++6:i386, libtinfo5:i386, zlib1g:i386 (32位库)
    • vim
    • python-pip
    • libssl-dev
    • curl
    • tmux
    • net-tools
    • software-properties-common, dirmngr, apt-transport-https, lsb-release, ca-certificates (用于添加PPA和其他软件源)
    • nodejs (通过deb.nodesource.com安装)
    • openjdk-11-jdk (通过PPA安装)
    • binwalk

编译步骤:

  1. 切换到代码目录:cd Ftaint
  2. 使用Dockerfile构建docker镜像:docker build . -t Ftaint
  3. 运行Ftaint(需要自己添加映射目录):docker run -v <mapping>:<mapping> -it Ftaint

各目录文件的功能说明

  • deps:存放依赖文件的目录
  • eval:存放评估脚本的目录
  • src:存放源代码的目录
  • Dockerfile:用于构建Docker镜像的文件
  • README.md :项目说明文件
  • init.sh:初始化脚本
  • scraper: 固件爬虫目录
固件爬虫使用方法
  1. 进入目录 cd scraper

  2. 执行固件抓取命令:

    scrapy crawl 固件厂商

    例如要爬取dlink的固件映像:

    scrapy crawl dlink

ftaint.py使用方法

  • -d 或 --directory :指定固件路径,例如:-d /root/path/_ac18.extracted
  • -o 或 --output :指定输出结果的文件夹,例如:-o /root/output
  • --ghidra_script :指定运行的Ghidra脚本,例如:--ghidra_script ref2sink_cmdi
  • --taint_check :启用污点分析
  • -b 或 --bin :添加指定边界程序,例如:-b /var/ac18/bin/httpd
  • -l 或 --len :添加指定前几个为边界程序,例如:-l 3

About


Languages

Language:Python 99.5%Language:JavaScript 0.2%Language:Dockerfile 0.2%Language:Shell 0.0%