Static and dynamic combined analysis for bug detection of web apps웹 앱 결함 검출을 위한 정적 동적 혼합 분석

Cited 0 time in webofscience Cited 0 time in scopus
  • Hit : 55
  • Download : 0
JavaScript programs are prevalent and JavaScript developers need better tools to write high-quality programs. Static analysis is one of the powerful foundations underlying developer tools. However, dynamic features of the language obstruct the practical use of static analysis. Annual language updates require static analyzers to catch up constantly, and host environments require manual efforts to handle extra semantics. By leveraging concrete interpreters, static and dynamic combined analyses have alleviated such challenges. However, they have limitations to maximizing the benefits of dynamic analysis. In this thesis, we present a novel static and dynamic combined analysis framework for the bug detection of JavaScript web applications. It provides two perspectives of using dynamic analysis: improving analysis precision aggressively by sacrificing soundness or analysis performances soundly. In the first perspective, the dynamic analysis samples partial execution flows among all possible program behavior, and the static analysis utilizes the dynamically collected states. We present a staged combined analysis to precisely analyze the event loop of web applications with a novel analysis unit, the EventHandler. We automate modeling opaque code in static analysis via dynamic analysis as well. Although they cannot guarantee the soundness of the analysis, they can aggressively reduce false positives and manual modeling efforts in static analysis for the practical use of static analysis. In the other perspective, we soundly combine static and dynamic analyses to leverage the benefits of high-performance JavaScript engines. We study both directions of alternating abstract and concrete semantics: triggering dynamic analysis during static analysis and applying abstract semantics on dynamic analysis. Our experiment shows that SAFE_DS, the first direction of combined analysis, is 6.3x faster than the baseline static analyzer SAFE, and the other JSCA is 13.7x faster than SAFE_DS.
Advisors
Ryu, Sukyoungresearcher류석영researcher
Description
한국과학기술원 :전산학부,
Publisher
한국과학기술원
Issue Date
2022
Identifier
325007
Language
eng
Description

학위논문(박사) - 한국과학기술원 : 전산학부, 2022.2,[v, 68 p. :]

URI
http://hdl.handle.net/10203/309234
Link
http://library.kaist.ac.kr/search/detail/view.do?bibCtrlNo=996363&flag=dissertation
Appears in Collection
CS-Theses_Ph.D.(박사논문)
Files in This Item
There are no files associated with this item.

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0