본문 바로가기

후킹2

[윈도우] 숨겨진 프로세스를 찾는 방법들 1. EPROCESS의 ActiveProcessLinks Linked List를 이용해서 Traverse. ( 왠만한 루트킷들은 이 값을 조작하므로 별로 소용없을지도 모르지만, ZwQuerySystemInformation()을 후킹하여 결과값을 조작하는 식으로 숨기는 경우는 이 방법으로 손쉽게 찾아낼 수 있습니다. ) 2. ZwOpenProcess() Brute-Force Detection 유효 PID인 0L부터 0xFFFFL까지 4의 배수들을 모두 Open해서 성공적으로 열어지는 프로세스를 감지합니다. 단, 프로세스가 종료되었으나 핸들이 닫히지 않은 경우에도 Open되므로 추가적인 확인이 필요합니다. 3. PspCidTable Traverse Windows NT에는 PspCidTable이라는 Unexp.. 2010. 1. 6.
DLL Injection 은 어떻게 이루어지는가? 루트킷을 비롯하여 바이러스, 악성코드 등 여러 분야에 두루 쓰이는 기법이 DLL Injection입니다. 윈도우즈 OS에 한정되어 적용되는 것이지만, 윈도우즈 자체의 점유율이 높은 이유로 아주 효과적으로 공격자가 원하는 작업을 수행할 수 있는 방법이죠. 최근 루트킷에 대해 공부하면서 이 DLL Injection이 어떻게 이루어지는 알게 된 것을 정리해봅니다. DLL? 그게 뭐야? DLL은 윈도우즈 OS에서 사용되는 동적 연결 라이브러리 실행 파일입니다. 말이 어렵죠? 간단하게 말해서, 실행할 수 있는 아주 작은 프로그램의 단위라고 이해하시면 되겠습니다. 라이브러리라는 말은 아시나요? 영어로 Library, 도서관이라는 뜻이죠? 프로그램이 작업을 수행할 때 이 라이브러리를 참조하게 됩니다. 라이브러리에 포.. 2009. 9. 1.