8.7 版本发布—WinterCG 合规性第一部分
了解更多

在 GitHub 上查看

@nativescript/ios-security

内容

简介

🔒 IOSSecuritySuite for NativeScript。

🌏 iOS 安全套件是一个高级且易于使用的平台安全和反篡改库。如果您正在开发 iOS 应用并希望根据 OWASP MASVS 标准(第 v8 章)来保护您的应用,那么此库可以为您节省大量时间。🚀 ISS 检测的内容

  • 越狱(甚至包括具有全新指示器的 iOS 11+!🔥)
  • 连接的调试器👨🏻‍🚀
  • 如果应用在模拟器中运行👽
  • 设备上运行的常用逆向工程工具🔭

安装

要安装插件,请在应用的根文件夹中运行以下命令

cli
npm install @nativescript/ios-security

先决条件

指定要查询的 URL

在越狱检测模块中,有一个检查使用 canOpenURL(_😃 方法,并且需要指定将要查询的 URL。

App_Resources/iOS/Info.plist 文件中按如下方式指定这些 URL

xml
<key>LSApplicationQueriesSchemes</key>
<array>
    <string>cydia</string>
    <string>undecimus</string>
    <string>sileo</string>
    <string>zbra</string>
    <string>filza</string>
    <string>activator</string>
</array>

使用 @nativescript/ios-security

以下部分介绍了如何使用 @nativescript/ios-security

检测越狱

要简单检查设备是否已越狱,请使用 amIJailbroken() 方法。

ts
const isJailBroken: boolean = IOSSecurity.amIJailbroken()
if (isJailBroken) {
  console.log('This device is jailbroken')
} else {
  console.log('This device is not jailbroken')
}

检测调试器连接

要检测是否有调试器连接到应用,请使用 amIDebugged() 方法。

ts
const amIDebugged: boolean = IOSSecurity.amIDebugged()

阻止调试器连接

要阻止调试器连接到应用,请调用 denyDebugger() 方法。

ts
IOSSecurity.denyDebugger()

模拟器检测

要检测应用是否在模拟器上运行,请调用 amIRunInEmulator() 方法。

ts
const runInEmulator: boolean = IOSSecurity.amIRunInEmulator()

检测逆向工程工具的使用

要检测应用是否使用了常见的逆向工程工具,请调用 amIReverseEngineered() 方法。

ts
const amIReverseEngineered: boolean = IOSSecurity.amIReverseEngineered()

系统代理检测

要检测用户是否使用了代理,请调用 amIProxied() 方法。

ts
const amIProxied: boolean = IOSSecurity.amIProxied()

运行时 Hook 检测

要检测应用代码中是否放置了 Hook,请调用 amIRuntimeHookedWithDyldWhiteListDetectionClassSelectorIsClassMethod() 方法。

ts
let amIRuntimeHooked: boolean = IOSSecurity.amIRuntimeHookedWithDyldWhiteListDetectionClassSelectorIsClassMethod(dyldWhiteList: NSArray<string> | string[], detectionClass: typeof NSObject, selector: string, isClassMethod: boolean)

应用篡改检测

要检测应用是否被篡改,请调用 amITampered() 方法。

ts
let amITampered: NSArray<any> =  IOSSecurity.amITampered(checks: NSArray<any> | any[])

许可证

Apache 许可证 2.0 版