HeadlinesBriefing favicon HeadlinesBriefing.com

SourceHut XSS di log build

Hacker News •
×

Selamat datang di writeup kerentanan berdampak besar pertamaku! Saya suka cerita bagus, jadi izinkan saya menjelaskan beberapa latar belakang terlebih dahulu. Baru-baru ini saya punya ide 'hebat' untuk menyiapkan instance sr.ht yang akan membayar orang untuk menghosting proyek mereka. Langkah pertama adalah mengkloning subset minimal dari repo sr.ht, dan mulai meng-hack-nya.

Source Hut terstruktur dalam beberapa layanan mikro, yang utama adalah meta.sr.ht dan git.sr.ht atau hub.sr.ht. Dan tentu saja builds.sr.ht, CI-nya. Saya mencoba melihat sumber halaman log build, karena terus menggulir ke tempat yang tidak saya inginkan, yang sedikit mengganggu saya. Saat itulah saya menemukan ini: /* ... */ .ansi38-150150150 { color: #969696; } /* ... */ Saya memutuskan untuk melihat lebih dekat bagaimana hal itu dilakukan, dan mungkin memperbaikinya.

Saya melihat logika yang mengubah kode escape ANSI menjadi HTML, dan saya mengajukan issue untuk itu. Tidak ada aktivitas di repo selama lebih dari setahun pada saat itu. Ini dengan cepat menghasilkan pengiriman PR yang memperbaiki masalah khusus ini. Mengingat latar belakang Capture The Flag saya, saya mulai melihat ansi2html lebih jauh, untuk mencari bug lain. Karena kodenya belum terstruktur dengan baik, saya bisa membuat string input berbahaya setelah membaca lembar contekan XSS yang bagus ini.

Yang pertama layak mendapat penjelasan. Entah kenapa, tetapi seperti yang bisa Anda periksa, ia mengurai ke pohon DOM yang sama dengan: <a href="https://exa...