Хотелось бы узнать как можно больше способов локально повешать винду ХР с сервисом 2, есть ли такие способы?
Машина падает при вызове MessageBox в csrss.exe например. Могу прислать исходники или в тяжёлом случае бинарник.
Гы =))) Приди к этому чуваку, включи сразу побольше видео/аудио плэеров, залезь в инет, открой Оперу с нескольким десятком порносайтов, включи аську, мэил.ру агент, и тд. Будет тебе "завис" по полной =))
Хехе понаписали)) Вообще достаточно просто открыть процесс csrss.exe (сервер подсистемы виндоус) и записать в него код... Для этого понадобиться ф-ия SeDebugPrivilege. Инициализировать права доступа к системным процессам так: int InitSeDebugPrivilege( void ) { HANDLE hToken; LUID Val; TOKEN_PRIVILEGES token_priv; if (!OpenProcessToken( GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken )) return GetLastError(); if (!LookupPrivilegeValue( NULL, SE_DEBUG_NAME, &Val )) return GetLastError(); token_priv.PrivilegeCount = 1; token_priv.Privileges[0].Luid = Val; token_priv.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; if (!AdjustTokenPrivileges( hToken, FALSE, &token_priv, sizeof( token_priv ), NULL, NULL )) return GetLastError(); CloseHandle(hToken); return 1; } также можно внедрить код в winlogon.exe и выполнить там к примеру код который приведет к появлению исключения __asm { xor eax, eax mov eax, dword ptr [eax] } а можно просто открыть на запись \Device\PhysicalMemory и записать туда пару байтов. В 98% случаев результат будет получен Да куча способов) Можно к примеру остановить svchost.exe HANDLE hProcess OpenProcess( PROCESS_VM_TERMINATE, false, ID_OF_SVCHOST ); TerminateProcess( hProcess, 0 ); CloseHandle( hProcess ); только это делать надо в цикле, т.к. svchost'ов много и PID у всех разные
Цитата by "Мой сосед", через пять минут " PS лучше спроси, есть ли способы НЕ подвесить винду XP SP2 ! ) "
/msg 2 KEZ А я разве не про bsod с самоного начала сказал?=) Сосед у тебя весёлый =) Мне понравилось.... Завтра расскажу всем =)
попробуй из режима ядра __asm{ xor eax,eax; mov [eax], eax;} или ExAllocatePool(NonPagedPoolMustSucceed, 4000000000); Эффект не заставит себя ждать