더미다(Themida) 테스트
Themida 실행
디버거(올리디버거 등)가 미리 실행되어 있으면 더미다 실행안됨
Protection Options (보호 옵션)
▨ Anti-Debugger Detection
보호된 어플리케이션에서 anti-debugger를 발견할 수 있다. "Ultra"로 설정시 바이러스 감염이나 루트킷 설치여부, Windows OS 여부 확인 가능
▨ Anti Dumpers
보호된 어플리케이션에게 가장 위험한 툴 중에 하나는 메모리덤퍼이며, 이 옵션은 메모리 덤핑을 막는다.
▨ Themida command line
Themida user interface에서 옵션 내용을 저장하면 .tmd 파일이 생성됨, 명령줄에서 다음 내용 실행
Themida /protect YourProjectFile.tmd
자신의 build system에서 위 내용을 bat 파일로 작성하여 자동화 시키면 됨
▨ Protection Options > When Debugger Found 적용 테스트
1) Display Message 옵션 적용시
디버거가 실행 중이면 다음 메시지를 출력하고 프로세스는 실행되지 않는다.
2) Exit Silently 옵션 적용시
디버거가 실행 중이면 옵션 이름처럼 소리없이 조용히 프로세스(패킹된 자기자신)를 종료한다.
3) Crash Application 옵션 적용시
디버거가 실행 중이면 Exit Silently 옵션가 같이 프로세스가 자동 종료된다.
▨ 디버거 탐지 제외
Protection Options > Anti-Debugger Detection > Disabled
위 옵션을 주면 디버거가 실행 중이더라도 패킹된 파일이 실행된다.
▨ VMware/Virtual PC에서 실행 가능하게 설정
Protection Options > VMWare/Virtual PC > Compatible 체크 (체크시 VM환경에서 실행 가능)
체크를 해제하면 VM환경에서 실행이 안되고 다음 메시지 뜸
▨ Command Line을 이용한 자동 패킹
테스트 파일 준비
Themida에서 기본 옵션 조금 변경하고 프로젝트 저장하면 같은 폴더에 .tmd 파일과 ._ini 파일 생성됨
옵션값을 조금씩 바꿔가며 프로젝트 저장하여 ._ini 파일을 여러 개 생성해서 다양하게 옵션 적용 가능
[출처] Themida 실행압축(Packing) 테스트|작성자 msBang