第三方sdk的包括广告、支付、统计、社交、推送,地图等类别,是广告商、支付公司、社交、推送平台,地图服务商等第三方服务公司为了便于应用开发人员使用其提供的服务而开发的工具包,封装了一些复杂的逻辑实现以及请求,响应解析的API,由于其使用的广泛性,一旦出现安全问题并且被黑客利用,其影响范围之广,危害之大不言而喻。
SDK的安全问题
首先,一些恶意的Sdk本身会存在着安全威胁,除了众所周知的获取用户隐私信息,如收集设备id(IMEI,IMSI等)、获取用户位置信息外,还存在着更严重的安全问题。比如某些sdk具有主动接收服务器指令的功能,它会根据需要收集短信、通话记录和联系人等敏感信息。另外,它还会执行如动态下载代码等危险操作。
其次,Sdk自身可能还会存在漏洞。如果这些漏洞被利用,攻击者就能够利用sdk本身存在的强大功能发动恶意的攻击行为,例如在用户毫无察觉的情况下打开相机拍照,通过发送短信盗取双因素认证令牌,或将设备变成僵尸网络的一部分。
下面介绍下目前由爱内测(www.ineice.cn)在第三方sdk(主要是指广告sdk)中发现的恶意行为和漏洞。
恶意行为
·收集用于定位和追踪用户的信息,如设备id和位置信息,
·收集用户的邮箱地址以及安装在用户设备上的应用程序列表。
· 读取短信、邮件、电话通话记录和联系人列表,在没有任何访问控制措施的情况下通过web服务公开共享这些数据。
·接收远程服务器指令,下载任意代码并执行。
·数据明文传输
漏洞
·通过明文传输数据
通过HTTP明文传输用户的隐私信息,使隐私信息很容易被窃取。FireEye 的研究者声称在Google Play的主流应用中有47%的广告sdk存在该漏洞。
· 使用HTTP协议传输数据
使用不安全的HTTP协议从控制服务器接收命令或者动态加载代码。攻击者可以通过中间人攻击,劫持HTTP数据包,冒充服务器下发恶意指令、推送恶意代码,将第三方sdk变成一个僵尸网络。
攻击者有许多方法来利用sdk的漏洞。比如劫持公共WiFi:当受害者的设备连接到公共WiFi热点(在咖啡店或机场等),攻击者可以在附近监听AppLovin广告sdk的数据包、注入恶意指令和代码。
攻击者也可以通过DNS劫持的方式来达到利用漏洞的目的。在DNS劫持攻击中,攻击者可以修改sdk广告服务器的DNS记录,把访问者重定向到攻击者自己的控制服务器,以便从受害者设备上收集隐私信息或者发送恶意控制指令到受害者设备上。
·Webview漏洞
WebView相当于一个浏览器窗口,应用程序可以使用它来显示网页内容。addJavascriptInterface这个API允许运行在WebView中的JavaScript代码来访问应用的native功能。攻击者可以利用此漏洞,使用应用已有的权限,通过恶意的JavaScript代码来对设备进行恶意操作。这个漏洞已经影响到超过90%的Android设备了。
为了降低安全风险,从Android 4.2开始,谷歌增加了一个叫做@JavascriptInterface的注解,开发人员可以使用它来定义需要暴露给WebView中的JavaScript代码的函数。这实质上是一个白名单机制,让开发者决定什么函数是允许被调用的。
然而添加 @JavascriptInterface注解只是在理论上降低了风险,其实际效用依赖于开发者如何使用它。另外,开发人员还可以添加代码,以便JavaScript调用任何应用暴露出来的函数(触发这些行为)都需要获得用户的许可。
·使用动态加载的方式进行升级
采用运行时动态加载技术在Dalvik虚拟机中动态执行代码作为其升级机制的一部分,却没有对动态加载的代码进行校验。如果该部分代码被黑客恶意篡改,则会给用户造成严重的安全威胁。
有些sdk本身具有危险行为,同时又存在漏洞,这种特性我们称之为“vulnaggressive”。这种特性并不局限于广告sdk,其它第三方组件和应用程序也存在。如果一个sdk具有“vulnaggressive”特性,则会使Android用户,尤其是企业用户面临严重的安全威胁。AppLovin广告sdk就是一个实例
相关推荐
而壳识别则有助于揭示程序是否被加壳,加了哪种类型的壳,比如UPX、VMProtect、Aspack等,这在安全分析中是非常关键的一步,因为壳技术往往用于混淆代码,使得分析变得困难。 接下来,我们看到两个头文件:ExStudPE...
使用海康威视SDK插件,开发者能够轻松地将海康威视的监控设备集成到自己的应用程序中,无论是企业级的安全管理系统还是个人使用的监控软件,都可以享受到高质量、稳定的视频监控体验。通过深入理解和灵活运用SDK提供...
OllyDbg是一款著名的Windows汇编级调试器,广泛用于逆向工程、软件调试和安全分析。其强大的功能得益于丰富的插件系统,而这些插件的开发离不开OllyDbg提供的插件开发SDK。本文将详细解析该SDK中的关键组件和开发...
4. **安全特性**:引入了更严格的安全政策,如默认禁用不受信任的应用安装,增强应用沙箱机制。 5. **无障碍服务**:改善了无障碍功能,例如语音命令的增强和手势导航的改进。 6. **开发人员工具**:更新了Android...
使用OPC Core Components 2.00 SDK 2.20,开发者可以创建跨平台的应用程序,支持OPC UA(OPC统一架构),这是一种基于服务导向架构的现代OPC标准,提供了更高级的安全性、互操作性和可扩展性。OPC UA不仅支持传统的...
Flutter版本的穿山甲广告SDK插件,旨在解决Flutter开发者在应用中集成穿山甲广告的需求。这个插件的出现,使得开发者无需深入了解原生Android和iOS的SDK集成过程,只需通过Flutter的Dart语言即可完成广告的展示、...
它的SDK(Software Development Kit)允许开发者编写插件,扩展IDA的功能,以满足特定分析和自动化任务的需求。"idasdk70.rar"是一个包含IDA 7.0版本SDK的压缩文件,可能包含了头文件、库文件、示例代码和其他必要的...
通过上述步骤和知识点,开发者可以基于【海康WEB SDK javascript】构建出功能完善的Web视频监控系统,提供给用户流畅、安全的在线监控体验。同时,随着技术的发展,海康威视可能还会不断更新SDK,以适应新的技术趋势...
8. **安全机制**:SDK可能包含安全认证和加密的接口,以确保数据传输的安全性,防止未经授权的访问和篡改。 9. **跨平台支持**:大华SDK通常会支持多种操作系统,如Windows、Linux、Android、iOS等,这样开发者可以...
10. **Gradle插件**:Android项目通常使用Gradle作为构建系统,Gradle插件与SDK配合,负责处理依赖管理和构建流程。 综上所述,Android SDK (SDK Platforms)-android-27.zip是一个为Android 8.1 Oreo提供开发支持的...
5. **构建工具**:在SDK Platforms中,包含了用于构建应用的工具,如构建系统Gradle的插件、Android Gradle插件、AAPT(Android Asset Packaging Tool,用于处理资源文件)和R8(代码混淆和优化工具)。 6. **系统...
5. **A/B System Updates**:系统更新采用无缝安装方式,确保设备安全和稳定性。 二、SDK Platforms的组成 SDK Platforms-android-25包含了以下关键组件: 1. **System Images**:用于模拟器的系统映像,开发者...
IDA 7.0 SDK 是一款强大的反汇编器和逆向工程工具的软件开发套件,主要用于分析二进制代码和创建自定义插件。IDA(Interactive Disassembler)是其核心,它允许用户查看程序的机器码并将其转换为可读的汇编语言。SDK...
然而,对于致力于软件逆向工程、安全分析或相关领域的专业人士来说,IDAPRO SDK 7.4 是不可或缺的工具,它能帮助他们提高工作效率,解决复杂问题,并实现对二进制代码的深度理解。 在使用idasdk74.zip解压后,...
DeepStream SDK 2.0提供了有效的内存管理机制,确保在视频分析过程中,数据的存储和处理能够高效且安全地进行。 参考应用程序(Reference Application)为开发者提供了一个完整的示例,展示如何利用DeepStream SDK...
2. Gradle插件兼容性:此版本的SDK Build Tools应与相应的Gradle插件版本兼容,确保构建流程的顺利进行。通常,开发者需要在项目级build.gradle文件中指定对应的Gradle插件版本。 3. 支持Android P(API级别28):...
5. **开发者工具**:如Eclipse ADT(Android Developer Tools)插件或Android Studio,是集成开发环境,提供了代码编辑、调试、性能分析等功能。 6. **库文件**:包含了运行Android应用所需的各种库,如dalvik...
海康作为安防领域的领导者,其SDK通常会遵循严格的安全标准,确保数据传输的安全性和系统的稳定性。开发者在使用SDK时,应遵循最佳实践,以保障用户数据的安全。 总结来说,海康Web SDK V3.0是一个强大的开发工具...
SDK应提供相应的加密和认证机制,确保视频流传输的安全,同时遵循相关法规,保护用户隐私。 8. **性能优化**: 针对视频处理的高负荷特性,开发者需要了解如何利用SDK进行性能优化,例如合理使用多线程、异步处理...
开发者可以通过学习和修改这些示例代码,快速掌握微博API的使用方法,进而开发出自己的微博应用,例如社交网络分析工具、内容分享插件等。在实际项目中,开发者还需要关注SDK的更新和微博平台的API政策变化,确保...