journal article·2025-01-19Open access

An MLLM-Assisted Web Crawler Approach for Web Application Fuzzing

Wantong Yang, Enze Wang, Zhiwen Gui, Yuan Zhou, Baosheng Wang, Wei Xie

Applied Sciences· Volume 15· Issue 2

Abstract

Web application fuzzing faces significant challenges in achieving comprehensive test interface (attack surface) coverage, primarily due to the complexity of user interactions and dynamic website architectures. While web crawlers can automatically access and extract critical website information—including form fields and request parameters—which are essential for generating effective fuzzing test cases, current crawler technologies exhibit three primary limitations: (i) insufficient capabilities in analyzing page relationships and determining page states; (ii) lack of functionality-aware exploration capabilities, resulting in generated inputs with poor contextual relevance; (iii) generation of unstructured operation sequences that fail to execute effectively due to their incompatibility with state-based testing logic. To address these challenges, we propose CrawlMLLM, a framework using multi-modal large language models to simulate human web browsing. It includes three core components: page state mining, functionality analysis, and automatic operation generation. Evaluations show 163% code coverage improvements over SOTA work. When integrated with vulnerability audit tools, CrawlMLLM found 44 vulnerabilities in three vulnerable web applications versus 34 by the baseline. In six real-world applications, CrawlMLLM detected 20 vulnerabilities while the next best method found six.
Source: crossref · Quality: baseline

Research context

OpenAlex topics: Web Application Security Vulnerabilities · Web Data Mining and Analysis · Software Testing and Debugging Techniques

SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.

Affiliations

College of Computer Science and Technology, National University of Defense Technology, Changsha 410073, China

References (46)

Show source-provided references
1. Eriksson, B., Pellegrino, G., and Sabelfeld, A. (2021, January 24–27). Black Widow: Blackbox Data-driven Web Scanning. Proceedings of the 2021 IEEE Symposium on Security and Privacy (SP), San Francisco, CA, USA.10.1109/SP40001.2021.00022 ↗
2. Mesbah, A., Bozdag, E., and van Deursen, A. (2008, January 14–18). Crawling AJAX by Inferring User Interface State Changes. Proceedings of the 2008 Eighth International Conference on Web Engineering, Yorktown Heights, NY, USA.10.1109/ICWE.2008.24 ↗
3. Pellegrino, G., Tschürtz, C., Bodden, E., and Rossow, C. (2015, January 2–4). jÄk: Using Dynamic Analysis to Crawl and Test Modern Web Applications. Proceedings of the 18th International Symposium on Research in Attacks, Intrusions, and Defenses (RAID 2015), Kyoto, Japan.10.1007/978-3-319-26362-5_14 ↗
4. Trickel, E., Pagani, F., Zhu, C., Dresel, L., Vigna, G., Kruegel, C., Wang, R., Bao, T., Shoshitaishvili, Y., and Doupé, A. (2023, January 21–25). Toss a Fault to Your Witcher: Applying Grey-box Coverage-Guided Mutational Fuzzing to Detect SQL and Command Injection Vulnerabilities. Proceedings of the 2023 IEEE Symposium on Security and Privacy (SP), San Francisco, CA, USA.10.1109/SP46215.2023.10179317 ↗
5. Felmetsger, V., Cavedon, L., Kruegel, C., and Vigna, G. (2010, January 11–13). Toward automated detection of logic vulnerabilities in web applications. Proceedings of the 19th USENIX Security Symposium, Washington, DC, USA.
6. Huang, Y.W., Yu, F., Hang, C., Tsai, C.H., Lee, D.T., and Kuo, S.Y. (2004, January 17–20). Securing web application code by static analysis and runtime protection. Proceedings of the 13th International Conference on World Wide Web, New York, NY, USA.10.1145/988672.988679 ↗
7. Static analysis for detecting taint-style vulnerabilities in web applications10.3233/JCS-2009-0385 ↗
8. Olsson, E., Eriksson, B., Doupé, A., and Sabelfeld, A. (2024, January 14–16). Spider-Scents: Grey-box Database-aware Web Scanning for Stored XSS. Proceedings of the 33rd USENIX Security Symposium (USENIX Security 24), Philadelphia, PA, USA.
9. Hassanshahi, B., Lee, H., and Krishnan, P. (2022, January 15–18). Gelato: Feedback-driven and Guided Security Analysis of Client-side Web Applications. Proceedings of the 2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), Honolulu, HI, USA.10.1109/SANER53432.2022.00079 ↗
10. Database Traffic Interception for Graybox Detection of Stored and Context-sensitive XSS10.1145/3399668 ↗
11. The Art, Science, and Engineering of Fuzzing: A Survey10.1109/TSE.2019.2946563 ↗
12. Stafeev, A., and Pellegrino, G. (2024, January 14–16). SoK: State of the Krawlers–Evaluating the Effectiveness of Crawling Algorithms for Web Security Measurements. Proceedings of the 33rd USENIX Security Symposium (USENIX Security 24), Philadelphia, PA, USA.
13. Multimodal Foundation Models: From Specialists to General-Purpose Assistants10.1561/0600000110 ↗
14. BoB-WebFuzzing (2024, October 23). Request-Crawler. Available online: https://github.com/BoB-WebFuzzing/Request-Crawler.
15. McGee, Z., and Acharya, S. (2019, January 18–21). Security Analysis of OpenEMR. Proceedings of the 2019 IEEE International Conference on Bioinformatics and Biomedicine (BIBM), San Diego, CA, USA.10.1109/BIBM47256.2019.8983178 ↗
16. Testing the security vulnerabilities of OpenEMR 4.1.1: A case study
17. Doupé, A., Cavedon, L., Kruegel, C., and Vigna, G. (2012, January 8–10). Enemy of the State: A State-Aware Black-Box Web Vulnerability Scanner. Proceedings of the 21st USENIX Security Symposium (USENIX Security 12), Bellevue, WA, USA.
18. Duchene, F., Rawat, S., Richier, J.L., and Groz, R. (2014, January 18–20). KameleonFuzz: Evolutionary fuzzing for black-box XSS detection. Proceedings of the 4th ACM Conference on Data and Application Security and Privacy (CODASPY ’14), Darmstadt, Germany.10.1145/2557547.2557550 ↗
19. Bau, J., Bursztein, E., Gupta, D., and Mitchell, J. (2010, January 16–19). State of the Art: Automated Black-Box Web Application Vulnerability Testing. Proceedings of the 2010 IEEE Symposium on Security and Privacy, Oakland, CA, USA.10.1109/SP.2010.27 ↗
20. Gupta, S., and Gupta, B.B. (2015, January 18–21). PHP-sensor: A prototype method to discover workflow violation and XSS vulnerabilities in PHP web applications. Proceedings of the 12th ACM International Conference on Computing Frontiers (CF ’15), Ischia, Italy.10.1145/2742854.2745719 ↗
21. Pellegrino, G., and Balzarotti, D. (2014, January 23–26). Toward Black-Box Detection of Logic Flaws in Web Applications. Proceedings of the Network and Distributed System Security Symposium, San Diego, CA, USA.10.14722/ndss.2014.23021 ↗
22. DetLogic: A black-box approach for detecting logic vulnerabilities in web applications10.1016/j.jnca.2018.01.008 ↗
23. Li, X., and Xue, Y. (2011, January 5–9). BLOCK: A black-box approach for detection of state violation attacks towards web applications. Proceedings of the 27th Annual Computer Security Applications Conference (ACSAC ’11), Orlando, FL, USA.10.1145/2076732.2076767 ↗
24. Güler, E., Schumilo, S., Schloegel, M., Bars, N., Görz, P., Xu, X., Kaygusuz, C., and Holz, T. (2024, January 14–16). Atropos: Effective Fuzzing of Web Applications for Server-Side Vulnerabilities. Proceedings of the 33rd USENIX Security Symposium (USENIX Security 24), Philadelphia, PA, USA.
25. digininja (2024, October 23). Damn Vulnerable Web Application (DVWA). Available online: https://github.com/digininja/DVWA.
26. s4n7h0 (2024, October 23). Xtreme Vulnerable Web Application (XVWA). Available online: https://github.com/s4n7h0/xvwa.
27. raesene (2024, October 23). bWAPP (Buggy Web Application). Available online: https://github.com/raesene/bWAPP.
28. StaResGRU-CNN with CMedLMs: A stacked residual GRU-CNN with pre-trained biomedical language models for predictive intelligence10.1016/j.asoc.2021.107975 ↗
29. Hong, G., Yang, Z., Yang, S., Zhang, L., Nan, Y., Zhang, Z., Yang, M., Zhang, Y., Qian, Z., and Duan, H. (2018, January 15–19). How You Get Shot in the Back: A Systematical Study about Cryptojacking in the Real World. Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security (CCS ’18), Toronto, ON, Canada.10.1145/3243734.3243840 ↗
30. Konoth, R.K., Vineti, E., Moonsamy, V., Lindorfer, M., Kruegel, C., Bos, H., and Vigna, G. (2018, January 15–19). MineSweeper: An In-depth Look into Drive-by Cryptocurrency Mining and Its Defense. Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security (CCS ’18), Toronto, ON, Canada.10.1145/3243734.3243858 ↗
31. Pan, X., Cao, Y., and Chen, Y. (2015, January 8–11). I Do Not Know What You Visited Last Summer: Protecting users from stateful third-party web tracking with TrackingFree browser. Proceedings of the Network and Distributed System Security Symposium, San Diego, CA, USA.10.14722/ndss.2015.23163 ↗
32. Drakonakis, K., Ioannidis, S., and Polakis, J. (2020, January 9–13). The Cookie Hunter: Automated Black-box Auditing for Web Authentication and Authorization Flaws. Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security (CCS ’20), Virtual Event, USA.10.1145/3372297.3417869 ↗
33. Steffens, M., Rossow, C., Johns, M., and Stock, B. (2019, January 4–7). Don’t Trust The Locals: Investigating the Prevalence of Persistent Client-Side Cross-Site Scripting in the Wild. Proceedings of the 2019 Network and Distributed System Security Symposium, Bangalore, India.10.14722/ndss.2019.23009 ↗
34. Djeric, V., and Goel, A. (2010, January 11–13). Securing script-based extensibility in web browsers. Proceedings of the USENIX Security Symposium, Washington, DC, USA.
35. Jueckstock, J., Snyder, P., Sarker, S., Kapravelos, A., and Livshits, B. (2022, January 25–29). Measuring the Privacy vs. Compatibility Trade-off in Preventing Third-Party Stateful Tracking. Proceedings of the ACM Web Conference 2022, Lyon, France.10.1145/3485447.3512231 ↗
36. Khodayari, S., and Pellegrino, G. (2021, January 11–13). JAW: Studying Client-side CSRF with Hybrid Property Graphs and Declarative Traversals. Proceedings of the USENIX Security Symposium, Online.
37. Kim, I.L., Wang, W., Kwon, Y., Zheng, Y., Aafer, Y., Meng, W., and Zhang, X. (2018, January 23–27). AdBudgetKiller. Proceedings of the 2018 World Wide Web Conference on World Wide Web (WWW ’18), Lyon, France.10.1145/3178876.3186096 ↗
38. Subramani, K., Melicher, W., Starov, O., Vadrevu, P., and Perdisci, R. (2022, January 25–27). PhishInPatterns: Measuring elicited user interactions at scale on phishing websites. Proceedings of the 22nd ACM Internet Measurement Conference (IMC ’22), Nice, France.10.1145/3517745.3561467 ↗
39. Yang, R., Wang, X., Chi, C., Wang, D., He, J., Pang, S., and Lau, W. (2021, January 11–13). Scalable Detection of Promotional Website Defacements in Black Hat SEO Campaigns. Proceedings of the USENIX Security Symposium, Online.
40. Zeng, E., Wei, M., Gregersen, T., Kohno, T., and Roesner, F. (2021, January 2–4). Polls, clickbait, and commemorative $2 bills: Problematic political advertising on news and media websites around the 2020 U.S. elections. Proceedings of the 21st ACM Internet Measurement Conference (IMC ’21), Virtual Event.10.1145/3487552.3487850 ↗
41. Hu, Y., Gu, J., Hu, S., Zhang, Y., Tian, W., Guo, S., Chen, C., and Zhou, Y. (2023, January 3–9). Appaction: Automatic GUI Interaction for Mobile Apps via Holistic Widget Perception. Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2023), San Francisco, CA, USA.10.1145/3611643.3613885 ↗
42. Liu, Z., Chen, C., Wang, J., Chen, M., Wu, B., Che, X., Wang, D., and Wang, Q. (2024, January 14–20). Make LLM a Testing Expert: Bringing Human-like Interaction to Mobile GUI Testing via Functionality-aware Decisions. Proceedings of the 2024 IEEE/ACM 46th International Conference on Software Engineering (ICSE), Lisbon, Portugal.10.1145/3597503.3639180 ↗
43. Meng, R., Mirchev, M., Böhme, M., and Roychoudhury, A. (March, January 26). Large Language Model guided Protocol Fuzzing. Proceedings of the 31st Annual Network and Distributed System Security Symposium (NDSS), San Diego, CA, USA.
44. Deng, Y., Xia, C.S., Yang, C., Zhang, S.D., Yang, S., and Zhang, L. (2024, January 14–20). Large Language Models are Edge-Case Generators: Crafting Unusual Programs for Fuzzing Deep Learning Libraries. Proceedings of the IEEE/ACM 46th International Conference on Software Engineering (ICSE ’24), Lisbon, Portugal.10.1145/3597503.3623343 ↗
45. Xia, C.S., Paltenghi, M., Tian, J.L., Pradel, M., and Zhang, L. (2024, January 14–20). Fuzz4All: Universal Fuzzing with Large Language Models. Proceedings of the 46th International Conference on Software Engineering (ICSE ’24), Lisbon, Portugal.10.1145/3597503.3639121 ↗
46. Lemieux, C., Inala, J.P., Lahiri, S.K., and Sen, S. (2023, January 14–20). CodaMosa: Escaping Coverage Plateaus in Test Generation with Pre-trained Large Language Models. Proceedings of the 2023 IEEE/ACM 45th International Conference on Software Engineering (ICSE), Melbourne, Australia.10.1109/ICSE48619.2023.00085 ↗