반응형
안티리버싱 FindWindow, 우회방법
[ FindWindow API ]
클래스네임과 윈도우네임이 일치하는 top-level 윈도우가 있다면 핸들을 반환.
없다면 0 반환.
[파라미터]
LPCTSTRlpClassName
: class name 또는 atom을 나타내는 null로 끝나는 문자열 포인터.
atom이라면 GlobalAddAtom으로 생성된 global atom이어야 한다.
atom은 16bit 값으로, lpClassName (4bytes)의 high-order word(2bytes)는 0으로 채우고 나머지 low-order word(2bytes)에 atom값이 위치해야 한다.
LPCTSTRlpWindowName
: window name (window title)을 나타내는 null 종료 문자열 포인터.
null로 준다면 윈도우 타이틀은 뭐던 상관 안씀.
[우회방법]
1) 툴을 이용하여 Class name 또는 Window name을 다른 문자열로 바꿈.
2) 함수 호출 인자 문자열을 아무 값으로 바꿈.
3) 함수 호출 결과 eax를 0으로 설정.
반응형
'취약점 분석 > 안티 리버싱' 카테고리의 다른 글
NtQueryInformationProcess - NoDebugInherit 우회방법 (0) | 2019.02.27 |
---|---|
안티 리버싱 - BP를 찾자. (0) | 2019.02.26 |
SeDebugPrivilege, 우회방법 (0) | 2019.02.26 |
NtGlobalFlag, 우회방법 (0) | 2019.02.26 |
IsDebuggerPresent, 우회 방법 (0) | 2019.02.26 |