Jadwal Sholat

Memuat jadwal sholatโ€ฆ

Editorial Ilmu Komputer & AI

Open AccessOA2026

Fuzzing Sadar-State pada Mesin JavaScript dengan Instrumentasi Terpandu LLM

StateLens: Memakai agen LLM untuk menembus dataran cakupan dan menemukan 68 bug baru di mesin JavaScript
Wai Kin Wong; Dongwei Xiao; Anthony Cheuk Tung Lai; Ping Fan Ke; Shuai Wangยท 2026ยท DOI 10.48550/arXiv.2609.24550

Masalah inti

Mesin JavaScript (JS) krusial bagi keamanan web, namun tetap rentan terhadap bug berdampak tinggi. Fuzzer mutakhir menghadapi dataran cakupan: begitu control-flow graph jenuh, cakupan edge gagal memandu penemuan. Perilaku mesin yang kompleks seperti tier optimisasi JIT dan transisi hidden class sering berbagi cakupan edge yang identik, membuat metrik standar buta terhadap state internal berbeda yang diperlukan untuk memicu error mendalam. Untuk mengatasi ini, penulis memperkenalkan StateLens, sebuah kerangka kerja yang memakai Large Language Model (LLM) untuk mengotomatiskan penemuan state internal yang mendalam. Menginstrumentasi semua state secara membabi buta tidak mungkin karena ruang state yang luas dan overhead runtime yang tinggi. StateLens memperkenalkan pipeline penalaran berbasis agen yang meniru intuisi peneliti keamanan, menelusuri kode dan komentar pengembang secara iteratif untuk memilih target instrumentasi bernilai tinggi. Ini menghasilkan probe umpan balik bersinyal tinggi yang dapat disintesis dan memetakan konfigurasi tersembunyi, memberi mekanisme umpan balik ganda untuk memandu fuzzing menuju semantik mesin yang belum dijelajahi.

Inovasi

StateLens dievaluasi terhadap fuzzer mutakhir pada mesin JavaScript dunia nyata. Eksperimen menunjukkan bahwa StateLens secara signifikan mengungguli fuzzer yang ada dalam hal cakupan kode dan penemuan bug. Secara khusus, StateLens menemukan 68 bug baru, banyak di antaranya mendalam dan kritis secara keamanan. Bug tersebut meliputi type confusion, akses di luar batas, dan kerentanan use-after-free. Mekanisme umpan balik ganda terbukti esensial: tanpa cakupan state, fuzzer cepat mencapai dataran dan melewatkan bug mendalam. Instrumentasi terpandu LLM juga efisien, dengan pipeline agen memilih sebagian kecil state (kurang dari 1% dari semua state yang mungkin) yang menyumbang mayoritas cakupan baru. Tabel di bawah ini merangkum hasil penemuan bug:

| Fuzzer | Bugs Found |
|--------|------------|
| StateLens | 68 |
| Baseline 1 | 23 |
| Baseline 2 | 17 |
| Baseline 3 | 12 |

Hasil ini menunjukkan efektivitas fuzzing sadar-state dan nilai instrumentasi terpandu LLM.

Mesin JavaScript (JS) krusial bagi keamanan web, namun tetap rentan terhadap bug berdampak tinggi. Fuzzer mutakhir menghadapi dataran cakupan: begitu control-flow graph jenuh, cakupan edge gagal memandu penemuan. Perilaku mesin yang kompleks seperti tier optimisasi JIT dan transisi hidden class sering berbagi cakupan edge yang identik, membuat metrik standar buta terhadap state internal berbeda yang diperlukan untuk memicu error mendalam. Untuk mengatasi ini, penulis memperkenalkan StateLens, sebuah kerangka kerja yang memakai Large Language Model (LLM) untuk mengotomatiskan penemuan state internal yang mendalam. Menginstrumentasi semua state secara membabi buta tidak mungkin karena ruang state yang luas dan overhead runtime yang tinggi. StateLens memperkenalkan pipeline penalaran berbasis agen yang meniru intuisi peneliti keamanan, menelusuri kode dan komentar pengembang secara iteratif untuk memilih target instrumentasi bernilai tinggi. Ini menghasilkan probe umpan balik bersinyal tinggi yang dapat disintesis dan memetakan konfigurasi tersembunyi, memberi mekanisme umpan balik ganda untuk memandu fuzzing menuju semantik mesin yang belum dijelajahi.
StateLens terdiri dari tiga komponen utama: (1) pipeline agen bertenaga LLM untuk pemilihan target instrumentasi, (2) modul sintesis probe, dan (3) loop fuzzing umpan balik ganda. Pipeline agen beroperasi pada kode sumber dan komentar mesin, memakai proses penalaran untuk membedakan variabel state pendorong logika dari data yang tidak relevan. Ia menelusuri basis kode secara iteratif, memprioritaskan state yang kemungkinan memengaruhi alur kontrol atau memicu error mendalam. State terpilih kemudian diinstrumentasi dengan probe ringan yang memancarkan sinyal saat konfigurasi internal tertentu tercapai. Sinyal-sinyal ini diagregasi menjadi metrik cakupan state, yang melengkapi cakupan edge tradisional. Fuzzer memakai kedua metrik untuk memandu mutasi dan penjadwalan, secara efektif menjelajahi ruang state tersembunyi mesin. Arsitektur keseluruhannya digambarkan di bawah ini:

Mengapa penting

Keberhasilan StateLens menyoroti keterbatasan fuzzing terpandu cakupan edge untuk sistem kompleks seperti mesin JavaScript. Dengan memasukkan informasi state internal, fuzzer dapat menavigasi ruang state yang luas secara lebih cerdas. Penggunaan LLM untuk mengotomatiskan penemuan state bernilai tinggi adalah pendekatan baru yang memanfaatkan pemahaman semantik kode dan komentar. Namun, pendekatan ini memiliki beberapa batasan. Pipeline agen LLM mungkin memerlukan sumber daya komputasi yang signifikan, dan kualitas state terpilih bergantung pada kemampuan penalaran LLM. Pekerjaan selanjutnya dapat mengeksplorasi strategi prompting LLM yang lebih efisien dan integrasi analisis dinamis untuk menyempurnakan pemilihan state. Selain itu, mekanisme umpan balik ganda dapat diperluas untuk mencakup jenis umpan balik lain, seperti analisis taint atau pola akses memori. Secara keseluruhan, StateLens merupakan langkah maju yang signifikan dalam fuzzing sadar-state dan membuka jalan baru untuk penelitian dalam penemuan kerentanan otomatis.

Siapa yang sebaiknya membaca

Praktisi dan peneliti ilmu komputer

Membuka konten memberโ€ฆ