Ip4v Rainbow Table [chiuso]

1

un amico mi ha sfidato a scoprire l'ip dal nuovo server web che usa. C'è un tavolo arcobaleno o qualcosa di simile con tutti gli indirizzi possibili o sono 4 miliardi di numeri a molto per un normale pc di consumo?

C'è un altro modo per scoprire l'IP giusto? C'è qualche possibilità di scoprirlo se conosco il webhoster dove sta ospitando?

Chiunque si chieda l'hash md5 è "f39d1e9bce27c0f31f536a272e544a16"

Saluti Tim

    
posta Tim 03.08.2014 - 22:19
fonte

2 risposte

7

Non sarà veloce come una GPU, ma un semplice script di forza bruta come il seguente codice Python:

import hashlib
import time

def ipv4_md5_search(hash, range_start=0, range_end=256):
    for a in range(range_start, range_end):
        print a, time.ctime() # show progress every time new value of a is done.
        for b in range(256):
            for c in range(256):
                for d in range(256):
                    h = hashlib.md5('%s.%s.%s.%s' % (a,b,c,d)).hexdigest()
                    if h == hash:
                        print a,b,c,d
                        return True
    print "No match found"
ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16')

troverà la risposta in circa un'ora (caso peggiore) e sarà molto più veloce se la si parallelizza. Ad esempio, su una CPU quad-core iperthreaded, avvia solo 8 processi facendo:

ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16',0,32)
ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16',32,64)
ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16',64,96)
ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16',96,128)
ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16',128,160)
ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16',160,192)
ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16',192,224)
ipv4_md5_search('f39d1e9bce27c0f31f536a272e544a16',224,256)

e lo accelera di un fattore 8. Non invierò il tutto, ma dirò un indirizzo IPv4 in notazione decimale puntata corrisponde al tuo hash MD5 e la corrispondenza corretta inizia con 84.200 (nel formato x.x.x.x - nessuna nuova riga o spazio o altro). Mi ci sono voluti circa 15 minuti per trovare il tempo di creare script e avviare le attività.

    
risposta data 04.08.2014 - 00:20
fonte
1

Questo dovrebbe essere facile alla forza bruta. Questo strumento promette 500 milioni di hash al secondo su una GPU media di tipo consumer, quindi dovrebbe disporre di tutti gli indirizzi IPv4 2 ^ 32 in meno di 10 secondi.

Potrebbe essere più facile, però. Quando puoi raggiungere il webserver, puoi anche fare un semplice nslookup nella console (UNIX o Windows) per vedere l'indirizzo IP di un nome host. Tuttavia, tieni presente che potresti ottenere l'IP di un proxy inverso con questo metodo solo quando il tuo server web degli amici è dietro a uno.

    
risposta data 03.08.2014 - 22:40
fonte

Leggi altre domande sui tag