Reusing software libraries is a pillar of modern software engineering. In 2022, the average Java application depends on 40 third-party libraries. Relying on such libraries exposes a …
C Weir, B Hermann, S Fahl - 29th USENIX security symposium (USENIX …, 2020 - usenix.org
Increasingly mobile device users are being hurt by security or privacy issues with the apps they use. App developers can help prevent this; inexpensive security assurance techniques …
An established way to steal the income of app developers, or to trick users into installing malware, is the creation of repackaged apps. These are clones of-typically-successful apps …
Current approaches combining multiple static analyses deriving different, independent properties focus either on modularity or performance. Whereas declarative approaches …
T Tan, Y Li - Proceedings of the 32nd ACM SIGSOFT International …, 2023 - dl.acm.org
Static analysis is a mature field with applications to bug detection, security analysis, program understanding, optimization, and more. To facilitate these applications, static analysis …
String obfuscation is an established technique used by proprietary, closed-source applications to protect intellectual property. Furthermore, it is also frequently used to hide …
Effect handlers are a program structuring paradigm with rising popularity in the functional programming language community and can express many advanced control flow …
K Ali, X Lai, Z Luo, O Lhoták, J Dolby… - IEEE transactions on …, 2019 - ieeexplore.ieee.org
Call graphs have many applications in software engineering, including bug-finding, security analysis, and code navigation in IDEs. However, the construction of call graphs requires …
CC Chuang, L Cruz, R Van Dalen… - 2022 IEEE 22nd …, 2022 - ieeexplore.ieee.org
When developing and maintaining large software systems, a great deal of effort goes into dependency management. During the whole lifecycle of a software project, the set of …