Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
FirmAE — 동적 분석을 위한 IoT 펌웨어의 대규모 에뮬레이션을 향하여 | Kitploit
도구/GitHubGitHub/pr0v3rbs/firmae
Embedded Systems SecurityDynamic Analysis (Sandboxing)IoT SecurityVulnerability AnalysisWeb SecurityFirmware AnalysisEmbedded Systems Security #4위Firmware Analysis #4위IoT Security #4위
894147283개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHubpr0v3rbs/firmae

FirmAE

동적 분석을 위한 IoT 펌웨어의 대규모 에뮬레이션을 향하여

저장소 보기

FirmAE

FirmAE는 에뮬레이션 및 취약점 분석을 수행하는 완전 자동화 프레임워크입니다. FirmAE는 다섯 가지 중재 기법을 통해 에뮬레이션 성공률을 크게 높입니다(Firmadyne의 16.28%에서 79.36%로). 상위 8개 벤더의 무선 라우터 및 IP 카메라 펌웨어 이미지 1,124개를 대상으로 FirmAE를 테스트했습니다.

또한 대상 펌웨어의 파일시스템과 커널 로그를 기반으로 웹 서비스 정보를 추론하는 0-day 발견용 동적 분석 도구도 개발했습니다. 성공적으로 에뮬레이션된 펌웨어 이미지에 이 도구를 실행하여 23개 기기에 영향을 주는 12개의 새로운 0-day를 발견했습니다.

설치

FirmAE는 Ubuntu 20.04에서 테스트했습니다.

  1. FirmAE 클론
$ git clone --recursive https://github.com/pr0v3rbs/FirmAE
  1. download.sh 스크립트 실행
$ ./download.sh
  1. install.sh 스크립트 실행
$ ./install.sh

사용법

  1. init.sh 스크립트 실행
$ ./init.sh
  1. 펌웨어 준비
$ wget https://github.com/pr0v3rbs/FirmAE/releases/download/v1.0/DIR-868L_fw_revB_2-05b02_eu_multi_20161117.zip
  1. 에뮬레이션 확인
$ sudo ./run.sh -c <brand> <firmware>
  1. 대상 펌웨어 분석
  • 분석 모드는 FirmAE 분석기를 사용합니다.
$ sudo ./run.sh -a <brand> <firmware>
  • 실행 모드는 웹 서비스를 테스트하거나 사용자 정의 분석기를 실행하는 데 도움이 됩니다.
$ sudo ./run.sh -r <brand> <firmware>

디버그

run.sh -c가 완료된 후.

1. 사용자 수준 기본 디버깅 유틸리티.

에뮬레이션된 펌웨어가 네트워크에 연결 가능한지 여부를 확인할 때 유용합니다.

  • socat 연결, nc 리버스 셸(31337) 및 telnet 연결(31338)을 지원합니다.
  • 설정은 자동으로 수행됩니다.
$ sudo ./run.sh -d <brand> <firmware>

2. 커널 수준 부팅 디버깅.

$ sudo ./run.sh -b <brand> <firmware>

중재 켜기/끄기

firmae.config에서 다섯 가지 중재 환경 변수를 확인하세요.

$ head firmae.config
#!/bin/sh

FIRMAE_BOOT=true
FIRMAE_NETWORK=true
FIRMAE_NVRAM=true
FIRMAE_KERNEL=true
FIRMAE_ETC=true

if (${FIRMAE_ETC}); then
  TIMEOUT=240

Docker

먼저, docker 이미지를 준비하세요.

$ ./docker-init.sh

병렬 모드

그런 다음 아래 명령 중 하나를 실행하세요. -ec는 에뮬레이션만 확인하고, -ea는 에뮬레이션 확인 및 취약점을 분석합니다.

$ ./docker-helper.py -ec <brand> <firmware>
$ ./docker-helper.py -ea <brand> <firmware>

여기서 <firmware>는 펌웨어 이미지 경로를 나열한 텍스트 파일일 수 있습니다. ./examples/test.list에서 샘플 파일을 확인하세요.

디버그 모드

펌웨어 이미지가 성공적으로 에뮬레이션된 후.

$ ./docker-helper.py -ed <firmware>

평가

에뮬레이션 결과

구글 스프레드시트 - 보기

데이터셋

구글 드라이브 - 다운로드

CVE

ASUS

  • CVE-2019-20082

Belkin

  • Belkin01

D-Link

  • CVE-2018-20114
  • CVE-2018-19986
  • CVE-2018-19987
  • CVE-2018-19988
  • CVE-2018-19989
  • CVE-2018-19990
  • CVE-2019-6258
  • CVE-2019-20084

TRENDNet

  • CVE-2019-11399
  • CVE-2019-11400

저자

이 연구 프로젝트는 KAIST의 SysSec Lab에서 수행되었습니다.

  • Mingeun Kim
  • Dongkwan Kim
  • Eunsoo Kim
  • Suryeon Kim
  • Yeongjin Jang
  • Yongdae Kim

인용

FirmAE를 사용하실 때 저희 논문을 인용해 주시면 감사하겠습니다.

@inproceedings{kim:2020:firmae,
  author = {Mingeun Kim and Dongkwan Kim and Eunsoo Kim and Suryeon Kim and Yeongjin Jang and Yongdae Kim},
  title = {{FirmAE}: Towards Large-Scale Emulation of IoT Firmware for Dynamic Analysis},
  booktitle = {Annual Computer Security Applications Conference (ACSAC)},
  year = 2020,
  month = dec,
  address = {Online}
}
도구 다운로드