; Coder : Ivan2k2
; Location : Russia,Angarsk
;
; Thanx 2 :
; - Tomasz Grysztar for FASM
; - chris for 159 bytes
; - Ancient One for 104 bytes
;
; Greetings 2 :
; - sOUR
; - Alex-
; - LisP
;
; Tested in WiND0ZE XP SP2
imageBase = 0x10000
ShutdownPowerOff = 0x2
SeShutdownPrivilege = 0x13
SE_PRIVILEGE_ENABLED = 0x2
TOKEN_ADJUST_PRIVILEGES = 0x20
NtAdjustPrivilegesToken = 011
NtOpenProcessToken = 123
NtShutdownSystem = 249
use32
dosHeader:
dw 'MZ'
dw 0
ntHeader:
dd 'PE'
dw 0x14c
dw 0
entryPoint :
_12_bytes :
lea edi,[edx-9] ; 3 here is magic
mov ebx,esp ; 2
push ebx ; 1
push TOKEN_ADJUST_PRIVILEGES ; 2
push (-1) ; 2
jmp _14_bytes ; 2
dw sizeof.optionalHeader
dw 0x102
optionalHeader:
dw 0x10b
_14_bytes :
push ebx ; 1
mov al,NtOpenProcessToken ; 2
call edi ; 2
push ShutdownPowerOff ; 2
push eax ; 1
push SeShutdownPrivilege ; 2
push 1 ; 2
jmp _08_bytes_a ; 2
dd entryPoint
_08_bytes_a :
mov ebp,esp ; 2
push eax ; 1
push eax ; 1
push eax ; 1
push ebp ; 1
jmp _08_bytes_b ; 2
dd imageBase
dd 4
dd 4
_08_bytes_b :
push eax ; 1
push dword[ebx] ; 2
push ebp ; 1
mov al,NtAdjustPrivilegesToken ; 2
jmp _04_bytes ; 2
dw 3
_06_bytes : ; 5 bytes of code and 1 empty byte
leave ; 1
mov al,NtShutdownSystem ; 2
call edi ; 2
db 0 ; 1 empty byte
dd sizeof.image
dd sizeof.peHeaders
_04_bytes :
call edi ; 2
jmp _06_bytes ; 2
db 2 ;changed from dw to db
;Thanx 2 Ancient One for this optimization =)))))))
sizeof.optionalHeader = $-optionalHeader
sizeof.peHeaders = sizeof.optionalHeader
sizeof.image = $
Как зделать Restart ???
Есть ли какая небуть функция для restart-а компа ??? :confused: ???
в VisualStudio делал так:
//вначале добавляешь пространства имён:
using System;
using System.Diagnostics;
//в обработчик пишешь:
Process.Start("shutdown -r 0");
произойдёт то же самое, если ввести "shutdown -r 0" в Пуск|Выполнить.
Цитата: ViToBrother
Есть ли какая небуть функция для restart-а компа ??? :confused: ???
Почему не пользуешься поиском?? Тебе уже давали отрицательные отзывы.. С одного раза не понимаешь???
ИМХО, если так и дальше пойдет, заслужишь бан!!
Цитата: GoreNJ
Есь:
в VisualStudio делал так:
//вначале добавляешь пространства имён:
using System;
using System.Diagnostics;
//в обработчик пишешь:
Process.Start("shutdown -r 0");
произойдёт то же самое, если ввести "shutdown -r 0" в Пуск|Выполнить.
в VisualStudio делал так:
//вначале добавляешь пространства имён:
using System;
using System.Diagnostics;
//в обработчик пишешь:
Process.Start("shutdown -r 0");
произойдёт то же самое, если ввести "shutdown -r 0" в Пуск|Выполнить.
Зачем глупые советы давать? Хоть бы название разддела почитал
А знает кто какие-нибудь "нелегальные" способы перезагрузке? Для winxp/2k/2k+3. Под нелегальными я подразумеваю подвешивание, fatal reboot или синий экран..
Помню, для win98 дохрена чего было... а вот с этими виндами..
Ну подвешивание, так это можно просто все потоки поостанавливать. Синий экран это только в драйвере (например обращение к нулевому указателю, да и любой эксепшен подойдет), хотя видел как-то исходничек приложения, которое вызывает синий экран через обычные апи, но баг скорее всего закрыли давно.
Цитата: Ation
Ну подвешивание, так это можно просто все потоки поостанавливать. Синий экран это только в драйвере (например обращение к нулевому указателю, да и любой эксепшен подойдет), хотя видел как-то исходничек приложения, которое вызывает синий экран через обычные апи, но баг скорее всего закрыли давно.
А насчет выключалок, вот (всего 97 байт %) )
http://wasm.ru/src/6/97.zip
А насчет выключалок, вот (всего 97 байт %) )
http://wasm.ru/src/6/97.zip
Оо а как мне выполнить из-под c++ MFC приложения вот это:
Код:
Цитата: nof
Народ, тогда другой вопрос))
А знает кто какие-нибудь "нелегальные" способы перезагрузке? Для winxp/2k/2k+3. Под нелегальными я подразумеваю подвешивание, fatal reboot или синий экран..
Помню, для win98 дохрена чего было... а вот с этими виндами..
А знает кто какие-нибудь "нелегальные" способы перезагрузке? Для winxp/2k/2k+3. Под нелегальными я подразумеваю подвешивание, fatal reboot или синий экран..
Помню, для win98 дохрена чего было... а вот с этими виндами..
Поиск знает все.. Когда ж вы, блин, гуглить научитесь.
Вот тут: http://www.ntbugtraq.com/default.aspx?pid=36&sid=1 архив уязвимостей нт-шек.
Цитата: nof
Оо а как мне выполнить из-под c++ MFC
погуглить всего три функции, две из которых документированы, а третья
http://undocumented.ntinternals.net/UserMode/Undocumented%20Functions/Hardware/NtShutdownSystem.html
Надеюсь как получить из длл функцию по имени ты знаешь?
Держи