FFDEC는 SWF 파일에 대해 쉽게 분석 가능하도록 코드단에서 확인이 가능한 툴 입니다.
자 여기서 SWF에 대해 보면 위키에서는 다음과 같이 정의되어 있습니다.
SWF는 어도비 플래시에서 멀티미디어, 벡터 그래픽, 액션스크립트 등을 처리하는 데 사용하는 파일 형식이다. 현재 웹상의 벡터 그래픽 애니메이션 영역에서 지배적인 위치를 차지하고 있으며 액션스크립트를 사용하는 브라우저 게임에도 흔히 사용된다.
여기서 중요한 부분은 "액션스크립트" 입니다.
SWF 파일 내에서 액션 스크립트를 통해 미디어 이상의 기능을 가질 수 있기 때문에 취약한 SWF를 통해 XSS나 URL Redirection 등 공격에 사용할 수 있습니다.
* swf에서도 js 내 삽입되는 XSS와 똑같이 내부 흐름을 바꾼 후 스크립트 구문을 이용하여 XSS가 가능합니다.
swfupload.swf?movieName=%22]);}catch(e){}if(!self.a)self.a=!alert(45);//
FFDEC 설치
FFDEC 홈페이지에 접속하여 /flash/download 경로로 붙어 각 OS 및 필요 사항에 맞게 파일을 다운로드합니다.
https://www.free-decompiler.com/flash/download/
![]() |
https://www.free-decompiler.com/flash/download/ |
다운로드 후 압축을 풉니다.
# unzip ffdec_4.1.1.zip
리눅스에서는 unzip , 윈도우 환경에서는 압축 해제 프로그램을 통해 풀어내시면 됩니다.
Archive: ffdec_4.1.1.zip
creating: lib/
inflating: ffdec.bat
inflating: ffdec.exe
inflating: ffdec.jar
inflating: lib/JavactiveX.jar
inflating: lib/LZMA.jar
inflating: lib/avi.jar
inflating: lib/avi.montemedia.license.txt
inflating: lib/ffdec_lib.jar
inflating: lib/ffdec_lib.license.txt
inflating: lib/flamingo-6.2.jar
inflating: lib/flamingo.license.txt
여러 파일이 생성되는데요, zip 안에는 윈도우 사용자를 위한 exe 부터,
범용적으로 사용이 가능한 jar(java) 파일이 존재합니다.
저는 리눅스 환경이기 때문에 jar 파일을 통해서 실행합니다.
#java -jar ffdec.jar
그놈3 메뉴에 등록하여 사용하면 편합니다. (툴이 gui 여서 그런지 이런건 클릭이 편하네요)
icon / java -jar ffdec.jar 연동
상단의 open 눌러서 swf 파일 열어주시면 Action Script code / Method,Getter,Setter Trait 에 대해 확인이 가능합니다.
코드 확인이 되니, swf 내 취약점 분석을 시작하면 되겠지요..
감사합니다.
![]() |
HAHWULSecurity engineer, Gopher and H4cker! |
Debian 계열
ReplyDeletehttps://www.free-decompiler.com/flash/download/ 접근 후 deb 버전 다운로드
#> wget https://www.free-decompiler.com/flash/download/ffdec_10.0.0.deb
#> dpk -i ffdec_10.0.0.deb
요런식이 더 편할듯