이쿠의 슬기로운 개발생활

함께 성장하기 위한 보안 개발자 EverNote 내용 공유

Tool 사용법/Application Verifier

Windows Application Verifier 사용법

이쿠우우 2021. 5. 26. 20:18
반응형

 

Windows Application Verifier 

 

 


 

Windows Application Verifier 란?

Microsoft 에서 제공하는 실행 파일 검증 tool

모듈 안에서 발생 될 수 있는 위협들을 자동적으로 잡아주는 tool

프로그램의 유효성, 적절성을 검증하는 tool

올바른 동기화 관련 함수를 사용했는지, 유효하지 않은 핸들에 접근,메모리 릭 등등을 확인 가능

 

 


 

 

 

Windows Application Verifier 사용법

 

사용하기전 주의 사항

1. 프로세스가 느려지기 때문에 절대 Real환경에서는 사용해서는 안 됨

Application Verifier을 사용하게 되면 메모리 할당을 Release지만 Debug모드처럼 Memory Guard Block을 할당하고 ,

메모리 침범 등 여러 가지 오류를 검출하는 동작을 하기 때문에

실제보다 많이 느리기 작동 함.

그렇기 때문에 절대 Real환경에서는 사용해서는 안 됨

 

2. 사용 종료 시 만드시 프로세스 항목을 삭제하고 Save 를 해줘야함

Save 를 하지 않고 application verifier 를 닫을 시 

application verifier는 계속해서 프로세스를 감시하기 때문에 많은 리소스를 사용함

재부팅 해도 감시 하고있음

 

점검할 프로세스 등록 방법

File > Add Application 에서 프로세스 선택

다중 선택 가능

Windows Service 프로세스의 경우도 대상 ?.exe 파일을 등록하면 application verifier 적용 가능

 

등록 완료 상태

 

 

 

점검 항목 설정

설정할 프로세스를 선택한 후 오른쪽의 Tests 

항목에서 원하는 점검 목록 선택가능

 

(주의)

Tests 항목이 한번에 많을수록 프로세스가 느려지고 

실제 프로세스에서 발생하는 오류가 아니라 

Application Verifier 점검 항목간의 충돌로 오류 log 가 생성되서 

정확한 프로세스 log 가 생성되지 않을 가능성이 있음

그렇기에 Tests 항목은 왠만하면 1개 씩 감시하는게 정확한 점검 방법이 될 수 있음

 

 

점검 Log 확인

단축키 : Ctrl + L

Applications 항목에서 프로세스 확인

Logs 에서 Error, Warning 항목 확인 가능

View : explorer 를 통해 log 내용 확인가능

Save As : Log 내용을 파일로 저장 가능

오류 항목 클릭 수 View 클릭 시

 

Application Verifier 가 돌아가는 도중 발생하는 모든 log 들은 쌓여서 저장됨

 

 

 

 


 

 

 

 

Windows Application Verifier 과 WinDbg

Application Verifier 는 오류 발생에 관한 정보 Log 생성함

해당 Log 를 기반으로 정확한 오류 분석을 하기 위해서는 WinDbg 사용이 필요함

 

일반 실행 프로세스의 경우

Application Verifier 에 나오는 메모리 주소를 참고하여

프로세스를 실행 시킨 뒤 생성한 Dump 파일을

WinDbg 로 분석하며 원인 파악

 

Windows Servier 프로세스, 프로세스가 갑자기 종료되어 dump파일을 생성하기 힘들 경우

WinDbg just in time 방법이 필요함

 

just in time 이란?

실행중인 프로세스에서 오류가 발생하여 shutdown 되면

그 즉시 WinDbg 가 실행되어 오류 상황당시의 Dump 내용을 확인할 수 있음

 

WinDbg just in time 등록 방법

1) 명령어 방법

Cmd 관리자 권한 실행

WinDbg.exe -I

 

2) 레지스트리 key 추가

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug

Auto = ( 1: ON, 2: OFF)

Debugger = just in time debug 시 사용할 프로세스 경로

  • WinDbg 의 경우 : windbg.exe -p %ld -e %ld-g

 

 

 

 

 

반응형

'Tool 사용법 > Application Verifier' 카테고리의 다른 글

Windows Application Verifier 설치  (0) 2021.05.26