digilib@itb.ac.id +62 812 2508 8800



BAB 1 Ranindya Paramitha
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan

BAB 2 Ranindya Paramitha
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan

BAB 3 Ranindya Paramitha
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan

BAB 4 Ranindya Paramitha
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan

BAB 5 Ranindya Paramitha
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan

BAB 6 Ranindya Paramitha
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan


Statistik menunjukkan bahwa satu dari tiga aplikasi web dinilai memiliki tingkat keamanan yang sangat buruk. Salah satu cara untuk meningkatkan keamanan aplikasi web adalah dengan melakukan analisis kode statis. Analisis kode statis dapat dilakukan secara manual, maupun menggunakan bantuan kakas. Berbagai kakas analisis kode statis telah dikembangkan untuk mendeteksi security vulnerability dari aplikasi web. Namun, saat ini belum ada kakas analisis kode statis yang dikembangkan untuk aplikasi berbasis Laravel. Tugas akhir ini bertujuan untuk membangun kakas analisis kode statis untuk aplikasi berbasis Laravel dengan pendekatan taint analysis. Aplikasi Laravel memiliki file (route) yang mencatat file apa saja yang dapat diakses dari pengguna. Dari file ini, didapatkan daftar file yang kemudian masing-masing dibangun Abstract Syntax Tree (AST) nya beserta dictionary (class, functions, variables). Keduanya digunakan dalam data flow (taint) analysis. Analisis ini akan mendeteksi security vulnerability. Pada pendekatan ini, control flow graph tidak perlu direpresentasikan secara eksplisit, melainkan menjadi perhatian ketika menjalankan taint analysis. Hasil tugas akhir ini adalah sebuah kakas pendeteksi security vulnerability pada aplikasi berbasis Laravel. Penggunaan route membuat proses analisis menjadi lebih efisien kerentanan input injections. Kakas yang telah dibangun telah diujikan pada 6 proyek open source Laravel yang telah diketahui kerentanannya pada CVE dan menemukan total 13 security vulnerability. Sebuah False Negative yang ditemukan terjadi karena fungsi sanitasi PHP yang tidak efektif dalam melakukan character escaping. Perlu dilakukan studi lebih lanjut untuk penggunaan kakas pada aplikasi berbahasa PHP baik menggunakan development framework atau tidak. Kakas juga dapat dikembangkan guna melakukan pengujian lebih lanjut untuk sejumlah tipe security vulnerability lainnya.