Pengambilalihan Subdomain Cepat $2000

Nov 28 2022
Bug Bounty — Dari nol hingga HERO
WHOAMI Nama saya Alexandar Thangavel AKA ValluvarSploit, pemburu dan pelatih bug penuh waktu. Saya suka pengintaian.

SIAPA SAYA

Nama saya Alexandar Thangavel AKA ValluvarSploit, pemburu dan pelatih bug penuh waktu. Saya suka pengintaian. Saya adalah pendiri dan CEO Keamanan ValluvarSploit. Di ValluvarSploit Security, kami menyediakan pelatihan Bug Bounty dalam sesi online one-to-one. Untuk informasi lebih lanjut, silakan periksa halaman LinkedIn kami.

OBJEKTIF

Hari ini, saya akan membagikan bagaimana saya menemukan kerentanan pengambilalihan subdomain dengan cepat dan mendapatkan hadiah empat digit pertama saya. Mari kita mulai.

LATAR BELAKANG

Ini dimulai pada 2 Oktober 2022 Minggu. Hari dimulai seperti biasa. Saya bangun jam 6 pagi, menyelesaikan pekerjaan rutin, memeriksa saldo data Seluler saya (tersisa 1,3 GB), mengaktifkan Hotspot Seluler saya, menghubungkan Laptop saya, dan melanjutkan berburu di program pribadi. Saya menghabiskan beberapa jam pada aplikasi target tetapi tidak menemukan apa pun, jadi istirahat sejenak. Saya biasa mengunjungi kembali program privat lama saya setidaknya sekali dalam enam bulan. Jadi, saya meninjau undangan pribadi saya, memilih program lama dan mulai melakukan pencacahan subdomain (sebut saja target kami sebagai redacted.com).

PENGAMBILAN SUBDOMAIN

Pengambilalihan subdomain terjadi ketika penyerang mengambil kendali atas subdomain dari suatu domain. Itu terjadi karena kesalahan / kesalahan konfigurasi DNS.

ENUMERASI SUBDOMAIN

Saya memulai pencacahan subdomain dengan alat Google Dorking, OWASP Amass , dan Gobuster .

# Passive Subdomain Enumeration using Google Dorking
site:*.redacted.com -www -www1 -blog
site:*.*.redacted.com -product

# Passive Subdomain Enumeration using OWASP Amass
amass enum -passive -d redacted.com -config config.ini -o amass_passive_subs.txt

# Subdomain Brute force using Gobuster
gobuster dns -d redacted.com -w wordlist.txt - show-cname - no-color -o gobuster_subs.txt

# Merging subdomains into one file
cat google_subs.txt amass_passive_subs.txt gobuster_subs.txt | anew subdomains.txt

# Enumerate CNAME records
./cname.sh -l subdomains.txt -o cnames.txt

# We can use HTTPX tool as well
httpx -l subdomains.txt -cname cnames.txt

# Probe for live HTTP/HTTPS servers
httpx -l subdomains.txt -p 80,443,8080,3000 -status-code -title -o servers_details.txt

Saya mulai menganalisis file cnames.txt dan menemukan satu subdomain yang mengarah ke dua record CNAME yang berbeda. Saya menjalankan perintah dig pada subdomain dan mendapatkan yang berikut,

dig next.redacted.com CNAME

      
                
DNS query for CNAME record

Saya mulai menganalisis file servers_details.txt untuk hal-hal menarik dan menemukan baris ini. Perhatikan kode status dan judul situs web.

https://next.redacted.com [500] [246] [Fastly error: unknown domain next.redacted.com]

Dalam kebanyakan kasus, kami tidak dapat mengambil alih layanan Fastly. Contoh kasus di bawah ini,

Namun jika domain tersebut belum diambil oleh pelanggan lain maka kita dapat mengklaim domain tersebut dan mengambil alih subdomain sepenuhnya.

MENGKONFIRMASI KERENTANAN

Saya pergi ke situs web resmi Fastly dan melakukan langkah-langkah di bawah ini,
1. Saya membuat akun di fastly.com menggunakan surat sementara.
2. Masuk ke Dasbor Fastly saya dan klik tombol "Buat Layanan Pengiriman".
3. Masukkan nama subdomain target (next.redacted.com) dan klik tombol Add.

Saya mengharapkan pesan kesalahan ("domain sudah diambil oleh pelanggan lain") muncul tetapi tidak ada pesan kesalahan. Saya dialihkan ke halaman berikutnya "Halaman host". Saya terkejut.

Domain yang diklaim di Fastly

LANGKAH PEMBUATAN POC

Setelah kerentanan dikonfirmasi, saya masuk ke server VPS saya dan membuat direktori bernama "hosting". Kemudian di dalam direktori "hosting" buat file HTML sederhana bernama "index.html".

mkdir hosting

cd hosting

nano index.html

<!DOCTYPE html>

<html>
    <head><title>STO PoC</title></head>
    <body>
        <h1>ValluvarSploit PoC</h1>
    </body>
</html>

python3 -m http.server 80

Konfigurasi VPS

Setelah beberapa detik, saya membuka jendela browser baru dan mengunjungi “http://next.redacted.com/index.html" halaman. File PoC saya berhasil dirender. Saya telah menulis laporan terperinci dan mengirimkannya ke HackerOne.

Bukti dari konsep

BELAJAR DENGAN MEMANTAU LOG SERVER

Saya menjalankan layanan Fastly saya selama 3 hari dan memantau log server untuk informasi sensitif. Sangat menyenangkan menonton metodologi pemburu bug lainnya.

Memantau log server untuk bersenang-senang

HADIAH

Laporan saya diprioritaskan sebagai kerentanan tingkat keparahan TINGGI dan dihargai $2000 dalam 10 hari.

Hadiah

TAKEAWAY KUNCI

1. Kunjungi kembali target lama Anda minimal 6 bulan sekali.
2. Pencacahan Subdomain adalah kuncinya. Hitung subdomain sebanyak mungkin.
3. Jangan menyerah.

Terima kasih telah meluangkan waktu untuk membaca tulisan saya.

Ikuti saya di:

Twitter

LinkedIn

Dari Infosec Writeups: Banyak yang muncul di Infosec setiap hari yang sulit untuk diikuti. Bergabunglah dengan buletin mingguan kami untuk mendapatkan semua tren Infosec terbaru dalam bentuk 5 artikel, 4 Thread, 3 video, 2 Repo dan alat GitHub, dan 1 peringatan pekerjaan GRATIS!