일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- intelmac
- 허리디스크
- esbuild
- open redirect
- ue4dumper
- 척추관협착증
- 모의해킹
- Sequoia
- 많다..
- CryptoJS
- XSS
- self-signed
- 거래사기
- 로맨스스캠
- react
- CJ대한통운 #쿠팡 #통관번호오류 #통관고유번호오류 #안주원팀장 #모건인베스트
- 중고나라
- Malware Sample
- 채팅환전사기
- NUGU
- ssrf
- 네이버카페
- 변태는
- MongoDB #NoSQL #CreateUser #DropUser #mongod #mognod.conf
- 안전결제
- Frida
- 보이스피싱 #대검찰청 #명의도용 #비밀번호 #계좌번호 #공공기관 #가짜검찰청
- speed-measure-webpack-plugin
- 취약점
- shell_gpt
- Today
- Total
annyoung
UPX 3.0으로 패킹된 악성코드 언패킹 본문
FileName |
esd.exe |
MD5 |
EE56D8856646A61D7A2B329FD571955C |
SHA-1 |
A29591FA756521B8BDDAE4A0D0B6495B6E25F772 |
Packer |
UPX 3.0 |
리소스 해커로 열어보면 REGISTRY라는 리소스가 추가되어 있다. 딱봐도 암호화 해두었으니까 Resource에 관련된 API에 BP박고 시작한다.
일반적인 UPX패턴과 살~짝 다르다 0047D027부분에서 CALL EAX를 하는데 저기 부분으로 들어가면 UPX 2.0의 일반적인 패턴을 보여준다.
004497B0 . 60 PUSHAD ; NOW EIP 004497B1 . BE 00A04300 MOV ESI,esd.0043A000 004497B6 . 8DBE 0070FCFF LEA EDI,DWORD PTR DS:[ESI+FFFC7000] 004497BC . 57 PUSH EDI 004497BD . 83CD FF OR EBP,FFFFFFFF 004497C0 . EB 10 JMP SHORT esd.004497D2 ...중략... 00449964 . FFD5 CALL EBP 00449966 . 58 POP EAX 00449967 . 61 POPAD 00449968 . 8D4424 80 LEA EAX,DWORD PTR SS:[ESP-80] 0044996C > 6A 00 PUSH 0 0044996E . 39C4 CMP ESP,EAX 00449970 .^ 75 FA JNZ SHORT esd.0044996C 00449972 . 83EC 80 SUB ESP,-80 00449975 .- E9 2297FBFF JMP esd.0040309C 0044997A 00 DB 00 0044997B 00 DB 00 0044997C 00 DB 00 0044997D 00 DB 00 |
CALL EAX안으로 들어오면 위와 같은 어셈블리들이 나온다. 뭐 여기서 부터는 UPX 2.0패턴 이므로.. MUP해준다.
73D14431 |. 8B35 D063DB73 MOV ESI,DWORD PTR DS:[<&USER32.LoadStrin>; USER32.LoadStringA 73D14437 |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX 73D1443A |. 75 2D JNZ SHORT MFC42.73D14469 73D1443C |. E8 953E0900 CALL MFC42.#1168 73D14441 |. 8B78 0C MOV EDI,DWORD PTR DS:[EAX+C] 73D14444 |. 6A 06 PUSH 6 ; /ResourceType = RT_STRING 73D14446 |. 53 PUSH EBX ; |ResourceName 73D14447 |. 8B1D BC62DB73 MOV EBX,DWORD PTR DS:[<&KERNEL32.FindRes>; |kernel32.FindResourceA 73D1444D |. 57 PUSH EDI ; |hModule 73D1444E |. FFD3 CALL EBX ; \FindResourceA 73D14450 |. 85C0 TEST EAX,EAX 73D14452 |. 74 1B JE SHORT MFC42.73D1446F 73D14454 |. FF75 10 PUSH DWORD PTR SS:[EBP+10] 73D14457 |. FF75 0C PUSH DWORD PTR SS:[EBP+C] 73D1445A |. FF75 08 PUSH DWORD PTR SS:[EBP+8] 73D1445D |. 57 PUSH EDI 73D1445E |. FFD6 CALL ESI 73D14460 |. 85C0 TEST EAX,EAX 73D14462 |. 74 0B JE SHORT MFC42.73D1446F 73D14464 |. E9 12010000 JMP MFC42.73D1457B 73D14469 |> 8B1D BC62DB73 MOV EBX,DWORD PTR DS:[<&KERNEL32.FindRes>; kernel32.FindResourceA |
string을 로드하고 resource를 찾는다.
호환성 안맞아서 분석 끝
'분석생활' 카테고리의 다른 글
페북에서 올라온 통화녹음 번호정보없음 이슈에 대해 (0) | 2016.02.12 |
---|---|
영화 히말라야를 이용한 토렌트 악성코드 유포 주의 (2) | 2016.01.24 |
ro521.com/test.htm 제로보드 침해사고 (0) | 2015.11.25 |
가톨릭대학교 입학처 악성코드 경유지로 이용? (0) | 2015.11.25 |
[마스킹 처리된 게시물] ****에서 파밍 악성코드 유포지로 활용중 (0) | 2015.11.25 |