CACHER LE NOM D'UNE APPLICATION DE LA LISTE DES PROCESSUS DANS LE GESTIONNAIRES

cs_Forman Messages postés 600 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 6 avril 2010 - 29 mars 2006 à 10:43
pierre_54 Messages postés 3 Date d'inscription mercredi 8 mars 2006 Statut Membre Dernière intervention 20 juin 2010 - 9 juin 2010 à 11:38
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/36775-cacher-le-nom-d-une-application-de-la-liste-des-processus-dans-le-gestionnaires-des-taches-sous-win2000-et-xp

pierre_54 Messages postés 3 Date d'inscription mercredi 8 mars 2006 Statut Membre Dernière intervention 20 juin 2010
9 juin 2010 à 11:38
d'accord avec devnull, du "vrai bourrinage mais bien fait". on peut remplacer :
if Pos('monprog', LowerCase(szTemp)) > 0
par
if Pos(lowercase(ChangeFileExt(ExtractFileName (Application.ExeName),'')), LowerCase(szTemp)) > 0
mais c'est un detail et un peu hors sujet.

PS : ca me fait toujours rigoler les commentaires du style de FORMAN du 14/1/9, 19:29:37 : MORALE QUAND TU NOUS TIENS :)
cs_Forman Messages postés 600 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 6 avril 2010 1
14 janv. 2009 à 20:26
Pour une fois ça parait une raison valable :-)

Mais c'est vrai qu'il existe d'autres programmes que le TaskManager pour voir et agir sur les processus (par exemple j'en ai mis un en mode texte dans mes sources sur Delphifr). Dans ce cas l'injection de DLL dans explorer.exe parait un bon compromis (peu de personnes pensent à aller regarder la liste des modules résidents dans un processus!).

Bonne soirée à toi aussi.
fiba Messages postés 11 Date d'inscription jeudi 26 décembre 2002 Statut Membre Dernière intervention 14 janvier 2009
14 janv. 2009 à 20:06
Bonjour tout le monde,

Loin de moi l'idée d'inciter quelqu'un à utiliser cette source pour écrire un virus ou quelque chose du genre. Je l'ai utilisé sur un programme de contrôle de navigation sur des postes client sans avoir la permission d'un administrateur (qui lui est sur le serveur). Le client (mon client) avait demandé à ce que le programme local sur le client ne soit pas visible sur le poste du client. J'ai lu pas mal de question du genre "comment cacher une application de la liste des processus" alors je l'ai posté.

Bonne soirée à tous.
cs_Forman Messages postés 600 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 6 avril 2010 1
14 janv. 2009 à 19:29
Enfin dans tous les cas je voudrais bien que quelqu'un me donne une raison valable (autre que celle d'écrire un virus ou toute autre forme de pourriture) pour vouloir cacher son programme du TaskManager...
/dev/null Messages postés 12 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 14 janvier 2008
14 janv. 2009 à 18:52
Autant pour moi ^^
Par contre, si c'est une application complète qui est a cacher, la programmation dans un DLL n'est pas forcement le mieux.
Et puis cela n'empêche pas que "l'application" devienne un parasite dans le system.
cs_Forman Messages postés 600 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 6 avril 2010 1
13 janv. 2009 à 15:17
Salut /dev/null ;-)

L'intérêt de CreateRemoteThread c'est surtout que la DLL injectée peut lancer un thread et faire tout ce que fait un exe, tout en n'étant pas répertoriée comme un exe. Seul le launcher est visible quelques millisecondes, le temps qu'il injecte la bestiole quelque part. Inutile alors de changer la table d'import de taskmanager!
fiba Messages postés 11 Date d'inscription jeudi 26 décembre 2002 Statut Membre Dernière intervention 14 janvier 2009
13 janv. 2009 à 09:58
Bonjour,

Desolé pour la réponse tardive, et merci à DevNull.
/dev/null Messages postés 12 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 14 janvier 2008
13 janv. 2009 à 09:56
La méthode via CreateRemoteThread demande:
1. De trouver l'adresse des fonction API employées par le gestionnaire des taches pour la lecture des processus
2. Faire une fonction de substitution pour les API en (1)
3. Faire un Hooker system (crochetage par excrasement des premiere instruction de la fonction) ou un Hooker TableImport redirection (changemant de l'adresse de la fonction API dans la table des DllImport)

C'est ce qu'il y'a de "mieux" mais c'est un poils technique et pas si évident que ça. De plus, les systèmes un peut sécurisés risquent de détecter la manipulation et de virer le prog... car c'est des techniques de RootKit ;)
/dev/null Messages postés 12 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 14 janvier 2008
13 janv. 2009 à 09:48
@BIMAS:

dans le fichier Unit1.pas
58 # if Pos('monprog', LowerCase(szTemp)) > 0 then
59 # ListView_DeleteItem(wnd, i);

change 'monprog' en 'EXCEL', ou plus exactement le nom du processus a cacher.
bimas Messages postés 5 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 9 avril 2009
12 janv. 2009 à 11:06
bonjour,

j'ai une application qui tourne sous excel et je voudrai que le processus n'apparaisse pas dans la liste du gestionnaire des taches. Je veux donc l'effacer de la liste du gestionnaire des taches.

avec le programme ci-dessus zipper dans la procedure 'cacher' je ne vois pas où mentionner l'application EXCEL.EXE.

merci
DevNul Messages postés 9 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 21 mars 2008
27 nov. 2007 à 03:52
Simpa... c'est du vrai bourinage, mais c'est quand même bien fait ^^
donII Messages postés 1 Date d'inscription lundi 5 novembre 2007 Statut Membre Dernière intervention 5 novembre 2007
5 nov. 2007 à 18:53
comment utilusé les fichies ds zip
fiba Messages postés 11 Date d'inscription jeudi 26 décembre 2002 Statut Membre Dernière intervention 14 janvier 2009
30 mars 2006 à 09:23
Salut à toi Forman,

Je ne connaissais pas l'existence de cette fonction CreateRemoteThread, ca me parrait cool, je vais essayer de bosser là- dessus.Merci à toi. En tout cas, toute idée sera la bienvenu, je eu du mal a chercher comment cacher un programme dans la liste des processus de windows, et comme je l'avait dit, c'est ce que j'ai trouvé de mieux. Merci encore
cs_Forman Messages postés 600 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 6 avril 2010 1
29 mars 2006 à 10:43
Pourquoi ne pas simplement faire une dll, et en injecter le code via CreateRemoteThread? L'exe ne serait visible qu'une milliseconde pendant qu'il injecte la dll, puis disparait du gestionnaire de programmes, alors que la dll injectée dans Explorer.exe par exemple continue de tourner sans être visible...

^^
Rejoignez-nous