SECURITY/REVERSING

μ•ˆν‹° 리버싱 :: 02 - μ•ˆν‹° 디버깅

\b\t 2020. 8. 4. 14:12

2020/08/04 - [SECURITY/REVERSING] - μ•ˆν‹° 리버싱 :: 01 - μ•ˆν‹° λ¦¬λ²„μ‹±μ΄λž€?

 

μ•ˆν‹° λ””λ²„κΉ…μ΄λž€, ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜λ©΄μ„œ λΆ„μ„ν•˜λŠ” 디버깅을 λ°©μ§€ν•˜λŠ” 기법이닀.

 

μ•ˆν‹° λ””λ²„κΉ…μ—λŠ” static κ³Ό dynamic 이 μžˆλ‹€.

 

 

 

static μ•ˆν‹° 디버깅

 

: (주둜 ν”„λ‘œκ·Έλž¨ μ‹œμž‘ μ‹œ) 디버거λ₯Ό νƒμ§€ν•˜μ—¬ λ§Œμ•½ 디버거라면 ν”„λ‘œκ·Έλž¨μ΄ μ •μƒμ μœΌλ‘œ μ‹€ν–‰λ˜μ§€ λͺ»ν•˜λ„둝 ν•˜λŠ” 기법이닀.

 

말 κ·ΈλŒ€λ‘œ 움직이지 μ•ŠκΈ° λ•Œλ¬Έμ— ν•œ 번만 해체해주면 ν•΄κ²°λœλ‹€.

 

 

 

dynamic μ•ˆν‹° 디버깅

 

:ν”„λ‘œκ·Έλž¨ λ™μž‘ 쀑에 디버깅을 계속 νƒμ§€ν•˜μ—¬ 디버거라면 κ·Έλ•Œλ§ˆλ‹€ ν•΄κ²°ν•˜λŠ” 기법이닀.

 

디버거 νŠΈλ ˆμ΄μ‹±μ„ λ°©ν•΄ν•˜μ—¬ 원본 ν”„λ‘œκ·Έλž¨μ˜ λ™μž‘ 원리λ₯Ό μ΄ν•΄ν•˜λŠ” 데에 어렀움을 μ€€λ‹€.

 

* 디버거 νŠΈλ ˆμ΄μ‹±: ν•œ 쀄 ν•œ 쀄 디버깅 ν•œλ‹€.

 μ¦‰, λ””λ²„κΈ°μ˜ λ‚΄λΆ€ λͺ…령을 ν•˜λ‚˜μ”© μ‹€ν–‰ν•˜λ©΄μ„œ λ ˆμ§€μŠ€ν„°, μŠ€νƒ 등을 μ‹€μ‹œκ°„μœΌλ‘œ ν™•μΈν•˜λŠ” 것

 

 

static κ³Ό 달리 움직이기 λ•Œλ¬Έμ— 디버깅을 μ§„ν–‰ν•˜λ©΄μ„œ μ•ˆν‹° 디버깅 ν•¨μˆ˜λ₯Ό μ—¬λŸ¬ 번 λ§Œλ‚  수 μžˆλ‹€.

λ•Œλ¬Έμ— static 보닀 더 κΉŒλ‹€λ‘œμš΄ κ²½μš°κ°€ λ§Žλ‹€.

 

 

(이미지 좜처: https://oopsys.tistory.com/180)

 

 

.