begin process at 2012 05 28 19:15:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Divers

 > 

comprendre le brute forcing


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

comprendre le brute forcing

lundi 2 février 2009 à 10:18:18 | comprendre le brute forcing

dyroj

bonjour a tous,
je que je veut comprendre c'est pas comment créer l'ago mais comment lappliquer sur une aplication que utilise un passe.
moi ce que je veut c'est créer un brute dorce que peut craquer le passe de mon programme.
je presise que mon programme est avec une interface graphique et au demaraque il y a une boite de dialogue qui demande le passe.

merci et a ++

lundi 2 février 2009 à 14:02:16 | Re : comprendre le brute forcing

rt15

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

Tu peux faire un truc plus ou moins basique... Voici un exemple très basique :

#include <windows.h>

#define NB_KEYS 12

TCHAR lpKeys[NB_KEYS] = {'H', 'E', 'L', 'L', 'O', VK_SPACE,
                         'W', 'O', 'R', 'L', 'D', VK_RETURN};

int WINAPI WinMain(  
        HINSTANCE hInstance,
        HINSTANCE hPrevInstance,
        LPSTR lpCmdLine,
        int nCmdShow)
{
  HWND hWin;
  int i;

  hWin = FindWindow("Notepad", NULL);
 
  if (hWin)
  {
    hWin = GetWindow(hWin, GW_CHILD);
    if (hWin)
      for (i = 0; i < NB_KEYS; i++)
      {
        PostMessage(hWin, WM_KEYDOWN, lpKeys[i], 0);
        Sleep(10);
      }
  }
  return 0;
}

Si tu lance un bloc note (notepad) et que tu exécute ce programme, "hello world" va être écrit dedans, avec un retour chariot à la fin, souvent synonyme de validation dans le cas d'un mot de passe.

PostMessage est utilisé pour envoyé les caractères un à un à l'aide d'un message WM_KEYDOWN. Un WM_SETTEXT aurait pu être utilisé, quoiqu'il y a plus de code à écrire, car il faut allouer une zone dans le processus distant. Par contre, WM_SETTEXT est probablement plus rapide à l'exécution, ce qui est important dans le cas de la force brute.

Concernant le récupération du handle de la fenêtre, il y a différentes fonctions disponibles et diverses façon d'arriver à ses fins. Par exemple :
1) CreateToolhelp32Snapshot pour trouver le processus associé à un nom de .exe entré par l'utilisateur.
2) EnumWindows pour lister les fenêtres principales.
3) GetWindowThreadProcessId pour voir si le handle de fenêtre principal correspond au PID trouvé à l'aide de CreateToolhelp32Snapshot.

Une autre implémentation via WindowFromPoint peut être une alternative tout aussi intéressante.

Quoiqu'il en soit, la force brute, ça reste pour les brutes... Un petit désassemblage peut s'avérer beaucoup plus intéressant.
lundi 2 février 2009 à 14:19:34 | Re : comprendre le brute forcing

dyroj

je te remerci vraiment pour ta reponce,
j'avai pencer a sa mais je ne savai pas qu'on pouvai le faire avec des fonction de windows.
quand tu dit "Un petit désassemblage peut s'avérer beaucoup plus intéressant."
sa veut dire koi. existe t'il dotre moyen plus efficasse pour casser un pass.
merci encor pour ta reponce++

lundi 2 février 2009 à 15:17:43 | Re : comprendre le brute forcing

rt15

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Fais un peu attention à ton français s'il te plait, il est pire que le mien. Les principaux navigateurs proposent la correction auto ou ont des plugins qui le propose.

Concernant la méthode alternative, elle peut être plus efficace, mais ça dépend des compétences de celui qui l'applique et du code utilisé pour vérifier le mot de passe.

Avant tout chose, il faut apprendre l'assembleur. Quelques connaissances sur l'API Win32 s'avèrent aussi nécessaires. Une fois qu'on connait un peu l'assembleur et le Win32, on comprend rapidement comment exploiter ces connaissances pour esquiver une validation de mot de passe.
lundi 2 février 2009 à 15:20:53 | Re : comprendre le brute forcing

dyroj

et c'est impossible de faire sa en c ou cpp.
lundi 2 février 2009 à 15:30:10 | Re : comprendre le brute forcing

rt15

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Bin non. Ce n'est pas écrire du code, c'est lire le code de quelqu'un d'autre qui ne te l'a pas fourni. Mais même s'il ne te donne pas son code, tu peux toujours (Ou presque) récupérer le "source" assembleur.

Source C -> .exe -> assembleur -> .exe modifié

Première traduction réalisée par un compilo, deuxième traduction réalisée par un désassembleur, troisième traduction réalisée par un assembleur.
lundi 2 février 2009 à 17:43:46 | Re : comprendre le brute forcing

dyroj

ha je vois sa a laire tres interessans mais.
merci et a++


Cette discussion est classée dans : créer, passe, comprendre, brute, forcing


Répondre à ce message

Sujets en rapport avec ce message

Algorithme Brute Force [ par LordBob ] SAlut a tous,voila j'essai de créer un algorithme de brute force qui ce généralise a X caractère. Pour le debut je me limite seulement aux chiffres ma Créer et crypter un mot de passe [ par Chacal50 ] Salut,Je suis débutant  en langage C et j'aimerais savoir comment vous créez et cryptez un mot de passe? Url [ par Math1004 ] Suite a de nombreuses recherches j ai fini par tomber sur http://www.cppfrance.com/infomsg.aspx?ID=1018231 mais j ai rien compris :( je debute un peu Information pour sécuriser un fichier compilé [ par ruskofszym ] Coucou tout le monde Alors voila mon problème ou plutôt ma question : Dans mon boulot j'ai créer un petit code que d'autres personnes veulent utilis créer un exe [ par Arimane1 ] Bonjour, Je viens de télécharger un fichier .zip dans la catégorie réveil... Et dans ce fichier compresser il y en a pleins d'autres.. Alors voila, co implémentation [ par twistakarima ] Bonjour, je suis un étudiant en l'informatique ,j'ai un mini_projet a faire,mais je ne sais pas comment commencer, j'essaye depuis ce matin de compren créer une dll avec visual C++ 2008 express [ par marco62118 ] bonjour à tous y aurait il quelqu'un qui pourrait m'aider à créer (pas à pas) une dll en c++ avec "visual C++ 2008 express" Je ne suis pas sur d'abord Créer une fenetre sous linux sans gtk+ ! Hellp [ par Fildomen ] Bonjour, [^^happy13] Je doit developper un petit programme en C, le problème c'est qu'il faut obligatoirement qu'il tourne sur les ordinateurs de l'ec Comment créer un exe pour lancer un msi(l'msi doit etre inclu dans l'exe) [ par ghanmi04_05 ] Bonjour, J'ai besoin d'un bout de code en cpp de préférence, pour générer un exe (setup.exe) qui lance un msi (pas comme le setup.exe de visual studio


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,635 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales