FlawOpen

flawopen.com/Incidents/openai-community-forum-heif-sso-chain-september-2026

● OpenAI / Discourse / libheif · CVE-2026-32882 · 2026-07-25 · CVSS 7.1 · Tinggi
Riset Keamanan · FlawOpen

Rantai dari Forum OpenAI ke SSO: CVE-2026-32882

Hacktron melaporkan rantai serangan yang menggabungkan pembacaan di luar batas pada bidang alfa libheif melalui pemrosesan gambar Discourse dengan kelemahan SSO OpenAI yang terpisah. CVE-2026-32882 telah diperbaiki di libheif 1.22.0; para peneliti mengatakan mereka menghentikan pengujian setelah mengirim pull request yang tidak berbahaya untuk membuktikan akses.[4], [1], [2]

💡 Penjelasan Sederhana (ELI5)

Bayangkan dua lembar transparan: satu memiliki baris kotak warna yang lebar, sedangkan satunya memiliki baris nilai transparansi yang lebih sempit. Dekoder memakai panjang baris lembar warna untuk mencari nilai transparansi berikutnya. Setiap baris, pembacaan bergerak semakin jauh melewati lembar yang lebih kecil. Perbaikannya memakai panjang baris milik lembar transparansi itu sendiri.[1]

Konsep Kunci & Istilah

HEIF / HEIC
Format wadah gambar. Berkas HEIF dapat memuat gambar turunan, overlay, serta bidang warna dan alfa yang terpisah; dekoder harus menjaga batas masing-masing bidang.[1]
libheif
Pustaka native untuk mendekode dan mengodekan gambar HEIF dan AVIF. Pemberitahuan Discourse mengaitkan jalur pemrosesan unggahan gambar dengan CVE-2026-32882.[1], [2]
Stride
Jumlah byte antara awal satu baris bidang gambar dan baris berikutnya. Kedalaman bit yang berbeda dapat membuat bidang warna dan alfa memiliki stride berbeda.[1]
CWE-125
Pembacaan di luar batas: perangkat lunak membaca melewati wilayah memori yang dialokasikan untuk buffer. Di sini, alamat bidang alfa dimajukan dengan stride bidang warna.[1]
Batas kepercayaan SSO
Hubungan identitas antara layanan masuk dan aplikasi. Hacktron melaporkan bahwa hubungan SSO forum OpenAI memperluas dampak kompromi forum yang terpisah; laporan publik tidak mengungkap cacat implementasi atau patch SSO yang tepat.[4]

Pemetaan kerangka kerja

  • Referensi CWE untuk kelemahan yang dijelaskan dalam panduan ini: CWE-125

Kronologi Insiden

2026-05-19

Pemelihara libheif menerbitkan GHSA-hg7q-rjr2-8x46, menetapkan CVE-2026-32882, dan mencantumkan libheif 1.22.0 sebagai versi yang telah diperbaiki.[1]

2026-07-25

Hacktron mengatakan para penelitinya mencapai forum OpenAI melalui jalur gambar Discourse, melaporkan masalah SSO di sisi OpenAI, dan menghentikan pengujian setelah pull request tidak berbahaya untuk membuktikan akses.[4]

2026-07-28

Discourse menerbitkan GHSA-vhm9-85gw-x335, mencantumkan rilis yang telah diperbaiki, dan menyarankan pembangunan ulang instalasi yang dikelola sendiri.[2]

2026-09-13

Hacktron menerbitkan laporan pengungkapan terkoordinasi. Laporan menyebut OpenAI mengonfirmasi perbaikan SSO dan menjelaskan bahwa hadiah mengakui temuan di sisi OpenAI, bukan pengujian pada forum yang dihosting Discourse.[4]

Alur Serangan Langkah demi Langkah

Langkah 1

Gambar yang diunggah mencapai dekoder native

Hacktron melaporkan bahwa jalur gambar Discourse mengirim berkas HEIF/HEIC melalui ImageMagick ke libheif karena jalur pemeriksaan gambar biasa tidak menangani format tersebut.[4], [2]

Langkah 2

Tata letak bidang warna digunakan untuk alfa

Di HeifPixelImage::overlay(), kode rentan memajukan alpha_p sebesar y * in_stride meskipun alpha_stride telah diperoleh untuk bidang tersebut. Jika kedalaman bit alfa dan warna berbeda, ukuran barisnya berbeda dan pembacaan dapat melewati alokasi alfa. Pemberitahuan upstream mengklasifikasikannya sebagai CWE-125.[1]

Langkah 3

Dampak lanjutan bergantung pada jalur host

Pemberitahuan libheif menjelaskan crash atau kemungkinan pengungkapan melalui piksel hasil dekode. Pemberitahuan Discourse yang terpisah menjelaskan eksekusi kode jarak jauh melalui jalur unggahan dan memberi nilai CVSS 8.8 untuk masalah Discourse. Jangan menyamakan dampak dan nilai tingkat produk itu dengan CVSS 7.1 serta pembacaan di luar batas pada CVE itu sendiri.[1], [2]

Langkah 4

Kelemahan SSO terpisah memperluas rantai yang dilaporkan

Hacktron mengatakan kompromi forum memungkinkan akses ke akun ChatGPT/Codex karyawan melalui masalah SSO OpenAI, dan pull request yang tidak berbahaya menunjukkan akses ke repositori terhubung. Bukti publik tidak mengungkap cacat kode SSO, izin akun yang tepat, atau perbaikan SSO yang dapat digunakan ulang.[4]

Langkah 5

Batasi bukti dan klaim

Hacktron mengatakan pengujian dihentikan setelah pull request untuk membuktikan akses. Laporan tersebut menggambarkan pengungkapan terkendali oleh peneliti, bukan insiden berbahaya atau bukti bahwa data pelanggan diambil. Para peneliti juga menyebut hadiah OpenAI mencakup temuan SSO OpenAI dan tidak mencakup pengujian forum yang dihosting Discourse.[4]

Kode Sumber: Rentan vs Aman

Ini adalah cuplikan terfokus, bukan dekoder mandiri atau salinan kata demi kata dari seluruh patch. Pemberitahuan pemelihara menunjukkan ekspresi rentan dan menyebut masalah telah diperbaiki di libheif 1.22.0. Setiap bidang harus diindeks dengan stride miliknya sendiri; penggunaan ulang stride warna membuat pembacaan alfa melompat terlalu jauh saat kedalaman bit bidang berbeda. Pada aplikasi host, perbarui juga dekoder dan isolasi konversi unggahan yang tidak tepercaya.[1], [3]

IMPLEMENTASI RENTAN
// Cuplikan sederhana dari pola akses yang didokumentasikan.
// alpha_stride tersedia, tetapi stride bidang warna yang digunakan.
uint8_t alpha_value = alpha_p[in_x0 + y * in_stride + x];
PERBAIKAN AMAN & KUAT
// Gunakan tata letak baris milik bidang alfa.
// Perbaikan upstream tersedia di libheif 1.22.0.
uint8_t alpha_value = alpha_p[in_x0 + y * alpha_stride + x];

Daftar Periksa Penguatan Sistem Rekayasa

Sumber