본문 바로가기

Debug Blocker

Debug Blocker Debug Blocker Debug Blocker 기법은 자기 자신을 디버깅 모드로 실행하는 기법입니다. 부모 프로세스와 자식 프로세스간의 관계가 디버거 - 디버기 관계로 이루어져 있기 때문에 디버기인 자식프로세스에 중요 코드가 존재한다면 자식 프로세스를 디버깅해야 합니다.하지만 디버거 - 디버기 관계가 안티 디버깅 역할을 하기 때문에 디버깅하기가 어렵습니다. 중점사항 1. 부모 - 자식 관계 디버거 - 디버기 관계는 부모 - 자식 프로세스 관계이기 때문에 Self Creation 기법에서와 같이 디버깅을 하기 어려워 집니다. 2. 디버기 프로세스는 다른 디버거에서 디버깅 불가 Windows 운영체제에서 여러 디버거로 동시에 같은 프로세스를 디버깅 할 수 없습니다. 3. 디버거 프로세스를 종료하면 디버기.. 더보기
Advanced Anti Debugging Advanced Anti Debugging PE Protector에서 주로 사용되는 기법의 공통된 특징은 리버싱을 하는 사람을 힘들게 합니다.가비지 코드, 조건 분기문, 루프문, 암호화/복호화 코드 그리고 Call_Tree에 빠져서 정작 분석하고 싶은 코드에 접근 조차 못하게 합니다. Garbage Code 말 그대로 쓰레기 코드 입니다. 아무 의미없는 어셈블리어들을 이용해서 분석을 어렵게 합니다. 아니면 단순히 JMP 0x00000000과 같은 명령을 통해서 간단히 구현이 가능한 것을0x00000000을 여러 연산을 통해서 만들어 내기도 합니다. Breaking Code Alignment 디스 어셈블리 코드를 깨트리는 것을 말합니다. 예를 들어 JMP 0x12345678 명령어가 있는데 해당 주소가 정.. 더보기