ANTIKILL : PROTÉGEZ LES PROCESSUS DES "KILL" VENANT DES AUTRES PROCESSUS (API WI

BlackGoddess Messages postés 338 Date d'inscription jeudi 22 août 2002 Statut Membre Dernière intervention 14 juin 2005 - 26 nov. 2003 à 17:51
cs_sivaller Messages postés 9 Date d'inscription dimanche 24 août 2003 Statut Membre Dernière intervention 28 juillet 2010 - 15 févr. 2012 à 19:05
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/18232-antikill-protegez-les-processus-des-kill-venant-des-autres-processus-api-win32

cs_sivaller Messages postés 9 Date d'inscription dimanche 24 août 2003 Statut Membre Dernière intervention 28 juillet 2010
15 févr. 2012 à 19:05
Ca marche pas !
Sur Windows 7 x64 , avec le gestionnaire de tache : je peux killer le processus proteger sans probléme !
Ca marche pas ,il doit manquer un paramétre.
daminator2 Messages postés 12 Date d'inscription dimanche 7 novembre 2010 Statut Membre Dernière intervention 4 décembre 2010
10 nov. 2010 à 10:52
personne n'aurai une version "anti any "kill any proocessus"" ?
comment pourai-je adapter ce code a un de mes programmes ?
ernest_hemingway07 Messages postés 3 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 27 janvier 2010
11 sept. 2010 à 14:47
bonjour moi j'ai tradui ce code en delphi mai il ne marche pas quelqun peu m'aider
kptn Messages postés 25 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 2 janvier 2006
11 sept. 2007 à 10:57
Sous vb.net, je ne sais pas, je ne m'en suis jamais servi... mais si c'est comme le vb d'antan, il te faudra exporter les fonctions depuis les dll systèmes et mettre le code dans le style vb. (Il y a pas mal d'exemple dans le coin de code vb utilisant des fonctions systèmes).

Pour ce qui est du nom du processus, ici il s'agit du PID, c'est à dire du numéro d'identification du processus et non de son nom, vu que tu peux avoir plusieurs processus portant le même nom.
Il te faut donc énumérer les processus (tu as des sources qui traines permettant l'énumération de processus), ce qui te permettra de faire le lien entre le nom du processus et son PID)
Dans le cas où il s'agit de ton appli, tu peut utiliser GetCurrentProcessId.

En espérant que cela t'aide un peu...
myavast Messages postés 3 Date d'inscription samedi 16 juin 2007 Statut Membre Dernière intervention 19 septembre 2007
7 sept. 2007 à 10:06
Salut

J'aimerai savoir comment ajouter se code a mon project vb.net ?
Aussi ou es que on presise le nom du processus a proteger ?

Merci

Al968
taye78 Messages postés 106 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 13 janvier 2007
15 avril 2007 à 00:47
agzel Messages postés 33 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 24 septembre 2005
10 sept. 2005 à 22:05
et si on met le flag SECURITY_NT_AUTHORITY a la place de SECURITY_WORLD_SID_AUTHORITY cachange quoi ??
kptn Messages postés 25 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 2 janvier 2006
28 oct. 2004 à 15:26
effectivement à l'époque où j'avais écris ces lignes, je n'avais pas fait gaffe à ce contournement dont tu parles... Depuis je m'étais amusé à m'octroyer tous les droits et je pouvais tuer n'importe quel process, services compris, accéder à n'importe quel thread... Mais bon, ça permet qd même de faire découvrir des api que l'on utilse peu ^^
cs_Nebula Messages postés 787 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 7 juin 2007 2
15 oct. 2004 à 14:32
Voir ici pour le contournement dont je parlais :
http://www.cppfrance.com/code.aspx?ID=26858
cs_Nebula Messages postés 787 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 7 juin 2007 2
15 oct. 2004 à 01:21
Pas mal comme protection mais facilement contournable ;-)
BlackGoddess Messages postés 338 Date d'inscription jeudi 22 août 2002 Statut Membre Dernière intervention 14 juin 2005
14 oct. 2004 à 14:29
Dommage qu'il ne résiste pas à pskill ... >> g encore rien trouvé qui lui resiste a lui :p
cs_Roudy Messages postés 25 Date d'inscription dimanche 11 avril 2004 Statut Membre Dernière intervention 15 mai 2004
5 mai 2004 à 16:09
ok parfait merci, en effet c'etait bien le include
j'ai du ajouter aussi #include pour le SetSecurityInfo
kptn Messages postés 25 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 2 janvier 2006
5 mai 2004 à 09:51
Tu as bien fais de me faire remarquer cette erreur, car j'ai oublié une petite précision et pas des moindres : tout ce qui concerne la sécurité (Platform SDK : Security) n'est accessible qu'aux windows à noyau NT et supérieur, donc WinNT, 2k, et XP. Donc si tu utilises win9x, c'est rapé.
Sinon, soit les includes présents suffisent (car ils se lient directement aux bonnes librairies) soit tu peux directement faire
#include
Et si tu ne possèdes pas ce fichiers at que, pourtant, tu as bien winNT ou supérieur, c'est que tu n'as pas les headers de la platform SDK complète.
cs_Roudy Messages postés 25 Date d'inscription dimanche 11 avril 2004 Statut Membre Dernière intervention 15 mai 2004
4 mai 2004 à 23:47
ok parfait pour le compilo
d,apres toi mes erreur comme celle la
: error C2065: 'EXPLICIT_ACCESS' : undeclared identifier
: error C2146: syntax error : missing ';' before identifier 'ea'
proviendrait a cause que j,ai pas utiliser le bon compilateur?
kptn Messages postés 25 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 2 janvier 2006
4 mai 2004 à 14:11
Roudy, j'avais précisé que le code que j'avais fourni a été compilé sous C++ Builder de Borland, et le fichier vcl.h provient de ce logiciel. Donc, si tu veux utiliser mon code, soit tu utilises builder, soit tu converti le code pour le compilo que tu utilises, sachant que la fonctin SetPermission qui est la fonction principale de ce code est tout a fait utilisable sous un autre compilo tel quel.
kptn Messages postés 25 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 2 janvier 2006
4 mai 2004 à 14:10
Roudy, j'avais précisé que le code que j'avais fourni a été compilé sous C++ Builder de Borland, et le fichier vcl.h provient de ce logiciel. Donc, si tu veux utiliser mon code, soit tu utilises builder, soit tu converti le code pour le compilo que tu utilises, sachant que la fonctin SetPermission qui est la fonction principale de ce code est tout a fait utilisable sous un autre compilo tel quel.
cs_Roudy Messages postés 25 Date d'inscription dimanche 11 avril 2004 Statut Membre Dernière intervention 15 mai 2004
2 mai 2004 à 21:12
c ou ce qu'on doit adder pour pouvoir compiler je retrouve plein d'erreur comme :

: error C2065: 'EXPLICIT_ACCESS' : undeclared identifier
: error C2146: syntax error : missing ';' before identifier 'ea'
: error C2065: 'ea' : undeclared identifier
: error C2059: syntax error : '{'
: error C2143: syntax error : missing ';' before '{'
: error C2065: 'DENY_ACCESS' : undeclared identifier
: error C2065: 'NO_INHERITANCE' : undeclared identifier
: error C2059: syntax error : '{'
: error C2143: syntax error : missing ';' before '{'
: error C2065: 'NO_MULTIPLE_TRUSTEE' : undeclared identifier
: error C2065: 'TRUSTEE_IS_SID' : undeclared identifier
: error C2065: 'TRUSTEE_IS_USER' : undeclared identifier
: error C2143: syntax error : missing ';' before '}'
: error C2065: 'SetEntriesInAcl' : undeclared identifier
: error C2065: 'SetSecurityInfo' : undeclared identifier
: error C2065: 'SE_KERNEL_OBJECT' : undeclared identifier

ou sinon

fatal error C1083: Cannot open include file: 'vcl.h': No such file or directory

mais je trouve pas dans le zip les fichier necessaire
c3rb3r3 Messages postés 38 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 25 janvier 2006
12 mars 2004 à 19:04
Dommage qu'il ne résiste pas à pskill ...
Mais dans l'ensemble, le concepte est pas mal du tout.
Merci à toi :]
BlackGoddess Messages postés 338 Date d'inscription jeudi 22 août 2002 Statut Membre Dernière intervention 14 juin 2005
27 nov. 2003 à 20:49
bien merci bcp :)
kptn Messages postés 25 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 2 janvier 2006
27 nov. 2003 à 18:02
Ta première hypothèse est la bonne :
Il protege un processus, celui que tu veux (suffit d'avoir son identifiant), des kill venant d'autres processus.

Il n'empèche aucunement le processus cible de vouloir killer les autres processus
BlackGoddess Messages postés 338 Date d'inscription jeudi 22 août 2002 Statut Membre Dernière intervention 14 juin 2005
27 nov. 2003 à 17:50
ce droit protege tout un processus contre un kill venant de n'importe quel autre processus, ou ce de droit empeche un processus de killer n'importe quel autre processus ?
kptn Messages postés 25 Date d'inscription jeudi 20 novembre 2003 Statut Membre Dernière intervention 2 janvier 2006
27 nov. 2003 à 09:38
Pour exécuter ce code, y a pas besoin de droit admin. Tu peux protéger n'importe quel processus de ton système, quelque soit tes droits.

A noter tout de même que sur la version XP, le Task Manager arrive tout de même à tuer les processus, contrairement à un TerminateProcess classique.
BlackGoddess Messages postés 338 Date d'inscription jeudi 22 août 2002 Statut Membre Dernière intervention 14 juin 2005
26 nov. 2003 à 17:51
super ca :)

je suppose qu'il faut avoir les droits admin pour executer ce code ?

sinon est-ce que un processus ayant les droits admin peut changer les droits d'un processus ayant les droits localsystem ?
Rejoignez-nous