Editorial ilmu komputer
Open AccessOA2026
Memanfaatkan LLM untuk Fuzzing Berpanduan Dokumen pada Pustaka Python
VistaFuzz: Mengekstraksi spesifikasi parameter dari dokumentasi API untuk menghasilkan input yang memenuhi batasan dan menemukan bug di dunia nyata
Bin Duan; Tarek Mahmud; Meiru Che; Yan Yan; Naipeng Dong; Dan Dongseong Kim; Guowei Yangยท 2026ยท DOI 10.48550/arXiv.2608.11744
Masalah inti
Pustaka Python menjadi fondasi bagi deep learning, komputasi ilmiah, analisis data, dan computer vision, sehingga keandalannya berdampak langsung pada aplikasi hilir. Menguji API mereka menantang karena input yang valid harus memenuhi batasan per-parameter (misalnya tipe, rentang, format) sekaligus dependensi antar parameter (misalnya satu argumen harus diisi jika argumen lain tidak ada). Pendekatan fuzzing yang ada membiarkan batasan tersebut implisit dalam program yang dihasilkan atau bergantung pada aturan parsing khusus pustaka, sehingga membatasi keumuman dan efektivitasnya. Makalah ini memperkenalkan **VistaFuzz**, teknik fuzzing berpanduan dokumen yang memanfaatkan LLM open-source yang dilayani secara lokal untuk mengekstraksi spesifikasi parameter dari dokumen API dan menghasilkan input yang memenuhi batasan parameter sekaligus dependensi antar-parameter. Karya ini menyasar celah antara pembuatan program generik dan kebutuhan akan pemanggilan API yang valid secara semantik, dengan tujuan meningkatkan pembuatan input valid dan penemuan bug di berbagai pustaka Python.
Inovasi
Penulis mengevaluasi VistaFuzz pada **7.718 API di dua belas pustaka Python**. Mereka menemukan bahwa hubungan antar-parameter muncul pada **40,1%** API yang diuji. Ketika resolusi dependensi dinonaktifkan, tingkat pembuatan valid pada API tersebut turun dari **di atas 95%** menjadi **31,6%โ52,8%**, yang menunjukkan pentingnya menyelesaikan dependensi antar-parameter. VistaFuzz melaporkan **74 isu**, dengan **43 telah dikonfirmasi oleh pengembang** dan **29 telah diperbaiki**. Hasil ini menunjukkan bahwa fuzzing berpanduan dokumen yang sadar batasan dapat menghasilkan input yang sangat valid dan menemukan bug nyata pada pustaka yang banyak dipakai. Penurunan besar dalam pembuatan valid ketika dependensi diabaikan menegaskan bahwa batasan per-parameter saja tidak cukup untuk pengujian API yang efektif.
Pustaka Python menjadi fondasi bagi deep learning, komputasi ilmiah, analisis data, dan computer vision, sehingga keandalannya berdampak langsung pada aplikasi hilir. Menguji API mereka menantang karena input yang valid harus memenuhi batasan per-parameter (misalnya tipe, rentang, format) sekaligus dependensi antar parameter (misalnya satu argumen harus diisi jika argumen lain tidak ada). Pendekatan fuzzing yang ada membiarkan batasan tersebut implisit dalam program yang dihasilkan atau bergantung pada aturan parsing khusus pustaka, sehingga membatasi keumuman dan efektivitasnya. Makalah ini memperkenalkan **VistaFuzz**, teknik fuzzing berpanduan dokumen yang memanfaatkan LLM open-source yang dilayani secara lokal untuk mengekstraksi spesifikasi parameter dari dokumen API dan menghasilkan input yang memenuhi batasan parameter sekaligus dependensi antar-parameter. Karya ini menyasar celah antara pembuatan program generik dan kebutuhan akan pemanggilan API yang valid secara semantik, dengan tujuan meningkatkan pembuatan input valid dan penemuan bug di berbagai pustaka Python.
VistaFuzz beroperasi dalam tiga tahap utama: (1) **Parsing dokumentasi dan ekstraksi spesifikasi**, (2) **Pembuatan input yang sadar batasan**, dan (3) **Fuzzing dan pelaporan isu**. Diberikan sebuah API, VistaFuzz mengambil dokumentasinya dan meminta LLM open-source yang dilayani secara lokal untuk mengekstraksi spesifikasi terstruktur parameter, termasuk tipe, nilai yang diizinkan, dan dependensi antar-parameter. Spesifikasi ini kemudian dipakai untuk memandu pembuatan input yang valid. LLM dibatasi untuk menghasilkan input yang memenuhi batasan yang diekstraksi, dan sebuah dependency resolver memastikan hubungan antar-parameter dihormati. Input yang dihasilkan dieksekusi terhadap pustaka yang diuji, dan setiap kegagalan ditriase menjadi laporan isu. Pendekatan ini agnostik terhadap pustaka, tidak memerlukan aturan parsing khusus pustaka, dan berjalan sepenuhnya secara lokal untuk menghindari ketergantungan pada layanan eksternal.
Mengapa penting
Temuan ini menegaskan bahwa dependensi antar-parameter merata di API pustaka Python dan mengabaikannya sangat menurunkan validitas input. Penggunaan LLM open-source yang dilayani secara lokal oleh VistaFuzz menghindari ketergantungan pada layanan proprietary dan aturan parsing khusus pustaka, sehingga pendekatan ini dapat diterapkan secara luas. Tingkat pembuatan valid yang tinggi (di atas 95% dengan resolusi dependensi) menunjukkan bahwa ekstraksi spesifikasi berbasis LLM dapat secara efektif menangkap batasan kompleks dari dokumentasi. 74 isu yang dilaporkan, dengan 43 dikonfirmasi dan 29 diperbaiki, menjadi bukti dampak di dunia nyata. Namun, studi ini juga menyiratkan bahwa kualitas dokumentasi dan akurasi ekstraksi LLM sangat kritis; dokumen yang tidak lengkap atau ambigu dapat menyebabkan batasan terlewat. Pekerjaan selanjutnya dapat memperluas VistaFuzz ke bahasa dan ekosistem lain, serta mengeksplorasi penggabungan analisis statis dengan ekstraksi berbasis LLM untuk lebih meningkatkan cakupan dan presisi.
Siapa yang sebaiknya membaca
Praktisi dan peneliti ilmu komputer
Membuka konten memberโฆ