How to shield Ctrl+Esc key sequence in XP system

  


For those who have used Windows, almost no one does not know the Ctrl+Alt+Del key combination, especially when using Windows9x, which often crashes, it is used more frequently. It is an emergency exit specially provided for system security. In the 11th issue of VC Knowledge Library Online Magazine, ac952_z_cn wrote an article about this in his personal column: “How to block CTRL+ALT+DEL” under WINDOWS NT/2000. Therefore, this article focuses on how to implement the shield CTRL+ALT+DEL key combination in Windows XP, namely Task Manager, Task Switch Combination Key (Alt+Tab), Taskbar and “Start”Menu (Ctrl+Esc, VK_LWIN, VK_RWIN). This method can also be applied to Windows 2000 environments.

In the Windows 9x/Me system, the method of masking Ctrl+Alt+Del and various task opening keys is implemented by the following method:

BOOL bOldState;

SystemParametersInfo(SPI_SETSCREENSAVERRUNNING, TRUE, &bOldState, 0);

MS Dawei thinks this method is very amateur, so this has been modified in Windows NT/2000/XP. In these newer versions of Windows, users log in using Winlogon and GINA——Graphical Identification and Authentication, which means graphical identity authentication, which is quite scary! In fact, it is the case. Winlogon is part of the Windows system, which provides interactive login support, while GINA is a DLL&mdash used by Winlogon to implement authentication. This DLL is msgina.dll. WlxInitialize, WlxActivateUserShell is the output, of course, I do not know these two, there are others. The former performs its own initialization, which activates the user's shell. Windows uses this DLL to implement username + password authentication, but developers can use their own GINA instead of msgina.dll. For example, an authentication mechanism such as a smart card, a retina scanner, a DNA check, or the like is implemented instead of an identity check in the form of a username + password. All the functions related to GINA are listed in the table below. One of them is WlxLoggedOnSAS, which is called by Winlogon when the Ctrl+Alt+Del key is pressed.

(Table 1) GINA Function List Function Description

WlxActivateUserShell Activate User Shell

WlxDisplayLockedNotice Allows GINA DLL to Display Lock Information

WlxDisplaySASNotice When No User Logins Winlogon calls this function

WlxDisplayStatusMessageWinlogon calls this function with a status message to display

WlxGetConsoleSwitchCredentials Winlogon calls this function to read the trust information of the currently logged in users and transparently pass them to the target Session

WlxGetStatusMessage Winlogon Call this function to get current state information

WlxInitialize GINA DLL initialization for specified window position

WlxIsLockOk Verify workstation normal lock

WlxIslogoffOk Verify that the logout is normal

The WlxLoggedOnSAS user is logged in and the workstation is not locked. If a SAS event is received at this time, Winlogon calls this function

WlxLoggedOutSAS No user is logged in, if SAS is received at this time Event, Winlogon calls this letter

WlxLogoff notifies GINA DLL when requesting a logout operation

WlxNegotiate indicates whether the current Winlogon version can use GINA DLL

WlxNetworkProviderLoad collects identity and authentication information in the loading network service provider After Winlogon calls this function

WlxRemoveStatusMessage Winlogon calls this function to tell GINA DLL to stop displaying status information

WlxScreensaverNotify allows GINA to interact with screen saver operations

WlxShutdown Winlogon call before closing This function allows GINA to implement any shutdown tasks, such as exiting a smart card from a card reader.

WlxStartApplication Call this function when the system needs to launch an application in the context of the user.

WlxWkstaLockedSAS when the workstation is Locked, if a SAS is received, Winlogon calls this function

By default, GINA displays the login dialog and the user enters the username and password. So if you want to mask Ctrl+Alt+Del, you can write a new MyGina.dll, which provides the function WlxLoggedOnSAS that calls msgina.dll to implement Ctrl+Alt+Del masking. Or write a keyboard driver to implement.

Copyright © Windows knowledge All Rights Reserved