fat安装与原理说明

本文介绍了FAT(Firmware Analysis Toolkit)的下载与安装过程,FAT是一个用于分析IoT和嵌入式设备固件的工具。内容包括Firmadyne的组件、安装步骤,如克隆源码、安装binwalk和数据库设置。Firmadyne是一个自动化且可扩展的系统,用于对基于Linux的嵌入式固件进行仿真和动态分析。同时,详细阐述了binwalk的安装、依赖和使用方法,binwalk是一个用于分析、逆向工程和提取固件映像的工具。
摘要由CSDN通过智能技术生成

安装环境 ubuntu18.04 desktop

FAT下载

Firmware Analysis Toolkit基于Firmadyne 进行了一些更改。

Firmadyne 使用 PostgreSQL 数据库来存储有关模拟图像的信息。

FAT 是一个工具包,可帮助安全研究人员分析和识别 IoT 和嵌入式设备固件中的漏洞。

Firmadyne是一款自动化分析嵌入式Linux系统安全的开源软件,由卡内基梅隆大学的Daming D. Chen开发完成的。它支持批量检测,整个系统包括固件的爬取、root文件系统的提取、QEMU模拟执行以及漏洞的挖掘。

安装使用步骤

git clone https://github.com/attify/firmware-analysis-toolkit
cd firmware-analysis-toolkit
./setup.sh

#setup.sh安装了很多东西所以安装很耗时,有时网速不行,耐心等待,我最后安装成功了

但是要正常使用一些功能还缺少数据库模块

1. sudo apt-get install postgresql
2. sudo -u postgres createuser -P firmadyne,用`firmadyne`的密码
3. sudo -u postgres createdb -O firmadyne firmware
4. sudo -u postgres psql -d firmware < ./firmadyne/database/schema
5.echo "ALTER USER firmadyne PASSWORD 'firmadyne'" | sudo -u postgres psql
  • 设置fat.config,某些业务要有sudo权限
[DEFAULT]
sudo_password=attify123
firmadyne_path=/home/attify/firmadyne
  • 运行fat.py
./fat.py <firmware file>

- 将固件文件名作为脚本的参数提供。
- 该脚本将显示分配给创建的网络接口的 IP 地址。
- 最后,它会说运行固件。点击 Enter 并等待固件启动。平上一步中显示的 IP,或在浏览器中打开。
  • 要删除所有分析的固件映像,请运行
$ ./reset.py

setup.sh说明

安装了fat(Firmware Analysis Toolkit)所需的依赖

可以发现fat源码很小,

但脚本要安装Firmadyne的依赖,qemu,binwalk,binwalk的依赖,firemadyne的组件等

主要还是基于Firmadyne

#!/bin/sh
set -e
sudo apt update
sudo apt install -y python-pip python3-pip python3-pexpect unzip busybox-static fakeroot kpartx snmp uml-utilities util-linux vlan qemu-system-arm qemu-system-mips qemu-system-x86 qemu-utils
#安装Firmadyne的依赖和qemu

#安装binwalk
echo "Installing binwalk"
git clone --depth=1 https://github.com/devttys0/binwalk.git
cd binwalk
sudo ./deps.sh
#自动安装binwalk的依赖的sh文件
sudo python3 ./setup.py install
#安装binwalk

sudo -H pip3 install git+https://github.com/ahupp/python-magic
sudo -H pip install git+https://github.com/sviehb/jefferson
#安装binwalk extractor的依赖库
cd ..



echo "Installing firmadyne"
git clone --recursive https://github.com/firmadyne/firmadyne.git
cd firmadyne
./download.sh
#安装firemadyne的组件

firmadyne_dir=$(realpath .)
# Set FIRMWARE_DIR in firmadyne.config
sed -i "/FIRMWARE_DIR=/c\FIRMWARE_DIR=$firmadyne_dir" firmadyne.config
#在firmadyne.config配置固件
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
dos,是磁盘操作系统的缩写,是个人计算机上的一类操作系统。从1981年直到1995年的15年间,磁盘操作系统在IBM PC兼容机市场中占有举足轻重的地位。而且,若是把部分以DOS为基础的Microsoft Windows版本,如Windows 95、Windows 98和Windows Me等都算进去的话,那么其商业寿命至少可以算到2000年。微软的所有后续版本中,磁盘操作系统仍然被保留着。 从1981年MS-DOS1.0直到1995年MS-DOS7.1的15年间,DOS作为微软公司在个人计算机上使用的一个操作系统载体,推出了多个版本。DOS在IBM PC 兼容机市场中占有举足轻重的地位。可以直接操纵管理硬盘的文件,以DOS的形式运行。 是一个更久远的操作系统CP/M的翻版。DOS家族包括MS-DOS、PC-DOS、DR-DOS、Free-DOS、PTS-DOS、ROM-DOS、JM-OS等,其中以MS-DOS最为著名,最自由开放的则是Free-DOS。虽然这些系统常被简称为"DOS",但没有任何一个系统单纯以"DOS"命名(只有一个毫无关连的1960年代IBM大型主机操作系统以此命名)。此外,有几个和DOS无关、在非x86的微计算机系统上运行的磁盘操作系统在名称中也有"DOS"字眼,而且在专门讨论该机器的场合中也会简称为"DOS"(例如:AmigaDOS、AMSDOS、ANDOS、Apple DOS、Atari DOS、Commodore DOS、CSI-DOS、ProDOS、TRS-DOS等),但这些系统和DOS可执行文件以及MS-DOS API并不兼容。 微软图形界面操作系统 Windows NT 问世以来,DOS就是一个后台程序的形式出现的。可以通过点击运行-CMD进入运行。[1]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值