안녕하세요... 삽잡이입니다...
오늘은 미친삽이 아니라 센치한 삽입니다...
주말에 너무 잠을 자서.... 내일이 감히 월요일이지만...
미친척하고 이러고 놀고 있습니다...
(원래 누우면 그냥 잡니다... 잠이 안와서 안자는게 아니라... 그냥... 눈이 떠있고 싶네요...)
자.. 센치하게 코드 분석이나 해봅시다... 마치 문학 시간에 현대 시를 감상하듯이~
WinDbg에서 환경 설정을 해두고...
프로세스를 클릭하여 Handle을 알아보고자 했을 때 당신이 나타났습니다...
당신은 이런 설명이 있더군요...
"Gets a pointer to the handle table of a process."
고맙습니다... 당신 덕분에 프로세스에서 handle table을 얻을 수 있었습니다.
당신의 return 이라는 한 단어에 나는 바람과 같이 움직입니다.
아~ 이름 모를 그대여 왜 제 앞에 나타나셨나요... (니가 온거야...;;)
왜... 왜!!! 당신은 프로세스의 핸들을 늘어 뜨리시나요!!!
(아... 못해먹겠다... 센치하긴 한데 이거 2~3절 이상 넘어가는거 같네요... 죄송합니다...)
아무튼... 이놈의 핸들을 뽑아 내주군요...
흠... 저는 디버깅에 따라가는 곳으로 물 흐르듯이 따라가보겠습니다...
context 라는 구조체 변수를 초기화 해주고 있습니다... 핸들을 까볼때 필요합니다...
그리고 드디어 나왔습니다... OS 버전에 맞게 핸들을 열거해주도록 해놨네요...
앗... 여러분 주목하셔야 될 것이 있습니다...
뭐가 보이네요...
바로!! CallBack 함수입니다!
핸들값을 추출하는데 CallBack 함수를 사용했습니다...
이제 CallBack 함수를 알아보도록 해야겠네요... 뭘까요 요놈은...
WinDbg로 보기 힘들어서... 저는 Visual Studio를 가지고 CallBack 함수를 보도록 하겠습니다.
이제 거의 다 왔습니다!
물론 제가 씹어먹으려면... 장담은 못하겠네요 푸하하...
그렇다면!
다음시간에 뵙죠! 이상 삽잡이였습니다!
[구글 키워드]
CallBack
ProcessHacker
WinDbg
http://sapzape.tistory.com/39
'삽질의 현장 > - 윈도우 커널' 카테고리의 다른 글
윈도우커널_#021_드라이버와의 진정한 대화! I/O Requset Packet! (0) | 2015.06.09 |
---|---|
윈도우커널_#020_본격! WinDbg로 Target PC(Guest) 에 프로세스 디버깅하기! (0) | 2015.06.09 |
윈도우커널_#019_RtlInitUnicodeString & InitializeObjectAttributes & ZwOpenKey & IoCreateDevice (0) | 2015.06.09 |
윈도우커널_#018_Driver 까본다는 사람이... Driver 개발의 기본 DriverEntry도 몰라? (0) | 2015.06.09 |
윈도우커널_#017_커널을 까볼자! Kernel Driver Debugging 도전기 (2) (0) | 2015.06.09 |