Attify FAT(Firmware Analysis Toolkit)은 임베디드 기기 또는 IoT 기기의 펌웨어를 추출하고 분석할 수 있도록 돕는 자동화 툴이다. FAT을 통해 손쉽게 펌웨어의 파일시스템을 마운트하고, 취약점을 확인하며, 각종 보안 테스트를 수행할 수 있다.
FAT의 주요 기능은 다음과 같다.
- 자동화된 펌웨어 분석: 펌웨어 내부 파일 추출, 마운트, 라이브 디버깅 등 복잡한 과정을 자동화한다.
- 폭넓은 디바이스 지원: NETGEAR, TP-Link, D-Link 등 다양한 제조사의 펌웨어 분석이 가능하다.
- 취약점 탐색 편의성: 일반적인 취약점(하드코딩된 암호, 과도한 권한 설정, 미사용 디렉토리 등)을 쉽게 찾아낼 수 있다.
분석 펌웨어는 인터넷에 검색하면 컴퓨터 키는 시간 포함해서 약 5분만에 구할 수 있는 WANP320.zip 파일을 이용할 것이다.
이 OS에는 기본적으로 툴이 다 깔려있다. 그냥 키면 된다.
만약 에러가 발생하면 에러 메세지를 검색해서 필요한 라이브러리나 설정 등을 해주면 된다.
정상적으로 켰으면 192.168.0.100 IP로 들어갈 수 있다.
그리고 추출한 펌웨어를 통해 정적분석을 해서 취약한 부분을 찾으면 된다.
binwalk의 -e 옵션으로 펌웨어 내부의 파일을 추출할 수 있다.
정적 분석 도구인 firmwalker를 통해 추출한 펌웨어 파일 내부의 소스코드를 검색할 수 있다. 너무 많이 나오니까 result.txt로 저장한 후 분석을 진행하면 된다.
일단 admin 이라는 키워드로 login.php가 보인다.
그리고 php의 시스템 명령어 호출인 exec를 검색했을 때 몇몇 파일이 보인다. 그중 boardDataWW.php를 보면 취약한 코드가 존재한다.
분석 대상의 경로를 모두 찾았기 때문에 분석을 시작하면 된다.
보면 macAddress 파라미터의 인자를 그냥 . 으로 concat 하는 것을 볼 수 있다. 여기서 커맨드 인젝션이 발생할 수 있다.
login.php에는 아이디가 admin이고, 비밀번호가 conf_get을 통해 system:basicSettings:adminPasswd 라는 값을 읽어오는 것 같다.
grep을 통해 해당 키워드로 검색을 해보면 /etc/default-config라는 파일에서 이런 기본 설정을 저장하고 있는 것을 볼 수 있고, adminName은 admin, adminPasswd는 password임을 알 수 있다.
하드코딩된 자격증명을 통해 어드민 페이지에 로그인 할 수 있다.
그리고 아까 발견한 boardDataWW.php로 접근 해보면 MAC 주소를 입력하는 창이 뜬다. 여기에 세미콜론(;)으로 커맨드 인젝션을 시도할 수 있다.
Burp 같은 웹 디버거 도구를 사용해도 되지만 어차피 MAC 주소에 대한 값 검증을 프런트엔드단에서 JS로만 하기 때문에 브라우저 단에서 조작할 수 있다.
HTML을 보면 onclick에서 checkMAC라는 함수를 통해 값 검증을 하는 것을 볼 수 있다.
해당 함수를 그냥 빈 함수로 덮어 쓰면 된다.
그럼 기존의 값 검증 함수가 무력화 되고, 아무 값이나 전송할 수 있게 된다.
/etc/passwd 파일을 ./passwd.html으로 복사하는 명령어를 주입하면 해당 요청이 실행되어 펌웨어 내부의 시스템에 있는 /etc/passwd 파일을 볼 수 있게 된다.
기존과 다르게 Update Success! 라는 메시지가 뜨게 되고 실제 192.168.0.100/passwd.html 주소로 접근해보면 /etc/passwd 파일을 볼 수 있다.
'digital forensics' 카테고리의 다른 글
[우암던전] L0phtCrack을 통한 윈도우 계정 크랙 (0) | 2024.12.21 |
---|---|
[우암던전] 주통기 W-01, W-02, W-04, W-06을 점검하는 스크립트 (0) | 2024.12.10 |
[우암 던전] 윈도우 서버 hydra로 해킹 후 RDP 연결하기 (0) | 2024.12.10 |
[우암던전] Buffer Over Flow (0) | 2024.11.06 |
[우암던전] Privilege Escalation: Exploitation for Privilege Escalation (2) | 2024.10.17 |