@nativescript/ios-security
NativeScript 的 IOSSecuritySuite
npm i --save @nativescript/ios-security

@nativescript/ios-security

🔒 IOSSecuritySuite for NativeScript.

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

  • 越狱(即使是带有全新指示器的 iOS 11+!🔥)
  • 附加的调试器 👨🏻‍🚀
  • 如果应用程序在仿真器中运行 👽
  • 在设备上运行的常见逆向工程工具 🔭
ns plugin add @nativescript/ios-security

使用方法

TypeScript

import { IOSSecurity } from "@nativescript/ios-security";

JavaScript

var IOSSecurity = require("@nativescript/ios-security").IOSSecurity;

更新 Info.plist

在将 ios-security 添加到您的项目后,您还需要更新您的 Info.plist。越狱检测模块中有一个检查,使用 canOpenURL(_:) 方法,并且 需要 指定将要查询的 URL。

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

越狱检测模块

  • 最简单的方法 返回 true/false,如果您只想知道设备是否已越狱或被监禁

JavaScript

if (IOSSecurity.amIJailbroken()) {
console.log("This device is jailbroken");
} else {
console.log("This device is not jailbroken");
}

调试器检测模块

const amIDebugged = IOSSecurity.amIDebugged();

完全拒绝调试器

IOSSecurity.denyDebugger();

仿真器检测模块

const runInEmulator = IOSSecurity.amIRunInEmulator();

逆向工程工具检测模块

const amIReverseEngineered = IOSSecurity.amIReverseEngineered();

系统代理检测模块

const amIProxied = IOSSecurity.amIProxied();

许可证

Apache 许可证版本 2.0