Automatic Web Security Unit Testing: XSS Vulnerability Detection
Title | Automatic Web Security Unit Testing: XSS Vulnerability Detection |
Publication Type | Conference Paper |
Year of Publication | 2016 |
Authors | Mohammadi, M., Chu, B., Lipford, H. R., Murphy-Hill, E. |
Conference Name | 2016 IEEE/ACM 11th International Workshop in Automation of Software Test (AST) |
Keywords | Attack generation, automatic testing approach, Browsers, command line injection, compositionality, Context, Cross Site Scripting, Cross-site scripting (XSS), encoding, encoding function, HTML, Human Behavior, human factors, Internet, Metrics, program analysis, program diagnostics, program testing, pubcrawl, Resiliency, Sanitization evaluation, security, security of data, Security test harness, software developers, static analysis tools, Testing, Unit testing, vulnerability detection, Web application, Web pages, Web security unit testing, XSS attack strings, XSS vulnerability detection |
Abstract | Integrating security testing into the workflow of software developers not only can save resources for separate security testing but also reduce the cost of fixing security vulnerabilities by detecting them early in the development cycle. We present an automatic testing approach to detect a common type of Cross Site Scripting (XSS) vulnerability caused by improper encoding of untrusted data. We automatically extract encoding functions used in a web application to sanitize untrusted inputs and then evaluate their effectiveness by automatically generating XSS attack strings. Our evaluations show that this technique can detect 0-day XSS vulnerabilities that cannot be found by static analysis tools. We will also show that our approach can efficiently cover a common type of XSS vulnerability. This approach can be generalized to test for input validation against other types injections such as command line injection. |
DOI | 10.1109/AST.2016.020 |
Citation Key | mohammadi_automatic_2016 |
- testing
- pubcrawl
- Resiliency
- Sanitization evaluation
- security
- security of data
- Security test harness
- software developers
- static analysis tools
- program testing
- Unit testing
- vulnerability detection
- Web application
- Web pages
- Web security unit testing
- XSS attack strings
- XSS vulnerability detection
- encoding function
- automatic testing approach
- Browsers
- command line injection
- Compositionality
- Context
- Cross Site Scripting
- Cross-site scripting (XSS)
- encoding
- Attack generation
- HTML
- Human behavior
- Human Factors
- internet
- Metrics
- program analysis
- program diagnostics