public class SecurityCheckUtil
extends java.lang.Object
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
checkIsDebuggerConnected()
java法检测是否连上调试器
|
boolean |
checkIsDebugVersion(Context context)
检测app是否为debug版本
|
boolean |
checkIsUsbCharging(Context context)
usb充电辅助判断
|
java.lang.String |
getApplicationMetaValue(Context context,
java.lang.String name)
拿清单值
|
java.lang.String |
getSignature(Context context)
获取签名信息
|
static SecurityCheckUtil |
getSingleInstance() |
boolean |
hasReadProcMaps(java.lang.String paramString)
检测有么有加载so库
|
boolean |
isLocalPortUsing(int port)
检测本地端口是否被占用
|
boolean |
isPortUsing(java.lang.String host,
int port)
检测任一端口是否被占用
|
boolean |
isRoot()
检查root权限
|
boolean |
isXposedExistByThrow()
通过主动抛出异常,检查堆栈信息来判断是否存在XP框架
|
boolean |
isXposedExists()
已过时。
|
boolean |
readProcStatus()
java读取/proc/uid/status文件里TracerPid的方式来检测是否被调试
|
boolean |
tryShutdownXposed()
尝试关闭XP框架
先通过isXposedExistByThrow判断有没有XP框架
有的话先hookXP框架的全局变量disableHooks
漏洞在,如果XP框架先hook了isXposedExistByThrow的返回值,那么后续就没法走了
现在直接先hookXP框架的全局变量disableHooks
|
public static final SecurityCheckUtil getSingleInstance()
public java.lang.String getSignature(Context context)
context - public boolean checkIsDebugVersion(Context context)
context - public boolean checkIsDebuggerConnected()
public boolean checkIsUsbCharging(Context context)
context - public java.lang.String getApplicationMetaValue(Context context,
java.lang.String name)
context - name - public boolean isLocalPortUsing(int port)
port - public boolean isPortUsing(java.lang.String host,
int port)
throws java.net.UnknownHostException
host - port - java.net.UnknownHostExceptionpublic boolean isRoot()
@Deprecated public boolean isXposedExists()
public boolean isXposedExistByThrow()
public boolean tryShutdownXposed()
漏洞在,如果XP框架先hook了isXposedExistByThrow的返回值,那么后续就没法走了 现在直接先hookXP框架的全局变量disableHooks
public boolean hasReadProcMaps(java.lang.String paramString)
paramString - public boolean readProcStatus()