본문 바로가기

YISF 2015 Write-Up 예선 몇 일 전에 끝났던 순천향대학교 정보보호 페스티벌 YISF2015 풀이 올립니다. 대회 도중에는 아쉽게 리버싱200 문제를 풀지 못했지만 끝나고 바로 풀었으므로 따로 풀이 올리겠습니다. 더보기
PEB구조체를 활용한 안티디버깅 *이 포스팅은 리버싱 핵심원리에서 공부한 내용을 정리한 내용입니다. 틀린 부분이 있을시 지적해 주세요.* 이전 글에 이어 PEB구조체를 활용한 안티디버깅 방법입니다.PEB의 값을 참조해서 할 수 있는 안티디버깅 방식으로는 약 4가지 정도가 있습니다.1. BeingDebugged2. Ldr3. Process Heap4. NtGlobalFlag이렇게 4가지로 분류할 수 있습니다. 하나씩 알아보겠습니다. 1. BeingDebugged PEB.BeingDebugged(+0x2)의 값을 참조하여 안티디버깅을 할 수 있습니다. WinDbg로 봐 보면여기에 존재합니다. 이 BeingDebugged는 디버깅 중일 때는 1(True)로 설정이 되며 디버깅 중이지 않을 때는 0(False)로 설정이 됩니다. 이를 이용해서.. 더보기
TEB, PEB 구조체의 위치 구하기 *여기 있는 내용들은 리버싱 핵심원리와 고길님의 블로그(http://gogil.kr)에서 보고 공부했던 내용들을 정리하는 방식으로 했습니다.* PEB(Process Environment Block)구조체는 프로세스의 정보를 담고 있는 구조체 입니다. 안티디버깅 기법을 적용할 때 많이 참조되기 때문에 꼭 알아야 하는 구조체 입니다. PEB구조체의 위치를 구하는 방법을 알기 전에 PEB에 대해서 조금만 알아보고 갑시다.PEB구조체의 내용은 이렇게 됩니다. 출처는 MSDN입니다. 향후 윈도우 버전에서는 변경될 수도 있다네요.. 좀 더 자세한 정보 확인을 위해서 WinDbg로 가 줍시다.>>>!peb이렇게 PEB의 주소와 정보를 볼 수 있구요.좀 더 자세한 정보를 보기위해>>>dt_peb구체적인 정보를 볼 수 .. 더보기