ABSTRAK Muhhamad Syauqi Jannatan
Terbatas  Esha Mustika Dewi
» Gedung UPT Perpustakaan
Terbatas  Esha Mustika Dewi
» Gedung UPT Perpustakaan
Keamanan aplikasi web masih menjadi tantangan utama dalam pengembangan
perangkat lunak, salah satunya adalah kerentanan Cross-Site Scripting (XSS).
Metode deteksi konvensional berbasis aturan, seperti Semgrep—yaitu alat analisis
kode statis yang bekerja dengan mendeteksi pola kerentanan berdasarkan rule set
tertentu—dan metode berbasis machine learning, memiliki sejumlah keterbatasan
seperti tingginya tingkat false positives dan ketergantungan pada dataset yang besar
dan representatif. Large Language Model (LLM) baru-baru ini dinilai mampu
mengatasi keterbatasan tersebut dengan memahami struktur dan konteks kode
secara lebih mendalam tanpa bergantung pada aturan eksplisit. Penelitian ini
bertujuan mengembangkan kakas bantu analisis kode statis berbasis LLM,
khususnya GPT-4, untuk meningkatkan akurasi deteksi kerentanan XSS. Metode
yang digunakan mencakup pendekatan zero-shot learning melalui prompt
engineering dengan menggunakan Context Manager Pattern dan Template Pattern.
Kakas dikembangkan dengan arsitektur berbasis web menggunakan Supabase,
GitHub API, dan OpenAI API untuk integrasi penuh dengan alur kerja
pengembangan perangkat lunak. Hasil evaluasi dengan dataset 250 file kode
menunjukkan kakas berbasis LLM mencapai akurasi 95,6%, precision 99,1%,
recall 92,1%, dan F1-score 95,5%, jauh lebih baik dibandingkan Semgrep dengan
akurasi 72,8%, precision 72,0%, recall 75,4%, dan F1-score 73,6%. Berdasarkan
pengujian fungsional, kakas dapat bekerja secara konsisten dan memenuhi seluruh
kebutuhan fungsional yang ditentukan. Sebagai pengembangan lanjutan,
disarankan untuk mengintegrasikan kakas dalam bentuk GitHub App agar lebih
praktis digunakan serta mengombinasikan metode LLM dengan analisis statis
konvensional untuk meningkatkan deteksi yang lebih akurat.
Perpustakaan Digital ITB