A hybrid security analyzer for Java web applications

碩士 === 國立政治大學 === 資訊科學學系 === 98 === In recent years, development of web application is flourishing and the increasing population of using internet, providing customer service and making business through network has been a prevalent trend. Consequently, the web applications have become the targets of...

Full description

Bibliographic Details
Main Author: 江尚倫
Other Authors: 陳恭
Format: Others
Language:en_US
Published: 2010
Online Access:http://ndltd.ncl.edu.tw/handle/66739207919020551160
id ndltd-TW-098NCCU5394019
record_format oai_dc
spelling ndltd-TW-098NCCU53940192015-10-13T18:16:15Z http://ndltd.ncl.edu.tw/handle/66739207919020551160 A hybrid security analyzer for Java web applications 混合式的Java網頁應用程式分析工具 江尚倫 碩士 國立政治大學 資訊科學學系 98 In recent years, development of web application is flourishing and the increasing population of using internet, providing customer service and making business through network has been a prevalent trend. Consequently, the web applications have become the targets of the web hackers. With the progress of information technology, the technique of web attack becomes timeless and widespread. Some approaches have been taken to prevent from web attacks, such as firewall and encrypted connection. But these approaches have a limited effect against these attack techniques. The basic method should be taken is to eliminate the vulnerabilities inside the web application. Program analysis is common technique for detecting these vulnerabilities. There are two major program analysis approaches: static analysis and dynamic analysis. Both these approaches can detect vulnerabilities effectively. We reviewed several program analysis tools. Most of them are static analysis tool. However, we noticed that it is insufficient to analysis Java program in a static way due to the characteristic of Java language, e.g., polymorphism, reflection and more. Static has its congenital defects in examining these features, because static analysis happens when the program is not executing and lacks of runtime information. In this thesis, we focus on dynamic analysis of programs, where the analysis occurs when the program is executing, to solve the problems mentioned above in Java web application. In order to retrieving the runtime analysis information, we utilize the instrumentation mechanism provided by AspectJ. We instrument designed module in to the program and gather the needed information and execute the program in a unit testing approach. Our dynamic analysis module retrieves the information from instrumented executing program and utilizes the characteristic of Java to perform the tainted data tracking. We considered the dynamic tracking mechanism will leave some vulnerabilities undiscovered when the program is not completely executed. Hence we adopt the online analysis concept and design an online analysis module to find out the potential vulnerabilities which cannot be detected by dynamically tracking the tainted data. Our analysis tool finally integrates these two analysis results and provides the most soundness analysis result for developers. 陳恭 2010 學位論文 ; thesis 58 en_US
collection NDLTD
language en_US
format Others
sources NDLTD
description 碩士 === 國立政治大學 === 資訊科學學系 === 98 === In recent years, development of web application is flourishing and the increasing population of using internet, providing customer service and making business through network has been a prevalent trend. Consequently, the web applications have become the targets of the web hackers. With the progress of information technology, the technique of web attack becomes timeless and widespread. Some approaches have been taken to prevent from web attacks, such as firewall and encrypted connection. But these approaches have a limited effect against these attack techniques. The basic method should be taken is to eliminate the vulnerabilities inside the web application. Program analysis is common technique for detecting these vulnerabilities. There are two major program analysis approaches: static analysis and dynamic analysis. Both these approaches can detect vulnerabilities effectively. We reviewed several program analysis tools. Most of them are static analysis tool. However, we noticed that it is insufficient to analysis Java program in a static way due to the characteristic of Java language, e.g., polymorphism, reflection and more. Static has its congenital defects in examining these features, because static analysis happens when the program is not executing and lacks of runtime information. In this thesis, we focus on dynamic analysis of programs, where the analysis occurs when the program is executing, to solve the problems mentioned above in Java web application. In order to retrieving the runtime analysis information, we utilize the instrumentation mechanism provided by AspectJ. We instrument designed module in to the program and gather the needed information and execute the program in a unit testing approach. Our dynamic analysis module retrieves the information from instrumented executing program and utilizes the characteristic of Java to perform the tainted data tracking. We considered the dynamic tracking mechanism will leave some vulnerabilities undiscovered when the program is not completely executed. Hence we adopt the online analysis concept and design an online analysis module to find out the potential vulnerabilities which cannot be detected by dynamically tracking the tainted data. Our analysis tool finally integrates these two analysis results and provides the most soundness analysis result for developers.
author2 陳恭
author_facet 陳恭
江尚倫
author 江尚倫
spellingShingle 江尚倫
A hybrid security analyzer for Java web applications
author_sort 江尚倫
title A hybrid security analyzer for Java web applications
title_short A hybrid security analyzer for Java web applications
title_full A hybrid security analyzer for Java web applications
title_fullStr A hybrid security analyzer for Java web applications
title_full_unstemmed A hybrid security analyzer for Java web applications
title_sort hybrid security analyzer for java web applications
publishDate 2010
url http://ndltd.ncl.edu.tw/handle/66739207919020551160
work_keys_str_mv AT jiāngshànglún ahybridsecurityanalyzerforjavawebapplications
AT jiāngshànglún hùnhéshìdejavawǎngyèyīngyòngchéngshìfēnxīgōngjù
AT jiāngshànglún hybridsecurityanalyzerforjavawebapplications
_version_ 1718029401862438912