• STATISTIQUES
  • Il y a eu un total de 0 membres et 33731 visiteurs sur le site dans les dernières 24h pour un total de 33 731 personnes!
    Membres: 2 605
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] NewbieContest
    Nous vous proposons une série de challenges regroupant plusieurs domaines allant de l'exploitation de fail...
    Hacking
    [FR] Zenk-Security
    La communauté zenk-security a pour objet principal la sécurité informatique, nous sommes des tou...
    Hacking
    [EN] Rankk
    Site de challenge construit sur le principe d'une pyramide à 9 level. Level 1: 60,Level 2: 72,Level 3: 68,Lev...
    Challenges
    [EN] Lost-chall
    Site de challenge présenté sous la forme de différente saison. Pour passer une saison vous devez avoir accumulÃ...
    Challenges
    [FR] Le top web
    Nous offrons une sélection la plus large possible de resources webmaster gratuites, hébergement gratuit...
    Webmaster
    [EN] phrack
    Lot's of stuff !
    Hacking
    [FR] Le site du zero
    Découvrez gratuitement la programmation (C, C++, PHP, MySQL, XHTML, CSS...), Linux, le Mapping, la modé...
    Programmation

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!

    €



Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Python] Bruteforcer avec API Pexpect
24-11-2013, 17h23
Message : #1
thxer Hors ligne
:(){ :|:& };:
*



Messages : 382
Sujets : 60
Points: 162
Inscription : Feb 2013
[Python] Bruteforcer avec API Pexpect
Hey salut à tous !

Je cherchais un moyen pour programmer un petit bruteforcer en python, le soucis c'était qu'il fallait gérer un stdin.

Le programme fait :
Citation :./Prog.c
----------------
Hello Dude !

Serial:
---------------

Il faut donc que notre script intercepte la sortie du prog et puisse entrer des données.

Pexpect

Pexpect est une API pour python géniale, elle gère super bien les entrées/sorties du programme.
C'est pour cela que je fais ce petit post car ses applications peuvent être nombreuses en dehors d'un simple script de BF.

http://pexpect.readthedocs.org/en/latest/overview.html
Mini Tutos :
Code PYTHON :

import pexpect

child = pexpect.spawn ('ftp ftp.openbsd.org') # Prog à lancer avec arguments
child.expect ('Name .*: ') # On attend de trouver ceci sur stdout
child.sendline ('anonymous') # On entre ceci via sdtin
print child.before   # On affiche le résultat de child
child.interact() # Pour récupérer la main de façon interactive
 


Voilà pour l'usage basique (cf documentation)

Le Bruteforce

Code PYTHON :

#!/bin/env python
# -*- coding: utf-8 -*-

#Bruteforce By Thxer

import pexpect, itertools

x = '0123456789'  #Les données qu'on va tester
for a, b, c, d, e, f in itertools.product(x, x, x, x, x, x):
    child = pexpect.spawn('/chemin/vers/Crackme')
    child.expect(' Serial :') # On attend Serial
    passwd = a + b + c + d + e + f
    child.sendline(passwd) # On entre la variable passwd
    try:
        i = child.expect(['try again !!!']) #Si il trouve 'try again' on continu
    except:
        print("= Succes =")            #Sinon on affiche le passwd  
        print("Passwd = "+passwd)
    # debug print passwd


 


Voilà, on peut imaginer plein de choses pour le coup etc ...
Simple, efficace. Big Grin
Thxer.com
Twitter Thxer_

Code BASH :
echo "JkZ Palx" | sed 'y/lPZaJxk/MG3@tEH/'




+1 (3) -1 (0) Répondre
24-11-2013, 17h28
Message : #2
Sh4dows Hors ligne
Tweetos
*



Messages : 293
Sujets : 5
Points: 49
Inscription : Dec 2012
RE: [Python] Bruteforcer avec API Pexpect
Merci du partage, je chercher un truc dans le genre il y a quelques semaines Smile
Faites ce que je dis et non ce que je fais !
+1 (0) -1 (0) Répondre
24-11-2013, 19h23
Message : #3
gruik Hors ligne
gouteur de savon
*



Messages : 757
Sujets : 44
Points: 482
Inscription : Oct 2012
RE: [Python] Bruteforcer avec API Pexpect
(24-11-2013, 17h23)thxer a écrit :
Code PYTHON :
x = '0123456789'  #Les données qu'on va tester
for a, b, c, d, e, f in itertools.product(x, x, x, x, x, x):
    (...)
    passwd = a + b + c + d + e + f

note que tu peux avantageusement remplacer ton itertools.product() par un itertools.combinations_with_replacement() :

Code PYTHON :
liste = [''.join(i) for i in itertools.combinations_with_replacement('0123456789',6)]
for passwd in liste:
    (...)
Avant donc que d'écrire, apprenez à penser.
Selon que notre idée est plus ou moins obscure, l'expression la suit, ou moins nette, ou plus pure.
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément.
(Nicolas Boileau, L'Art poétique)
+1 (2) -1 (0) Répondre
24-11-2013, 19h28
Message : #4
thxer Hors ligne
:(){ :|:& };:
*



Messages : 382
Sujets : 60
Points: 162
Inscription : Feb 2013
RE: [Python] Bruteforcer avec API Pexpect
Merci !
Thxer.com
Twitter Thxer_

Code BASH :
echo "JkZ Palx" | sed 'y/lPZaJxk/MG3@tEH/'




+1 (0) -1 (0) Répondre
25-11-2013, 13h31
Message : #5
thxer Hors ligne
:(){ :|:& };:
*



Messages : 382
Sujets : 60
Points: 162
Inscription : Feb 2013
RE: [Python] Bruteforcer avec API Pexpect
Comment savoir le nombre de combinaisons testées par seconde sans afficher la sortie ?
Thxer.com
Twitter Thxer_

Code BASH :
echo "JkZ Palx" | sed 'y/lPZaJxk/MG3@tEH/'




+1 (0) -1 (0) Répondre
25-11-2013, 16h31
Message : #6
0pc0deFR
Non-enregistré



 
RE: [Python] Bruteforcer avec API Pexpect
Une boucle avec une incrémentation et un affichage du nombre de password testé. Quelque chose qui peut te permettre d'avoir une moyenne du nombre de tests par seconde. Tu récupères la date/heure au démarrage du bruteforce et la date/heure à la fin du bruteforce, tu récupères la différence puis tu divises le nombre de password testé (que tu as récupéré via l'incrémentation dans ta boucle) par la différence de temps. Admettons 500 passwords en 15 secondes, ça te fait environ 33 passwords par seconde.
positive (2) negative (0) Répondre
25-11-2013, 19h05
Message : #7
thxer Hors ligne
:(){ :|:& };:
*



Messages : 382
Sujets : 60
Points: 162
Inscription : Feb 2013
RE: [Python] Bruteforcer avec API Pexpect
Pas bête merci !
Thxer.com
Twitter Thxer_

Code BASH :
echo "JkZ Palx" | sed 'y/lPZaJxk/MG3@tEH/'




+1 (0) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [Python]Situer mon niveau. InforMods 19 943 10-11-2016, 00h03
Dernier message: ZeR0-@bSoLu
  [PYTHON] un bot IRC basique darcosion 1 137 13-06-2016, 20h40
Dernier message: Yttrium
  [python] ANBU ::: TCP Session Hunter St0rn 2 222 25-02-2016, 18h45
Dernier message: otherflow
  [Python] Une autre façon de gérer les Virtualenv et Packages thxer 2 119 18-01-2016, 12h06
Dernier message: thxer
  [Python] rot script ark 9 427 08-03-2015, 00h37
Dernier message: ark
  [Python] Todo Manager ark 5 345 03-03-2015, 10h55
Dernier message: ark
  [python] Un décorateur pour inventorier les objets b0fh 1 156 04-12-2014, 17h50
Dernier message: thxer
  [python] UPnP Scanner St0rn 2 179 29-10-2014, 14h50
Dernier message: St0rn
  [python] Buffer Overflow : EBP et EIP St0rn 0 124 25-10-2014, 12h58
Dernier message: St0rn
  [Python] QuickHex thxer 9 419 15-08-2014, 20h26
Dernier message: sakiir

Atteindre :


Utilisateur(s) parcourant ce sujet : 3 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut