Praxistest

Erstelle beliebige Hashwerte von Passwörter

Hashgenerator

und versuche diese mithilfe von bereitgestellten Tools wie z.B.:

Crackstation

zu knacken.

Have I beeen pwned?

Have I Been Pwned? (’;–have i been pwned?, „pwned“ steht für „owned“, wird jedoch wie „poned“ ausgesprochen, übersetzt in etwa „Hat's mich erwischt?“) ist eine Website, auf der Nutzer überprüfen können, ob ihre persönlichen Daten durch Datenlecks kompromittiert wurden. Der Dienst greift auf eine Vielzahl von Datenbankdumps und Pastebins zu und ermöglicht es dem Nutzer so Milliarden von geleakten Konten auf die eigenen Informationen zu durchsuchen. Über eine Anmeldung können Nutzer sich auch benachrichtigen lassen, wenn ihre Daten in zukünftigen Dumps auftauchen. Die Website gilt weithin als wertvolle Ressource für Internetnutzer, um ihre eigene Sicherheit und Privatsphäre zu überprüfen.

Have I been password pwned

Python - Passwort Brute Force Attack

5-stelliges Passwort

import hashlib
import datetime
import time
 
 
print("Given Hash: ", hashlib.sha1("hallo".encode('utf-8')).hexdigest())
passhash = hashlib.sha1("hallo".encode('utf-8')).hexdigest()
 
 
#Passwort 5 Zeichen lang
alphabet_lowercase=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]
alphabet_uppercase=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"]
digits=["0","1","2","3","4","5","6","7","8","9"]
 
alphabet=alphabet_lowercase+alphabet_uppercase+digits
 
finished = False
 
print("\n#### Start Bruteforce Attack #### \n")
 
ts_start=time.time()
print(datetime.datetime.now())
 
while finished == False:
    for char1 in alphabet:
        for char2 in alphabet:
            for char3 in alphabet:
                for char4 in alphabet:
                    for char5 in alphabet:
                        # Kombination erstellen und ausgeben
                        password = char1+char2+char3+char4+char5
                        #print(password)
                        hash=hashlib.sha1(password.encode('utf-8')).hexdigest()
                        if hash == passhash:
                            print("\nHash found:", hash)
                            print("Password:", password,"\n")
 
                            ts_end=time.time()
                            print(datetime.datetime.now())
 
                            finished = True
                            break
                    if finished == True:
                        break
                if finished == True:
                    break
            if finished == True:
                break
        if finished == True:
            break
    if finished == True:
        break
 
print("\nTime for Hacking:" , ts_end - ts_start, "s")
 
 

Python - Attacke mithilfe von Listen von häufig vorkommenden / gestohlenen Passwörtern

Die häufigsten 10 Millionen Passwörter Passwortliste

Passwortliste von Crackstation Cracking Dictionary

import hashlib
import datetime
import time
 
wahl = int(input("Wollen Sie einen Hash-wert eines Passworts (1) oder das Passwort (2) selbst eingeben: "))
wort=""
passhash=""
 
if wahl == 2:
    wort = input("Geben Sie das gewünschte Passwort ein, nachdem in der Passwortliste gesucht werden soll: ")
    print("Given Hash: ", hashlib.sha1(wort.encode('utf-8')).hexdigest())
    passhash = hashlib.sha1(wort.encode('utf-8')).hexdigest()
else:
    passhash = input("Geben Sie einen Hashwert (SHA-1, z.B.: von http://www.sha1-online.com generiert) ein: ")
 
 
foundpassword = False
 
ts_start = time.time()
 
print("\n...Suche in Passwortliste 1....\n")
 
file1 = open("passwords.txt", "r")
for line in file1:
    line=line[:-1]
    #print(line)
    hash = hashlib.sha1(line.encode('utf-8')).hexdigest()
    if passhash == hash:
        foundpassword = True
        break
file1.close()
 
if foundpassword == False:
    print("\n...Suche in Passwortliste 2....\n")
    file2 = open("passwords2.txt", "r", encoding="utf-8", errors="ignore")
    for line in file2:
        line=line[:-1]
        #print(line)
        hash = hashlib.sha1(line.encode('utf-8')).hexdigest()
        if passhash == hash:
            foundpassword = True
            break
    file2.close()
 
 
if foundpassword == False:
    print("\nKeine Übereinstimmung!")
else: 
    print("Passwort gefunden:", line)
    print("Hashwert:", hash)
 
ts_end = time.time()
print("Zeitdifferenz: ", ts_end - ts_start)