TEST DGINA.DLL (CTRL+ALT+SUPPR SOUS NT ET PLUS....)

yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 - 20 mars 2003 à 18:14
diiplayer Messages postés 64 Date d'inscription mardi 28 septembre 2004 Statut Membre Dernière intervention 24 octobre 2007 - 4 juil. 2007 à 02:13
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/6505-test-dgina-dll-ctrl-alt-suppr-sous-nt-et-plus

diiplayer Messages postés 64 Date d'inscription mardi 28 septembre 2004 Statut Membre Dernière intervention 24 octobre 2007
4 juil. 2007 à 02:13
Salut, l'un de vous sait ou je pourrais trouver des informations sur dgina.dll?
philochon Messages postés 15 Date d'inscription mercredi 8 septembre 2004 Statut Membre Dernière intervention 27 novembre 2006
8 sept. 2004 à 13:32
super c'est ce que je cherche mais y a deux problèmes malgré avoir copié la dll et modifié la base de regitre :

1 - j'ai une msgbox qui apparait lors de l'appel de la fonction : InstallHook

2 - le bloquage du CTRL ALT SUPPR ne marche pas

qui peux m'aider ?
cs_Douns Messages postés 100 Date d'inscription lundi 16 septembre 2002 Statut Membre Dernière intervention 19 septembre 2005 1
5 avril 2004 à 14:44
Chapeau, c'est trop fort! Un grand merci, c'est exactement ce que je rechechais! Si je pouvais, 15/10!!!
Derrick soft Messages postés 97 Date d'inscription jeudi 10 mai 2001 Statut Membre Dernière intervention 20 juin 2005
4 août 2003 à 11:39
Re,

Je viens de déposé des sources complête d'une Gina.dll sur www.cppfrance.com, elle explique toute les fonctions ainsi que de créer des boîtes de dialogue pour remplacé celle existante. C'est du VC ++.

Mince j'ai oublier de voter, je le fait de suite 10/10
cs_JLN Messages postés 371 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 17 juin 2013
4 août 2003 à 11:28
Chouette ! un grand MERCI à Derrick Soft, ca c'est du super et je ne crois pas me tromper si je dis que là nous avons quelqu'un qui sait faire profiter les autres de son savoir. Merci encore.

JLN
Derrick soft Messages postés 97 Date d'inscription jeudi 10 mai 2001 Statut Membre Dernière intervention 20 juin 2005
4 août 2003 à 06:22
Derrick soft Messages postés 97 Date d'inscription jeudi 10 mai 2001 Statut Membre Dernière intervention 20 juin 2005
4 août 2003 à 06:20
Re,

Voici un code complet pour une autre DLL pGina.dll, toujours en C. Tous est incorporé, il existe même la version 1.3.0 qui est trafuite en Français.
Derrick soft Messages postés 97 Date d'inscription jeudi 10 mai 2001 Statut Membre Dernière intervention 20 juin 2005
4 août 2003 à 03:47
Re,

Sauf erreur de ma part ce n'est pas la DLL qui renvoie le message, mais WinLogon.exe sur lequel est basé l'initialisation du Hook.
Derrick soft Messages postés 97 Date d'inscription jeudi 10 mai 2001 Statut Membre Dernière intervention 20 juin 2005
4 août 2003 à 03:15
Bonjour,

Pour le CTRL+ALT+SUPPR cela doit corresponde à ceci :
-------------------------------- mygina.c --------------------------------
#include <windows.h>
#include <winwlx.h>

struct {
HMODULE hDll;
BOOL (WINAPI *WlxNegotiate)();
BOOL (WINAPI *WlxInitialize)();
VOID (WINAPI *WlxDisplaySASNotice)();
int (WINAPI *WlxLoggedOutSAS)();
BOOL (WINAPI *WlxActivateUserShell)();
int (WINAPI *WlxLoggedOnSAS)();
VOID (WINAPI *WlxDisplayLockedNotice)();
int (WINAPI *WlxWkstaLockedSAS)();
BOOL (WINAPI *WlxIsLockOk)();
BOOL (WINAPI *WlxIsLogoffOk)();
VOID (WINAPI *WlxLogoff)();
VOID (WINAPI *WlxShutdown)();
BOOL (WINAPI *WlxScreenSaverNotify)();
BOOL (WINAPI *WlxStartApplication)();
BOOL (WINAPI *WlxNetworkProviderLoad)();
} MsGina;

BOOL WINAPI WlxNegotiate(DWORD dwWinlogonVersion, PDWORD pdwDllVersion)
{
MsGina.hDll = LoadLibrary("msgina.dll");
if(MsGina.hDll == NULL) return FALSE;

MsGina.WlxActivateUserShell = GetProcAddress(MsGina.hDll, "WlxActivateUserShell");
MsGina.WlxDisplayLockedNotice = GetProcAddress(MsGina.hDll, "WlxDisplayLockedNotice");
MsGina.WlxDisplaySASNotice = GetProcAddress(MsGina.hDll, "WlxDisplaySASNotice");
MsGina.WlxInitialize = GetProcAddress(MsGina.hDll, "WlxInitialize");
MsGina.WlxIsLockOk = GetProcAddress(MsGina.hDll, "WlxIsLockOk");
MsGina.WlxIsLogoffOk = GetProcAddress(MsGina.hDll, "WlxIsLogoffOk");
MsGina.WlxLoggedOnSAS = GetProcAddress(MsGina.hDll, "WlxLoggedOnSAS");
MsGina.WlxLoggedOutSAS = GetProcAddress(MsGina.hDll, "WlxLoggedOutSAS");
MsGina.WlxLogoff = GetProcAddress(MsGina.hDll, "WlxLogoff");
MsGina.WlxNegotiate = GetProcAddress(MsGina.hDll, "WlxNegotiate");
MsGina.WlxScreenSaverNotify = GetProcAddress(MsGina.hDll, "WlxScreenSaverNotify");
MsGina.WlxShutdown = GetProcAddress(MsGina.hDll, "WlxShutdown");
MsGina.WlxStartApplication = GetProcAddress(MsGina.hDll, "WlxStartApplication");
MsGina.WlxWkstaLockedSAS = GetProcAddress(MsGina.hDll, "WlxWkstaLockedSAS");

return MsGina.WlxNegotiate(dwWinlogonVersion, pdwDllVersion);
}

BOOL WINAPI WlxInitialize(
LPWSTR lpWinsta,
HANDLE hWlx,
PVOID pvReserved,
PVOID pWinlogonFunctions,
PVOID *pWlxContext)
{
return MsGina.WlxInitialize(
lpWinsta,
hWlx,
pvReserved,
pWinlogonFunctions,
pWlxContext);
}

VOID WINAPI WlxDisplaySASNotice(PVOID pWlxContext)
{
MsGina.WlxDisplaySASNotice(pWlxContext);
}

int WINAPI WlxLoggedOutSAS(
PVOID pWlxContext,
DWORD dwSasType,
PLUID pAuthenticationId,
PSID pLogonSid,
PDWORD pdwOptions,
PHANDLE phToken,
PWLX_MPR_NOTIFY_INFO pNprNotifyInfo,
PVOID *pProfile)
{
return MsGina.WlxLoggedOutSAS(
pWlxContext,
dwSasType,
pAuthenticationId,
pLogonSid,
pdwOptions,
phToken,
pNprNotifyInfo,
pProfile);
}

BOOL WINAPI WlxActivateUserShell(
PVOID pWlxContext,
PWSTR pszDesktopName,
PWSTR pszMprLogonScript,
PVOID pEnvironment)
{
return MsGina.WlxActivateUserShell(
pWlxContext,
pszDesktopName,
pszMprLogonScript,
pEnvironment);
}

int WINAPI WlxLoggedOnSAS(PVOID pWlxContext, DWORD dwSasType, PVOID pReserved)
{
HANDLE hMutex;

if(dwSasType == WLX_SAS_TYPE_CTRL_ALT_DEL) {
hMutex = OpenMutex(MUTANT_QUERY_STATE, FALSE, "mygina mutex");
if(hMutex != NULL) {
CloseHandle(hMutex);
return WLX_SAS_ACTION_NONE;
}
}

return MsGina.WlxLoggedOnSAS(pWlxContext, dwSasType, pReserved);
}

VOID WINAPI WlxDisplayLockedNotice(PVOID pWlxContext)
{
MsGina.WlxDisplayLockedNotice(pWlxContext);
}

int WINAPI WlxWkstaLockedSAS(PVOID pWlxContext, DWORD dwSasType)
{
return MsGina.WlxWkstaLockedSAS(pWlxContext, dwSasType);
}

BOOL WINAPI WlxIsLockOk(PVOID pWlxContext)
{
return MsGina.WlxIsLockOk(pWlxContext);
}

BOOL WINAPI WlxIsLogoffOk(PVOID pWlxContext)
{
return MsGina.WlxIsLogoffOk(pWlxContext);
}

VOID WINAPI WlxLogoff(PVOID pWlxContext)
{
MsGina.WlxLogoff(pWlxContext);
}

VOID WINAPI WlxShutdown(PVOID pWlxContext, DWORD ShutdownType)
{
MsGina.WlxShutdown(pWlxContext, ShutdownType);
}

BOOL WINAPI WlxScreenSaverNotify(PVOID pWlxContext, BOOL *pSecure)
{
return MsGina.WlxScreenSaverNotify(pWlxContext, pSecure);
}

BOOL WINAPI WlxStartApplication(
PVOID pWlxContext,
PWSTR pszDesktopName,
PVOID pEnvironment,
PWSTR pszCmdLine)
{
return MsGina.WlxStartApplication(pWlxContext, pszDesktopName, pEnvironment, pszCmdLine);
}

BOOL WINAPI WlxNetworkProviderLoad(PVOID pWlxContext, PWLX_MPR_NOTIFY_INFO pNprNotifyInfo)
{
return MsGina.WlxNetworkProviderLoad(pWlxContext, pNprNotifyInfo);
}

-------------------------------- mygina.def --------------------------------
EXPORTS
WlxActivateUserShell
WlxDisplayLockedNotice
WlxDisplaySASNotice
WlxInitialize
WlxIsLockOk
WlxIsLogoffOk
WlxLoggedOnSAS
WlxLoggedOutSAS
WlxLogoff
WlxNegotiate
WlxScreenSaverNotify
WlxShutdown
WlxStartApplication
WlxWkstaLockedSAS

Pour les autres touche ce doit être le principe standard.
cs_Chewba Messages postés 90 Date d'inscription jeudi 16 mai 2002 Statut Membre Dernière intervention 10 septembre 2006
22 juil. 2003 à 12:20
Parfait, tout marche...
Serait-il possible d'avoir la source de la dll ou du moins modifier dgina.dll, afin que lorsque l'on met InstallHook dans le form_load(), il n'y ai plus la msgbox qui apparaît...
Merci
Cyberdevil Messages postés 483 Date d'inscription mardi 10 juillet 2001 Statut Membre Dernière intervention 12 juillet 2006
14 juil. 2003 à 10:34
c possible d'avoir la source de la dll ?
cs_JLN Messages postés 371 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 17 juin 2013
29 mars 2003 à 07:37
Si tu n'as pas lu ce qui est écris ou pas fait c'est normal, il faut mettre dans la base de registre dans le winlogon l'attachement à la dll et redémarrer pour que ca marche. Le fichier texte dans le zip explique ca très bien.

Bonne prog.
cs_Carnage Messages postés 31 Date d'inscription dimanche 25 août 2002 Statut Membre Dernière intervention 1 février 2008
28 mars 2003 à 20:24
tout marche parfaitement, exepté l'anti ctrl alt suppr pour xp

CaRnAgE
cs_JLN Messages postés 371 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 17 juin 2013
28 mars 2003 à 17:32
Pas bien les trojan et autre virus ! la programmation n'est pas faites pour emmerder les autres !
yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 2
20 mars 2003 à 18:14
C'est cool et utile pour les trojan :D
Ou pour empecher son petit frere d'utiliser l'ordinateur ou l'empecher de fermer un espion :D
Rejoignez-nous