감지 softice를 호출하여 int 68h
의 존재를 감지하는 방법은 다음과 같습니다 softice이 메모리에 전화하여 int 포함될의 값을 43h 호출하기 전에 int은 도끼를 등록합니다. 68 h. 가 아를 등록해야합니다 68h. softice이 활성화된 경우에 메모리를 반환 값 0f386h은 이것은 잘 - 알려진 방법은 일반적으로 사용되는 감지 softice는 안전하고 있지만에서만 windows 9x. 그것의 행동을 볼 수있습니다, 예를 들어, safedisc : 0.386 . 모델을 평면, stdcall 현지인 점프 유니 코드 = 0 포함 w32.inc extrn setunhandledexceptionfilter : 프로 시저입니다. 데이터 message3 message2 delayesp 이전합니다. 코드 데시벨 "탐지하여 전화 int 68h", 0데시벨 "softice 없음", 0데시벨 "softice를 찾을 수없습니다", 0 dd 0 ; 가 esp 등록을 절약 여기 dd 0; esp의 주소가 등록이 저장됩니다; 이전 seh 서비스가 여기에 시작 : ;------------------------------------------------- 2002-02-12; 세트 seh의 경우 오류가 ;------------------------------------------------- 2002-02-12 mov [delayesp], esp 푸시 오프셋 오류 전화를 setunhandledexceptionfilter mov [이전], eax ;------------------------------------------------- 2002-02-12 ; 새 주소에 대한 구조적 예외 처리 (seh)를 설정하려면 여기를 보장하는 경우에 대비해는; 오류,이 프로그램은 계속 주소가 오류 분류하고 올바르게 종료됩니다. 이것이 중요합니다; 예를 들어,이 프로그램 호출 인터럽트를 제대로 수행하는 경우에만 해당됩니다 softice; 이 활성하지만 이는 오류와 충돌을 일으킬 경우이 프로그램 softice이 활성화되지 않았습니다. 마지막으로,; 이전의 seh 서비스 주소가 저장됩니다. ;------------------------------------------------- 2002-02-12 아, 43 검색 int 68h 밀어 eax; 서비스 번호; 호출 int 68h 중단; 구원의 반환 값 ;------------------------------------------------- 2002-02-12; 세트 이전 seh 서비스 ;---------------------------------------------- -------------------------------------------------- - 밀어 dword ptr [이전] 전화를 setunhandledexceptionfilter ;------------------------------------------------- 2002-02-12; 세트 원래 seh 서비스 주소 ;------------------------------------------------- 2002-02-12 팝 eax; 복원의 반환 값 cmp 도끼, 0f386h; 시험의 반환 값이 있는지 여부를 확인 ; "매직 번호" ;------------------------------------------------- 2002-02-12; 만약 softice이 활성에 메모리를 반환 값됩니다 f386h에 도끼를 등록합니다. ;------------------------------------------------- 2002-02-12 jz jump; 그렇다면이 프로그램 점프 softice가 있기 때문에 ; 활성에 메모리 계속 : 전화를 messageboxa, 0, 오프셋 message2, \ 오프셋 message1, 0 ; 경우에 반환 값 이전 이외의 다른 f386h,; softice를 찾을 수없습니다, 오류 메시지가; 이 표시됩니다. 전화를 exitprocess, -1; 종료 일자가 프로그램 jump : 전화를 messageboxa, 0, 오프셋 message3, \ 오프셋 message1, 0 ; 인화하는 메시지가 softice를 찾을 수있습니다. 어떤; 코드에는 다음과에서이 지점입니다. 전화를 exitprocess, -1 ; 종료 일자가 프로그램 오류 :; 새 seh 서비스가 시작될 경우에 대비하는 중 오류가 발생합니다. mov esp, [delayesp] 푸시 오프셋을 계속 ret ; 이 프로그램에 오류가 발생하면, seh; 을 보장하는 프로그램은 계속에서; 오류를 분류합니다. 종료 일자 최종 시작 ; 끝 프로그램 이것은 문서가 추가 샘 petrone
|
|||
|