티스토리 뷰
1. Timeattack.exe 분석
2. Timeattack2.exe 분석
1. Timeattack.exe 분석
Timeattack.exe의 main 함수에서 한 줄씩 F8로 실행하다 보면 [그림 2]의 우측하단과 같이 Running이라고 계속 뜨는 부분이 있다. 편의상 첫 번째 Running 지연 부분을 Running_A, 두 번째 Running 지연 부분을 Running_B라고 하겠다.
Running_B에서 한 줄씩 F8로 실행하다 보면 또 Running time이 지연되는 부분이 두 군데 나타난다. 편의상 첫 번째 부분을 Running_B1, 두 번째 부분을 Running_B2라고 하겠다.
Running_B2에서 한 줄씩 F8로 실행하다 보면 또 Running time이 지연되는 부분이 있다. 편의상 첫 번째 부분을 Running_B2a, 두 번째 부분을 Running_B2b라고 하겠다.
[ 명령어의 의미 - Running_B2a ]
003D1230 /$ 55 PUSH EBP
003D1231 |. 8BEC MOV EBP,ESP
003D1233 |. 83EC 08 SUB ESP,8
003D1236 |. 8D45 0C LEA EAX,DWORD PTR SS:[EBP+C]
003D1239 |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
003D123C |. 8B4D FC MOV ECX,DWORD PTR SS:[EBP-4]
003D123F |. 51 PUSH ECX
003D1240 |. 6A 00 PUSH 0
003D1242 |. 8B55 08 MOV EDX,DWORD PTR SS:[EBP+8]
003D1245 |. 52 PUSH EDX
003D1246 |. 6A 01 PUSH 1
003D1248 |. FF15 BC203D00 CALL DWORD PTR DS:[<&api-ms-win-crt-s>; ucrtbase.__acrt_iob_func
003D124E |. 83C4 04 ADD ESP,4
003D1251 |. 50 PUSH EAX ; |Arg1
003D1252 |. E8 D9FDFFFF CALL Timeatta.003D1030 ; \Timeatta.013B1030
003D1257 |. 83C4 10 ADD ESP,10
003D125A |. 8945 F8 MOV DWORD PTR SS:[EBP-8],EAX
003D125D |. C745 FC 000000>MOV DWORD PTR SS:[EBP-4],0
003D1264 |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
003D1267 |. 8BE5 MOV ESP,EBP
003D1269 |. 5D POP EBP
003D126A \. C3 RETN
[ 명령어의 의미 - Running_B2 ]
003D1060 /$ 55 PUSH EBP ; 프롤로그
003D1061 |. 8BEC MOV EBP,ESP ; 프롤로그
003D1063 |. 51 PUSH ECX
003D1064 |. C745 FC 30F213>MOV DWORD PTR SS:[EBP-4],D013F230
003D106B |> 8B45 FC /MOV EAX,DWORD PTR SS:[EBP-4]
003D106E |. 83C0 02 |ADD EAX,2
003D1071 |. 8945 FC |MOV DWORD PTR SS:[EBP-4],EAX
003D1074 |. 8B4D FC |MOV ECX,DWORD PTR SS:[EBP-4]
003D1077 |. 83E9 01 |SUB ECX,1
003D107A |. 894D FC |MOV DWORD PTR SS:[EBP-4],ECX
003D107D |. 8B55 FC |MOV EDX,DWORD PTR SS:[EBP-4]
003D1080 |. 52 |PUSH EDX ; /Arg2
003D1081 |. 68 28303D00 |PUSH Timeatta.003D3028 ; |Arg1 = 003D3028
003D1086 |. E8 A5010000 |CALL Timeatta.003D1230 ; \Timeatta.013B1230
003D108B |. 83C4 08 |ADD ESP,8
003D108E |. 817D FC EFBEAD>|CMP DWORD PTR SS:[EBP-4],DEADBEEF
003D1095 |.^75 D4 \JNZ SHORT Timeatta.003D106B
003D1097 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
003D109A |. 50 PUSH EAX ; /Arg2
003D109B |. 68 2C303D00 PUSH Timeatta.003D302C ; |Arg1 = 003D302C ASCII "%x "
003D10A0 |. E8 8B010000 CALL Timeatta.003D1230 ; \Timeatta.013B1230
003D10A5 |. 83C4 08 ADD ESP,8
003D10A8 |. B8 EFBEADDE MOV EAX,DEADBEEF
003D10AD |. 8BE5 MOV ESP,EBP
003D10AF |. 5D POP EBP
003D10B0 \. C3 RETN
[ 명령어의 의미 - Running_B ]
00051140 /$ 55 PUSH EBP ; 프롤로그
00051141 |. 8BEC MOV EBP,ESP ; 프롤로그
00051143 |. 68 30300500 PUSH Timeatta.00053030 ; "Creating key..."를 스택에 저장
00051148 |. FF15 B4200500 CALL DWORD PTR DS:[<&api-ms-win-crt-s>; puts 함수 호출
0005114E |. 83C4 04 ADD ESP,4
00051151 |. E8 0AFFFFFF CALL Timeatta.00051060
00051156 |. A3 10340500 MOV DWORD PTR DS:[53410],EAX
0005115B |. 68 40300500 PUSH Timeatta.00053040 ; "Done Creating key"를 스택에 저장
00051160 |. FF15 B4200500 CALL DWORD PTR DS:[<&api-ms-win-crt-s>; puts 함수 호출
00051166 |. 83C4 04 ADD ESP,4 ; 에필로그
00051169 |. 5D POP EBP ; 에필로그
0005116A \. C3 RETN ; 에필로그
[ 명령어의 의미 - Timeattack.exe ]
013B11C0 /$ 55 PUSH EBP ; 프롤로그
013B11C1 |. 8BEC MOV EBP,ESP ; 프롤로그
013B11C3 |. 51 PUSH ECX
013B11C4 |. 6A 00 PUSH 0 ; 0초 동안 시간 지연
013B11C6 |. 6A 00 PUSH 0 ; 0초 동안 시간 지연
013B11C8 |. 68 00103B01 PUSH Timeatta.013B1000
013B11CD |. 6A 00 PUSH 0 ; 0초 동안 시간 지연
013B11CF |. 68 88130000 PUSH 1388 ; 5000ms(5초) 동안 시간 지연
013B11D4 |. FF15 40203B01 CALL DWORD PTR DS:[<&WINMM.timeSetEvent>] ; WINMM.timeSetEvent
013B11DA |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
013B11DD |. E8 8EFFFFFF CALL Timeatta.013B1170
013B11E2 |. E8 59FFFFFF CALL Timeatta.013B1140
013B11E7 |. E8 14000000 CALL Timeatta.013B1200
013B11EC |. 33C0 XOR EAX,EAX ; return 0;
013B11EE |. 8BE5 MOV ESP,EBP ; 에필로그
013B11F0 |. 5D POP EBP ; 에필로그
013B11F1 \. C3 RETN ; 에필로그
2. Timeattack2.exe 분석
- Total
- Today
- Yesterday
- stdio.h
- 키워드
- Navigator 객체
- Screen 객체
- long
- window 객체
- 리액트 #React #props #state #javascript
- 컴파일
- gcc
- Char
- 자료형
- DOM
- short
- History 객체
- location 객체
- Document Object Model
- Browser Object Model
- c언어
- bom
- int
- 변수
- keyword
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |