pr0v3rbs / FirmAE

Towards Large-Scale Emulation of IoT Firmware for Dynamic Analysis
MIT License
602 stars 117 forks source link

Firmware analysis works with run.sh but not with docker-helper.py #5

Open 0x80O0oOverfl0w opened 3 years ago

0x80O0oOverfl0w commented 3 years ago

I've had mixed results when using run.sh, but even when run.sh is successful in analyzing firmware, the docker container implementation seems to fail. This was a test I did using firmware from a D-Link DSC-923L IP Camera. It's not shown in this screen shot, but the run.sh execution continued to running nmap and then on to the fuzzing stage. It is currently still running the fuzzer. Running standard Ubuntu 18.04LTS in an ESXI VM with 28 CPUs and 112 GB of RAM.

docker_error

0x80O0oOverfl0w commented 3 years ago

Results using run.sh after nmap scan complete. image

pr0v3rbs commented 3 years ago

For my ubuntu 18.04 environment, the emulation processing in docker does not finish early as like that. (DCS-932)

I think that the analysis process was failed in your docker environment. (Check the dcs932l_v1.14.04.bin.log in the scratch directory and analyses/analyses_log directory)

However, I pushed some codes that print more detailed debug messages. 63cc8f5

Please check again, and can you share the debug information?

HisenseZH commented 3 months ago

@pr0v3rbs I meet the same issues.I can't create a network port tap in the host computer with docker-helper.py .

Example,/docker-helper.py -ed brand-name.

But it is good with run.sh.Do you meet the same issus or have you solved the problem?

leiwuhen92 commented 1 month ago

环境:Ubuntu 20.04

经分析,analyses/analyses_all.sh中执行ci、bof这两步比较慢: Image

可以切片缩短info减少循环次数,验证通过:analyses/fuzzer.py Image

或者增加超时时间:docker-helper.py,但不确定增加多少 Image

固件地址:https://files.dlink.com.au/products/DIR-850L/REV_A/Firmware/Firmware_v1.20b03/DIR850LA1_FW115WWb04.bin ./docker-helper.py -ea dlink firmwares/DIR850LA1_FW115WWb04.bin Image