Blocarea ctrl-alt-del asamblare
Primul lucru pe care aș spune - este că combinația de taste Ctrl-Alt-Del este destinat nu numai pentru a apela Managerul de activități. În primul rând, este destinat să deschidă procesul Winlogon fereastră în care avem posibilitatea de a termina sesiunea curentă, opriți computerul, și, desigur, cauza Task Manager. Cei care au pus în WinXP îmbunătățite setările de securitate, atât de familiară lui cutie.

Deci, de înlocuire de blocare sau eliminarea sau înlocuirea acesteia pe Windows Task Manager în sine (fișier taskmgr.exe este în folderul de sistem Windows) doar face imposibilă pentru a apela, dar încă (cu anumite ajustări) combinația Ctrl-Alt-Del funcționează de mai sus fișier casetă de siguranță este încă afișat. Și cauza Task Manager poate fi, de asemenea, prin combinația de taste Ctrl-Shift-Esc fără a afișa fereastra.
În primul rând, gândiți-vă cum puteți dezactiva Windows Task Manager. Mulți oameni vin imediat cu o idee despre cum să elimine sau să înlocuiască fișierul taskmgr.exe. În primul rând, nu este la fel de ușor ca în Windows XP, introduceți sistemul de protecție de fișiere și cu orice schimbare este dreptul lor de a restaura fișierele de sistem. fișiere de rezervă sunt în system32dllcache dosar. Folder system32 și system32dllcache conectate reciproc și restaurate, în afară de îndepărtarea system32dllcache atrage după sine recuperarea system32. Prin urmare, este necesar să se elimine (sau să înlocuiască) fișierul taskmgr.exe în ambele dosare, în același timp. Bine, trebuie să elimine (sau să înlocuiască) fișierul, dar bucuria nu a durat mult, un mesaj este afișat pe fișierele deteriorate de sistem Windows și solicitarea de a introduce un disc cu pachetul de distribuție pentru a face upgrade sistemului. În principiu, este de asemenea posibil de a ocoli. Ce vreau să spun? Pe lângă faptul că substituția sau ștergerea de fișiere nu este o opțiune, „prin fund“, se pare.
Este foarte simplu. De asemenea, în plus, puteți muta managerul de ferestre bine dincolo de ecran. Deci, sarcina de a bloca managerul de activități este rezolvată cu succes. Dar scopul nostru este combinația de taste Ctrl-Alt-Del sau Ctrl-Shift-Esc.
Prima idee care apare atunci când este necesar să se profite de combinația de taste Ctrl-Alt-Del sau Ctrl-Shift-Esc - este de a utiliza un mecanism standard de cârlige. Dar cei care au încercat deja să facă acest lucru, spun că printr-un mecanism standard de cârlige nu poate intercepta oricare dintre combinațiile importante. Și există un sentiment că aceste combinații pot fi interceptate, cu excepția cazului în modul kernel driverul de filtru de scriere. Dar există o altă cale.
Deci, scopul nostru - un proces winlogon.exe, acest proces gestionează conectarea și deconectarea utilizatorilor. Procesul winlogon.exe este unul dintre procesele fundamentale responsabile de securitatea sistemului. Acest proces nu poate fi completat de managerul de activități, dar este posibil să se încheie orice alt program terț. Aceasta este numai după finalizarea winlogon.exe imediat Boden generat BSOD.
Deci, procesul de winlogon.exe este foarte important. În ea există o fereastră cu titlul «SAS fereastră» și clasa «SAS Window clasa» este acest lucru și numai este trimis această fereastră WM_HOTKEY mesaj atunci când combinația au fost apăsat Ctrl-Alt-Del sau Ctrl-Shift-Esc și mai multe combinații importante. Găsiți o fereastră prin funcția FindWindow nu poate, sau mai degrabă poate, ci doar fiind în contextul procesului winlogon. este imposibil de a găsi o fereastră a programului obișnuit.
Deci, sarcina noastră este de a înlocui funcția de fereastră «fereastră SAS» fereastră și pentru a prinde în ea WM_HOTKEY mesaj dacă este apăsat aceste combinații magice, atunci pur și simplu nu apela funcția originală fereastra. Dar asta, totul este făcut, trebuie să fim în contextul procesului winlogon. Cel mai simplu mod - este să-l pună în aplicare în DLL noastre. Iată codul de DLL
Codul acestei blocuri DLL combinate pentru exact un minut mai târziu DLL este descărcat din winlogon de memorie. Puteți schimba modul în care funcția NewWndProc să redirecționeze blocate de o combinație de alte, de asemenea, poate bloca orice combinație cheie care nu pot fi interceptate prin intermediul cârligelor mecanismului standard. Și aici este codul pe care se va încărca DLL noastre în procesul Winlogon.
Această procedură are proces winlogon ID-ul și modul de a DLL noastre. Desigur, înainte de a ne că trebuie să aibă grijă de privilegii obținere «SeDebugPrivilege» pentru a putea deschide conexiunea de proces winlogon c este necesar pentru noi. cod de program complet și DLL, a se vedea arhiva cu codul sursă la sfârșitul anului.
Astfel, blocarea Ctrl-Alt-Del și Ctrl-Shift-Esc este pus în aplicare. Dar unii nu le place utilizarea DLL. Și, ca întotdeauna, întrebarea este „Este posibil să se facă totul fără DLL». Ei bine, desigur, toate acestea se poate face fără DLL, prin codul nostru pentru a injecta proces winlogon.