Hacking & Security/Kernel2009. 7. 11. 21:01
게임 가드같은 경우 디버그 모드로 부팅하거나 게임 가드의 코드영역을 변조하거나 등등 이상한 짓을 하면 확~ 리부팅이 되어버리죠. 물론 덤프같은것도 없고요..
어떻게 하는 것일까요?
사실 여러가지 방법이 있겠죠. 포트에 쓰레기 값을 쓰거나 인터럽트 핸들러 막아두고, 인터럽트를 발생시키거나 .. 뭐 등등요..
하지만 깔끔한 방법이 있더군요. 더구나 MSDN 에 문서화 되어있고요.


KeBugCheck(POWER_FAILURE_SIMULATE);


심심하신 분들은 한번 테스트 해보세요.
참고로
유저레벨에서는 ExitWindowsEx(),
커널 모드에서는 HalReturnToFirmware  (undocumented), NtShutdownSystem     (undocumented) 라는 함수도 있답니다. :-)

출처 : http://somma.egloos.com/3772308
Posted by skensita