Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

[C/WIN32] EMPÈCHE UNE INTRUSION VIA LES PARTAGES PAR DÉFAUT DE WINDOWS


Information sur la source

Catégorie :Système Classé sous : registre, key, netbios, reg Niveau : Débutant Date de création : 11/08/2006 Date de mise à jour : 12/08/2006 10:52:55 Vu / téléchargé: 2 538 / 265

Note :
Aucune note

Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Yop ,

Je voulai apprendre les API relatives à la base de registre, et je me suis dit plutot que de faire un stupide programme qui sert à rien, rentabilisons cet apprentisage.

Vous savez tous que après une installation de windows, certain partages par défaut sont mis en place. Ainsi donc une personne malvaillante pour entrer sur votre pc en faisant simplement \\ip\c$ ou autre lettre de lecteur + $ ou encore admin$ . (tapez la commande "net share" pour les voir)
Alors aux lieu de soite, faire un batch contenant les commandes net share x$ /delete qui s'éxécute au démarrage . Mon programme crée 2 clés qui au redémarrage vont supprimer(empècher) ces partages automatiques.

Cela fait des années que à chaque installation j'ajoute ces 2 clés et cela ne ma jamais posé aucun problème au niveau stabilité ou autre :D

Précision : Dans le cas d'un pc personnel c'est surtout AutoShareWks qui est important.
 

Source

Conclusion

Si il y à des suggestions :) je suis preneur.
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

11 août 2006 19:55:01 :
- Ajout d'un précision.
12 août 2006 10:52:55 :
- modification du code.

Commentaires et avis

signaler à un administrateur
Commentaire de zeratul67 le 11/08/2006 21:13:15

Le code utile est un peu noyé dans de l'interface, mais je pense que des débutants pourrait en apprendre des choses.

Pourquoi déclares-tu tes fonctions en "__stdcall" ?

signaler à un administrateur
Commentaire de deck_bsd le 12/08/2006 10:06:39

"Le code utile est un peu noyé dans de l'interface" : tu trouves ? les 3 fonctions concernant les API sur la base de registre sont bien séparées :s

"Pourquoi déclares-tu tes fonctions en "__stdcall" " : stdcall: fonction qui dépile les paramètres, le standard API.
Le standard du C est cdecl, appelant dépile.

signaler à un administrateur
Commentaire de deck_bsd le 12/08/2006 10:46:40

... tilt ! en l'occurence j'ai pas de paramètres . L'habitude sans doute.

signaler à un administrateur
Commentaire de zeratul67 le 12/08/2006 12:22:17

"Le code utile est un peu noyé dans de l'interface" c'est vrai qu'on trouve très vite le code concernant le registre, non non il est très bien séparé, c'est pas ce que je voulais dire. Je disais juste que ce code en question est très court par rapport à tout ce qui permet d'avoir une belle interface, tu aurais très bien pu mettre cette partie en citation "code" pour qu'on ait pas besoin de télécharger le ZIP pour tout voir.

stdcall ou cdecl, lorsqu'on ne spécifie pas, lequel est employé ? Et quelle est la différence fondamentale (si c'est long et que t'as un lien qui en parle, n'hésites pas à le donner)

signaler à un administrateur
Commentaire de deck_bsd le 12/08/2006 13:00:18

"lorsqu'on ne spécifie pas" tu veut dire quand on n'y fait pas appel ? ben aucun n'est enployé. Cependant si tu veut faire un choix entre les deux, je conseil __stdcall car cdecl inject le code de nettoyage de la pile dans l'éxécutable comme mis dans la MSDN. Voici le lien pour plus de précisions : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclang/html/_core___stdcall.asp

signaler à un administrateur
Commentaire de NairodDorian le 15/08/2006 19:02:12

DECK_BSD attention tu dis, je cite : "lorsqu'on ne spécifie pas" tu veut dire quand on n'y fait pas appel ? ben aucun n'est enployé."
C'est faux.
Si tu ne specifies rien c'est la convention d'appel du langage qui est utilise.
Par exemple :
INT mafonction(VOID){ /* code la fonction */ } // Convention utilise cdecl
Par contre
INT __stdcall mafonction(VOID){ /* code de la fonction */ } // Convention utilise __stdcall

signaler à un administrateur
Commentaire de deck_bsd le 16/08/2006 11:35:41

ha je l'ignorai, autant pour moi NairodDorian.

signaler à un administrateur
Commentaire de BruNews le 16/08/2006 11:51:44 administrateur CS

sinon ça se règle (fait par défaut avec mes templates) pour tout le proj dans les propriétés du proj:
onglet C/C++ -> Advanced -> Calling Convention

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Manipulation de la base de registre [ par yserver ] Mon pb est pour ecrire des clefs ds la base de registe. Il s'agit de plusieurs types different il uy en a en tout 26. J'ai donc utilise un tableau de Base de registre [ par Elfus ] Bonjour, Ce que je veux faire est un petit truc tout bête qui est d'exporter une partie de la base de registre dans un fichier .reg. En gros l'exquiv [registre] lancez un programme au demarrage [ par lombredudragon ] bonjour je debute en c++ , j'ai fait une recherche sur le site et j'ai trouver ce bout de code pour ecrire dans le registre:#include <registry.hpp& ecrire base de registre [ par crogger ] Bonjour, je cherche à inscrire des valeurs dans la base de registre, j'ai bien trouvé cette solution :const String RegKey = "\\Software\\Exemple"; installation prog base de registre [ par hazkaal ] Bonjour,J'ai fait un programme et j'aimerais qu'il ce lance au démarrage de Windows donc il me faut pour cela l'installer dans la base de registre. J' Cle de registre Reg_Binary [ par chinois0013 ] Bonjour,J'ai un petit problème et j'ai grand besoin de votre aide !Je ne comprends pas comment sont coder les valeurs binaires des clés de registre.Co Base de registre [ par chinois0013 ] Bonjour,Je souhaite executer un fichier reg à partir d'un executable en c++.J'utilise donc la fonction suivante :ShellExecute(0, 0, "C:\\Users\\Juju\\ Registre [ par pagd ] Bonjour, quelqu'un peut il me dire pourquoi dans le code ci dessous,je récupère une erreur 2 à l'appel de RegQueryValue ?Remarque 1 : Je travail sous demarer une application en mode masqué [ par baby3378 ] Bonjour à tous, voila j'ai un petit souci : j'ai créé un projet (sous forme de console). Je l'ai ajouté dans ma base de registre afin qu'il demare en Executer un fichier .reg [ par chinois0013 ] Bonjour,Je galere depuis quelques jours pour écrire une valeur binaire dans une clé de registre. Et je n'y arrive toujours pas ! Car je ne comprends p


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.