Generating web applications containing XSS and CSRF vulnerabilities

Most of the people in the industrial world are using several web applications every day. Many of those web applications contain vulnerabilities that can allow attackers to steal sensitive data from the web application's users. One way to detect these vulnerabilities is to have a penetration tes...

Full description

Bibliographic Details
Main Author: Ahlberg, Gustav
Format: Others
Language:English
Published: Linköpings universitet, Databas och informationsteknik 2014
Subjects:
XSS
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-111652
id ndltd-UPSALLA1-oai-DiVA.org-liu-111652
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-liu-1116522018-01-12T05:09:49ZGenerating web applications containing XSS and CSRF vulnerabilitiesengAhlberg, GustavLinköpings universitet, Databas och informationsteknikLinköpings universitet, Tekniska högskolan2014Web securityCSRFXSSCross Site Request ForgeryCross Site ScriptingTaint analysisvulnerabilitygenerating web applicationsComputer SciencesDatavetenskap (datalogi)Most of the people in the industrial world are using several web applications every day. Many of those web applications contain vulnerabilities that can allow attackers to steal sensitive data from the web application's users. One way to detect these vulnerabilities is to have a penetration tester examine the web application. A common way to train penetration testers to find vulnerabilities is to challenge them with realistic web applications that contain vulnerabilities. The penetration tester's assignment is to try to locate and exploit the vulnerabilities in the web application. Training on the same web application twice will not provide any new challenges to the penetration tester, because the penetration tester already knows how to exploit all the vulnerabilities in the web application. Therefore, a vast number of web applications and variants of web applications are needed to train on. This thesis describes a tool designed and developed to automatically generate vulnerable web applications. First a web application is prepared, so that the tool can generate a vulnerable version of the web application. The tool injects Cross Site Scripting (XSS) and Cross Site Request Forgery (CSRF) vulnerabilities in prepared web applications. Different variations of the same vulnerability can also be injected, so that different methods are needed to exploit the vulnerability depending on the variation. A purpose of the tool is that it should generate web applications which shall be used to train penetration testers, and some of the vulnerabilities the tool can inject, cannot be detected by current free web application vulnerability scanners, and would thus need to be detected by a penetration tester. To inject the vulnerabilities, the tool uses abstract syntax trees and taint analysis to detect where vulnerabilities can be injected in the prepared web applications. Tests confirm that web application vulnerability scanners cannot find all the vulnerabilities on the web applications which have been generated by the tool. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-111652application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Others
sources NDLTD
topic Web security
CSRF
XSS
Cross Site Request Forgery
Cross Site Scripting
Taint analysis
vulnerability
generating web applications
Computer Sciences
Datavetenskap (datalogi)
spellingShingle Web security
CSRF
XSS
Cross Site Request Forgery
Cross Site Scripting
Taint analysis
vulnerability
generating web applications
Computer Sciences
Datavetenskap (datalogi)
Ahlberg, Gustav
Generating web applications containing XSS and CSRF vulnerabilities
description Most of the people in the industrial world are using several web applications every day. Many of those web applications contain vulnerabilities that can allow attackers to steal sensitive data from the web application's users. One way to detect these vulnerabilities is to have a penetration tester examine the web application. A common way to train penetration testers to find vulnerabilities is to challenge them with realistic web applications that contain vulnerabilities. The penetration tester's assignment is to try to locate and exploit the vulnerabilities in the web application. Training on the same web application twice will not provide any new challenges to the penetration tester, because the penetration tester already knows how to exploit all the vulnerabilities in the web application. Therefore, a vast number of web applications and variants of web applications are needed to train on. This thesis describes a tool designed and developed to automatically generate vulnerable web applications. First a web application is prepared, so that the tool can generate a vulnerable version of the web application. The tool injects Cross Site Scripting (XSS) and Cross Site Request Forgery (CSRF) vulnerabilities in prepared web applications. Different variations of the same vulnerability can also be injected, so that different methods are needed to exploit the vulnerability depending on the variation. A purpose of the tool is that it should generate web applications which shall be used to train penetration testers, and some of the vulnerabilities the tool can inject, cannot be detected by current free web application vulnerability scanners, and would thus need to be detected by a penetration tester. To inject the vulnerabilities, the tool uses abstract syntax trees and taint analysis to detect where vulnerabilities can be injected in the prepared web applications. Tests confirm that web application vulnerability scanners cannot find all the vulnerabilities on the web applications which have been generated by the tool.
author Ahlberg, Gustav
author_facet Ahlberg, Gustav
author_sort Ahlberg, Gustav
title Generating web applications containing XSS and CSRF vulnerabilities
title_short Generating web applications containing XSS and CSRF vulnerabilities
title_full Generating web applications containing XSS and CSRF vulnerabilities
title_fullStr Generating web applications containing XSS and CSRF vulnerabilities
title_full_unstemmed Generating web applications containing XSS and CSRF vulnerabilities
title_sort generating web applications containing xss and csrf vulnerabilities
publisher Linköpings universitet, Databas och informationsteknik
publishDate 2014
url http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-111652
work_keys_str_mv AT ahlberggustav generatingwebapplicationscontainingxssandcsrfvulnerabilities
_version_ 1718605308188688384