티스토리 뷰
실습 5-1
- DllMain의 주소는 무엇인가?
1000D02E - Imports 윈도우를 이용해 gethostbyname을 탐색해보자. 임포트 위치는 어디인가?
100163CC - gethostbyname에 함수는 몇 개인가?
ctrl + x 눌러 상호참조 확인
sub_10001074
sub_10001656
sub_1000208F
sub_10002CCE
sub_10001365
5개의 함수에 의해 9번 상호참조되고 있다.
0x10001757에 위치한 gethostbyname 호출을 보면 어떤 DNS 요청이 이루어지는지 알 수 있는가?
pics.praticalmalwareanalysis.com 요청- 0x10001656에 있는 서브루틴에서 IDA Pro는 지역변수 몇 개를 인지하고 있는가?
23개 - 0x10001656에 있는 서브루틴에서 IDA Pro는 파라미터 몇 개를 인지하고 있는가?
1개
- Strings 윈도우를 이용해 디스어셈블리 내의 문자열 /cmd.exe /c 를 찾아보자. 어디에 있는가?
10095B34
/cmd.exe /c를 참조하는 코드 영역에서 무슨 일이 발생하는가?
Remote Shell Session 생성 및 통신- 같은 영역 0x100101C8에서 dword_1008E5C4는 경로를 지정하는 전역 변수로 보인다. 악성코드는 어떻게 dword_1008E5C4를 설정하는가?
sub_10001656+22 mov dword_1008E5C4 에서 설정이 이루어짐
eax값을 dword_1008E5C4에 저장하며, sub_10036C3에서 GetVersionExA로 운영체제 버전 정보를 얻어옴
0x1000FF58에서 서브루틴으로 수백 라인은 문자열을 비교하기 위한 일련의 memcmp 비교다. rotbotwork와 문자열 비교가 성공적으로 이뤄지면 무슨 일이 일어나는가?
WorkTime, WorkTimes 값 원격 셸 세션을 이용해 sendPSLIST 익스포트는 무슨 열할을 하는가?
sub_100036C3 호출
운영체제 버전 정보 확인
- 그래프 모드를 이용해 Sub_10004E79 상호 참조 그래프를 그려보자. 이 함수에 진입하기 위해 호출하는 API 함수는 무엇인가? 해당 API 함수에만 기반을 두고 이함수를 어떤 이름으로 변경하겠는가?
상호 참조를 그래프로 확인해 본 결과, 중요하게 볼 만한 함수는 GetSystemDefaultLangID ,Send 가 보인다.이를 이용해 Send_LangID 등 의미있는 이름으로 변경 시켜 줄 수 있다.
DllMain이 직접 호출하는 윈도우 API함수는 몇개인가? 두 번째 깊이에서 몇개 인가?
직접 호출하는 API함수는 4개, 두번째 깊이는 많다.
0x10001358에서 Sleep 호출이 존재한다.(sleep까지 수 밀리초 값을 파라미터로 갖는 함수) 코드 후반부를 보연 이 코드가 수향되려면 프로그램이 얼마동안 sleep해야하는가?
30초
off_10019020에서 [This is CTI]30 을 의미, 0Dh를 더해 30을 가르키게 함.
30 * 3E8(1000)
30000밀리세컨드를 초로 변환하면 30초
- 0x10001701에서 소켓을 호출한다. 세 가지 파라미터는 무엇인가?
- 소켓과 IDA Pro에서 명명한 심볼 상수 기능을 이용해 이 파라미터를 좀 더 유용하게 할 수 있는가? 변경 후 파라미터는 무엇인가?
msdn 참조, https://msdn.microsoft.com/en-us/library/windows/desktop/ms740506(v=vs.85).aspx - 명령어 옵코드 0xED의 사용법을 찾아보자. 이명령어는 VMWare 탐지를 수행하는 VMXh 매직문자열로 사용한다. 이 악성코드는 이를 이용하고 있는가? VMWare를 탐지하는 다른 증거가 있나?
- 0x1001D988로 점프해보자. 무엇을 찾을 수 있는가?
알수없는 의미의 문자열 IDA파이썬 플로그인을 설치했다면 Lab05-01.py를 실행해 보자. 스크립트 실행 후 무슨일이 일어났는가?
의미를 알 수 없던 문자열이 의미있는 문자열로 변하였다.동일한 위치에 커서를 두고 이 데이터를 ASCII문자열로 어떻게 변환할 수 있는가?
A를 누르면 아래와 같이 변한다.- 문자편집기로 스크립트를 열어보자. 어떻게 동작하는가?
0x00에서 0x50 바이트까지 하나씩 불러와서 0x55와 XOR해서 복호화 시킨다.
'Reversing > 실전 악성코드와 멀웨어 분석' 카테고리의 다른 글
챕터.9 Ollydbg (1) | 2016.04.20 |
---|---|
챕터.7 악의적인 윈도우 프로그램 분석 (0) | 2016.04.08 |
챕터6. 실습문제 풀이 (0) | 2016.03.16 |
챕터3. 실습문제 풀이 (0) | 2016.01.21 |
챕터1. 실습문제 풀이 (0) | 2016.01.13 |
- Total
- Today
- Yesterday
- 한빛리더스
- CTB-Locker
- malware
- 키로거
- 리버싱
- 악성코드
- 바이로봇
- banker
- IT·컴퓨터
- 뱅커
- 백신
- 파밍
- 실전 악성코드와 멀웨어 분석 문제풀이
- 한빛아카데미
- 리버싱 공부
- Ransom
- 에이콘
- CryptoWall
- 해커스쿨 ftz
- 뱅킹
- 실전 악성코드와 멀웨어 분석 연습문제
- 랜섬웨어
- 광고
- 서비스
- CryptoLocker
- 크립토락커
- 팝업
- 실전 악성코드와 멀웨어 분석
- 에이콘 출판사
- 해커스쿨
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |