Заключване на Ctrl-Alt-дел асемблер

Първото нещо, което бих казал - е, че клавишната комбинация Ctrl-Alt-Del е предназначен не само да се обадите на диспечера на задачите. На първо място тя е предназначена да отворите прозореца Winlogon процес, в който ние имаме възможност да сложи край на текущата сесия, изключване на компютъра, както и, разбира се, да доведе до диспечера на задачите. Тези, които са поставени в WinXP засилено настройките за сигурност, толкова познато, че е кутия.

Заключване на Ctrl-Alt-дел асемблер

Така че, заключване на подмяна или отстраняване или замяна на това на диспечера на задачите на Windows себе си (файл taskmgr.exe е в папката Windows система) просто прави невъзможно да се обадя, но все пак (с някои корекции) комбинацията Ctrl-Alt-Del работи над подадат сейф все още се показва. И доведе до диспечера на задачите може да бъде и чрез клавишната комбинация Ctrl-Shift-Esc без показване на прозореца.

Първо, мисля за това как можете да деактивирате Windows диспечера на задачите. Много хора веднага излезе с идея за това как да се премахне или да замени taskmgr.exe файл. На първо място, това не е толкова лесно, колкото в Windows XP, въведете системата за защита на файлове и с всяка промяна е тяхно право да възстанови своите системни файлове. Backup файлове са в system32dllcache с папки. Папка system32 и system32dllcache взаимно свързани и възстановени, освен отстраняване system32dllcache води до възстановяване на system32. Поради това е необходимо да се премахне (или замяна) taskmgr.exe файл и в двете папки в същото време. Добре, ние трябва да се премахне (или замяна) на файла, но радостта не трая дълго, се показва съобщение за повредени системни файлове на Windows и искане да поставите диска с дистрибуторския пакет за надграждане на системата. По принцип, също така е възможно да се заобиколят. Какво искам да кажа? Освен това заместване или изтриване на файлове не е опция, а "чрез магарето", се оказва,.

Това е много проста. Също така, в допълнение, можете да преместите мениджъра на прозорци и извън екрана. Така че, задачата за блокиране на диспечера на задачите е успешно решен. Но нашата цел е клавишната комбинация Ctrl-Alt-Del или Ctrl-Shift-Esc.

Първата идея, която се проявява, когато е необходимо да се възползват от клавишната комбинация Ctrl-Alt-Del или Ctrl-Shift-Esc - е да се използва стандартен механизъм куки. Но тези, които вече са се опитали да го направят, да кажем, че чрез стандартен механизъм куки не може да се намеси и да е от важните комбинации. И там е чувството, че тези комбинации могат да бъдат засечени, освен ако режимът шофьор ядрото на писане филтър. Но има и друг начин.

Така че нашата цел - един winlogon.exe процес, този процес управлява влизане на потребителя и излизане. Процес winlogon.exe е един от основните процеси, които отговарят за сигурността на системата. Този процес не може да бъде завършена от диспечера на задачите, но е възможно да се сключи друг програма на трета страна. Това е само след приключване на winlogon.exe веднага Boden генерирани BSOD.

Така че, процес winlogon.exe е много важно. В него има един прозорец със заглавие «SAS прозорец» и клас «SAS Window класа» е това и само се изпраща този прозорец WM_HOTKEY съобщение, когато комбинацията е повдигнато Ctrl-Alt-Del или Ctrl-Shift-Esc и няколко важни комбинации. Намери прозорец чрез функция FindWindow не може, или по-скоро може, но просто е в контекста на процеса на Winlogon. че е невъзможно да се намери един прозорец на редовната програма.

Така че нашата задача е да замени прозорец функция «SAS прозорец» прозореца и да хване в него WM_HOTKEY съобщение ако се натисне тези магически комбинации, а след това просто не се обадите на оригиналната функция прозорец. Но това, всичко е направено, трябва да сме в контекста на процеса на Winlogon. Най-лесният начин - е да го приложат в нашата DLL. Ето кода на DLL

Код DLL блокове комбинирани за точно една минута по-късно DLL се разтоварва от паметта Winlogon. Можете да промените функцията NewWndProc начина, по който да се пренасочи блокиран от комбинация от друга, също може да блокира всяко клавишна комбинация, които не могат да бъдат засечени чрез стандартните механизъм куките. И тук е кодът, който ще се зареди нашата DLL в процеса на Winlogon.

Тази процедура отнема процес ID Winlogon и начина, по който да ни DLL. Разбира се, преди това трябва да се грижи за получаване на привилегии «SeDebugPrivilege», за да може да се отвори процес Winlogon в връзка е необходимо за нас. Пълен програмен код и DLL, вижте архива с изходния код в края.
По този начин, блокиране на Ctrl-Alt-Del и Ctrl-Shift-Esc се изпълнява. Но някои не ми харесва използването на DLL. И както винаги, въпросът е "Възможно ли е да се направи всичко, без DLL». Е, разбира се, всичко това може да бъде направено без DLL, чрез нашия код, за да инжектирате процес Winlogon.