论文标题
隐藏在视线中:混淆的字符串威胁您的隐私
Hidden in Plain Sight: Obfuscated Strings Threatening Your Privacy
论文作者
论文摘要
弦杂掺杂是专有的,封闭式应用程序用于保护知识产权的既定技术。此外,在应用程序中,它也经常用于隐藏间谍软件或恶意软件。在这两种情况下,技术范围从XOR操作的位操作到AES加密。但是,字符串混淆技术/工具遭受了一个共同的弱点:他们通常必须嵌入必要的逻辑才能将字符串删除到应用程序代码中。 在本文中,我们表明,在恶意和良性应用中发现的Android的大多数弦混淆技术都可以以自动化的方式很容易被打破。我们开发了StringHound,这是一种开源工具,该工具使用了新型技术来识别混淆的字符串并使用切片重建原件。 我们在良性和恶意Android应用程序上评估了StringHound。总而言之,我们将混淆的字符串比其他字符串Deobfuscation工具高出近30倍。此外,我们分析了100,000个Google Play商店应用程序,并发现了多个混淆的字符串,这些字符串隐藏了脆弱的加密使用情况,不安全的Internet访问,API键,硬编码的密码以及对特权的开发,而没有开发人员的意识。此外,我们的分析表明,恶意软件不仅使用字符串混淆,而且良性应用程序可以广泛使用字符串混淆。
String obfuscation is an established technique used by proprietary, closed-source applications to protect intellectual property. Furthermore, it is also frequently used to hide spyware or malware in applications. In both cases, the techniques range from bit-manipulation over XOR operations to AES encryption. However, string obfuscation techniques/tools suffer from one shared weakness: They generally have to embed the necessary logic to deobfuscate strings into the app code. In this paper, we show that most of the string obfuscation techniques found in malicious and benign applications for Android can easily be broken in an automated fashion. We developed StringHound, an open-source tool that uses novel techniques that identify obfuscated strings and reconstruct the originals using slicing. We evaluated StringHound on both benign and malicious Android apps. In summary, we deobfuscate almost 30 times more obfuscated strings than other string deobfuscation tools. Additionally, we analyzed 100,000 Google Play Store apps and found multiple obfuscated strings that hide vulnerable cryptographic usages, insecure internet accesses, API keys, hard-coded passwords, and exploitation of privileges without the awareness of the developer. Furthermore, our analysis reveals that not only malware uses string obfuscation but also benign apps make extensive use of string obfuscation.