• STATISTIQUES
  • Il y a eu un total de 2 membres et 3488 visiteurs sur le site dans les dernières 24h pour un total de 3 490 personnes!


    Membres: 2 604
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] Microcontest
    Cryptographie: 7, Mathématiques: 8, Image Son Vidéo: 5, Intelligence artificielle: 3, Réseau: 2, Divers: 7, Phy...
    Challenges
    [EN] Bright Shadows
    JavaScript: 13, Exploit: 27, Crypto: 69, CrackIt: 52, Stegano: 67, Flash: 3, Programming: 16, Java-Applet: 10, Logic: 20...
    Challenges
    [EN] Big-Daddy
    Big-Daddy est site internet communautaire avec un effectif diversifié, y compris des artistes, des programmeur...
    Hacking
    [EN] wechall
    Pour les gens n'étant pas familiers avec les sites de challenges, un site de challenges est un site propos...
    Hacking
    [EN] This is legal
    Basic: 10, Realistic: 5, Programming: 1, Bonus: 11, SQL: 2, Encryption: 6, Application: 4, User Contributed: 3
    Challenges
    [EN] Rosecode
    Programming: 36, Math: 29, Probability: 5, Sequence: 7, Crypto: 4, Brainf**k: 13, TimeRace: 4, Hack: 9
    Challenges
    [EN] Astalavista
    JavaScript: 1, Exploit: 2, Crypto: 34, CrackIt: 15, Stegano: 8, Programming: 12, Logic: 36, Special: 6, Science: 4, Info...
    Challenges

  • 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] Modify Hex in a binary
04-08-2012, 16h15 (Modification du message : 08-12-2012, 16h37 par supersnail.)
Message : #1
fr0g Hors ligne
NTEuNDI2MzcsLTEuNzc4NDg4
*****



Messages : 348
Sujets : 22
Points: 56
Inscription : Aug 2011
[Python] Modify Hex in a binary
Source : http://orgasm.re/article-89--Python-Modi...inary.html

Code PYTHON :

#coding=utf-8
 
import sys
 
 
##
# Première ébauche de code
# afin de modifier la chaine hexadecimale correspondant a une instruction
# ASM, (code à modifier, afin de gérer les programmes plus gros où peuvent
# se trouver plusieurs itérations de la même séquence Hexa'.
#
# (Pour cette version, il est conseillé de donner une serie de opcodes plus large
# que celle de l'instruction à proprement parlé.)
##
 
 
 
 
##
# generation de opcodes à partir du String entré par l'utilisateur
##
def opcode_gen(x):
 
        buf = ""
        finaly_str = ""
        i = 0
       
        for lettre in x:
                buf += lettre
                if (i % 2) != 0:
                        buf = chr(int(buf,16))
                        finaly_str += buf                      
                        buf = ""                          
                i +=1
 
       
        return finaly_str
 
 
 
##
# Recherches modifications & copie du code
##
def make_crack(prog, initial, final):
 
        f_read = open(prog,"rb")
        data = f_read.read()
       
        if (opcode_gen(initial) in data):
                print "[*] Instruction found"
 
                data = data.replace(opcode_gen(initial),opcode_gen(final),1)
 
                name = raw_input(" Name of the new cracked binary : ")
                f = open(name,"wb")
                f.write(data)
                f.close()
                f_read.close()
 
                print "[*] Succes !!!"
        else:
                print "[!] Error : Instruction not found"
 
 
 
##
# Fonction main()
##
def main(prog):
        print "[*] Binary name : " + prog
        i = raw_input(" Find (exmpl : 7404) : ")
        f = raw_input(" Replace by : ")
        if (i != "" and f != ""):
                make_crack(prog, i, f)
        else:
                print "[!] Error : NULL ?"
 
##
# Header
##
def header():
        print """
---------------------------------
-App : PatchR
-Powered by HWC-CREW
-Butterfly Project
-Desc : Replace opcodes in a binary (to change instructions)
---------------------------------
        """

 
 
 
if (len(sys.argv) < 2):
        print "[!] Error : please specify a binary file"
        print "[*] Use : ./patchR [binary_name]"
 
else:
        header()
        main(sys.argv[1])
 

 
+1 (0) -1 (0) Répondre
08-11-2012, 14h01
Message : #2
sakiir Hors ligne
[sakiir@Ubuntu]:~$ ./ExploitMe ShellC0de
*



Messages : 411
Sujets : 51
Points: 34
Inscription : Sep 2012
RE: [Python] Modify Hex in a binary
Intéressant !!! je vais m'en servir pour continuer mon programme !! merci copain Big Grin
+1 (0) -1 (0) Répondre


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

Atteindre :


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