thesis/5_theseus/7_conclusion.typ
Jean-Marie 'Histausse' Mineau cc4ecf28fe
All checks were successful
/ test_checkout (push) Successful in 1m42s
add overview section
2025-09-21 22:49:49 +02:00

20 lines
1.6 KiB
Typst

#import "../lib.typ": pb3, pb3-text, highlight-block, todo
== Conclusion <sec:th-conclusion>
In this chapter, we presented a set of transformations to apply to an application to encode reflection calls and code loaded dynamically inside the application.
We also presented a dynamic analysis approach to collect the information needed to perform those transformations.
We then applied this method to applications a rescent subset of applications of our dataset from @sec:rasta.
When comparing the success rate of the tools of @sec:rasta on the applications before and after the transformation, we found that, in general, the success rate of those tools slightly decrease, with a few exceptions.
We also showed that our transformation indeed allow static analysis tools to access and process those runtime information in their analysis.
However, a more in-depth look at the results of our dynamic analysis showed that our code coverage is lacking, and that the great majority of dynamically loaded code we intercepted is from generic advertisement and telemetry libraries.
#v(2em)
#align(center, highlight-block(inset: 15pt, width: 75%, breakable: false, block(align(left)[
#pb3: #pb3-text
#v(0.75em)
We showed that intrumentation can be used to add the direct calls to method initially called using reflections, which, combined with the injection in the application of dynamically loaded bytecode, allows generic static analysis tools to acces previously unavailable code.
However, we also found that the dynamic analysis can be a significant bottleneck in this approach.
])))