SWF ShellCode를 이용한 Script 디코딩 (2)

반응형

샘플 14.swf는 CWS로 압축이 되어 있지만, 기존에 사용하던 swfdecomp.exe로는 압축이 풀리지 않는다.


Sothink SWF Decompiler로 열어보면 의심스러운 부분은 존재한다.
그림을 보면 연속적인 aaaa 부분을 지난 다음 90909090으로 시작 되는 코드부분이 있다. 
이 부분이 ShellCode로 의심되는 부분이다.

  
우선 의심스런 부분만 짤라내서 보자.
분석툴 다운로드에서 Action_Script_Viewer를 다운로드 한다.
 
이후 샘플 14.swf를 오픈하여 Yes 나 Yes to All을 선택하고 Error log를 닫는다.
그리고 Special Tags 탭으로 이동 하여 원하는 태그에 마우스우측버튼을 눌러 save as시킵니다.


Save 시킨 swf 파일은 FileInsight를 이용하여 오픈하여 필요한 ShellCode의심부분(9090으로 시작되는 부분부터~ 6161 전까지)의 HEX값을 복사한다.


복사 된 HEX값을 Malziila를 통해서 HEX값을 OllyDbg로 보는 방법도 있지만, FileInsight는 자체적으로 디어셈블리를 제공하기 때문에 FileInsiht로 XOR값을 찾아보고 XOR 자체도 동시에 해보자.
디어셈블리 메뉴는 좌측 하단에서 선택하면 된다.

ShellCode가 시작되는 90위치에 마우스커서를 옮겨놓은 후, 코드를 보면 XOR 값으로 의심되는 0xfa가 있다.


이후 화면 좌측에 Method를 XOR 로 선택 후 Key값을 fa로 넣은 후 Decode를 하면 원하는 url을 얻을 수 있다.


지금까지 SWF 파일을 악용하여 사용한 방법이였다.
현재까지 나온 swf 중 가장 어려웠던 파일이 있었는데, 파일을 찾을 수 없었는데 찾게 되면 추가하였다 ㅎㅎㅎ

 

그러니 이번에도 잘 따라오길 바란다 ㅎㅎㅎ

반응형

댓글

Designed by JB FACTORY