OPTIMASI METODE OTOMATISASI PENGHILANGAN KERENTANAN TERHADAP SERANGAN XSS PADA APLIKASI WEB
DOI:
https://doi.org/10.47775/ictech.v15i2.121Abstrak
Cross site scripting (XSS) adalah salah satu bentuk serangan pada aplikasi web. XSS adalah bentuk serangan injeksi. Serangan injeksi dilakukan dengan menyisipkan kode javascript melalui fasilitas interaksi yang diberikan oleh aplikasi web kepada pengguna. Terdapat tiga jenis XSS: Reflected XSS, Stored XSS dan DOM-Based XSS. OWASP, CWE/SANS dan Accunetix menempatkan serangan XSS pada peringkat 5 besar untuk serangan yang sering dilakukan oleh peretas dan berakibat fatal. Berbagai tema penelitian telah diusulkan untuk mengeliminasi serangan ini. Salah satu paper tersebut mengusulkan cara untuk mengotomatisasi penghilangan kode sumber dengan cara mengoreksi kode sumber dan mendeklarasikan OWASP ESAPI untuk mengencoding semua deklarasi yang berkaitan dengan inputan pengguna. Penelitian tersebut diuusulkan untuk digunakan pada bahasa pemrograman Java namun dapat pula diterapkan pada bahasa pemrograman lain. Penelitian ini mengusulkan metode untuk mengoptimal metode yang diusulkan sebelumnya jika diterapkan pada bahasa pemrograman PHP. Jika penelitian sebelumnya mengusulkan untuk mengoreksi semua baris yang mengandung deklarasi inputan pengguna maka penelitian ini mengoptimalkannya dengan hanya menambahkan beberapa baris kode program dibagian header. Penelitian ini juga mengusulkan untuk tidak lagi menggunakan OWASP ESAPI namun menggunakan fungsi native PHP. Hasil penelitian ini menunjukkan bahwa dibandingkan dengan metode sebelumnya didapatkan peningkatan berupa jumlah baris kode yang diubah atau ditambahkan pada kode sumber aplikasi menjadi lebih sedikit namun dengan hasil yang samaReferensi
I. Hydara, A. B. M. Sultan, H. Zulzalil, and N. Admodisastro, (2014), “Current state of research on cross-site scripting (XSS) – A systematic literature review,†Inf. Softw. Technol.
L. K. Shar and H. B. K. Tan, (2011), “Automated removal of cross site scripting vulnerabilities in web applications,†Inf. Softw. Technol., vol. 54, no. 5, pp. 467–478.
OWASP, (2014, September 2014) “OWASP Top Ten project 2013,†2013. [Online]. Available:https://www.owasp.org/index.php/To p_10_2013-Top_10.
P. Bathia, B. R. Beerelli, and M.-A. Laverdière, (2011), “Assisting Programmers Resolving Vulnerabilities in Java Web Applications,†CCIST 2011 Commun. Comput. Inf. Sci., vol. 133, no. 1, pp. 268–279.
R. Johari and P. Sharma, (2012), “A Survey on Web Application Vulnerabilities (SQLIA, XSS) Exploitation and Security Engine for SQL Injection,†2012 Int. Conf. Commun. Syst. Netw. Technol., pp. 453–458.
M. Van Gundy and H. Chen, (2012), “Noncespaces: Using randomization to defeat cross-site scripting attacks,†Comput. Secur., vol. 31, no. 4, pp. 612–628, Jun.
H. Shahriar and M. Zulkernine, (2009), “MUTEC : Mutation-based Testing of Cross Site Scripting School of Computing,†pp. 47–53.
Google, “Cross-site scripting,†(2014, Oktober 2014), https://www.google.com/about/appse curity/learning/xss/.
Mozilla, “DOM,†(2014, Oktober 2014). https://developer.mozilla.org/en-US/d ocs/Glossary/DOM.
w3schools, “JavaScript HTML DOM,†(2014), http://www.w3schools.com/js/js_htm ldom.asp.
CWE/SANS, “Top 25 Most Dangerous Programming Errors 2011,†(2011), http://cwe.mitre.org/top25/.
Acunetix, “Cross-site Scripting (XSS) Attack.†(2014, November 2014). http://www.acunetix.com/websitesec urity/cross-site-scripting/.
R. Barnett, (2011), “XSS Street-Fight : The Only Rule Is There Are No
Rulesâ€.
L. K. Shar and H. B. K. Tan, (2011), “Defending against cross-site scripting attacks,†Computer (Long. Beach. Calif)., vol. 3, pp. 55–62.
S. Esser, (2008), “Lesser Known Security Problems in PHP Applications,†Zend Conf.
W3Tech, (2015), “World Wide Web Technology Surveys,†http://w3techs.com/.
php.net, (2013). “PHP: htmlspecialchars,†ttps://secure.php.net/manual/en/func tion.htmlspecialchars.php.
php.net, “PHP: foreach,â€, (2013), https://secure.php.net/manual/en/cont rol-structures.foreach.php.