欢迎光临澳大利亚新华书店网 [登录 | 免费注册]

    • Android设备指纹攻防与风险环境检测
      • 作者:编者:刘延鸿//何巡|责编:张淑谦//丁伦
      • 出版社:机械工业
      • ISBN:9787111794196
      • 出版日期:2025/11/01
      • 页数:314
    • 售价:39.6
  • 内容大纲

        本书全面介绍了Android设备指纹相关的基础知识、攻防技术、风险环境检测,以及未来发展方向。内容涵盖了从Android架构与基础、动态代理与VirtualApp、Android Hook技术到客户端风控的实战技巧,旨在帮助开发者构建完整的Android攻防知识体系。在个人信息保护相关法律日益严格和移动互联网安全需求不断提升的背景下,本书不仅关注技术细节,也兼顾行业规范与合规性问题。无论您是Android开发新手,还是资深从业者,这本书都将为您提供有价值的参考与指导。
  • 作者介绍

  • 目录

    前言
    第1章  Android架构与基础介绍
      1.1  Android系统架构概述
        1.1.1  Linux内核层
        1.1.2  硬件抽象层(HAL)
        1.1.3  系统库和Android运行时
        1.1.4  应用程序框架层
        1.1.5  应用程序层
      1.2  Android的C/S架构和Binder
        1.2.1  客户端/服务端架构
        1.2.2  Binder机制
      1.3  应用上下文(Context)
        1.3.1  Context结构
        1.3.2  访问系统服务
      1.4  SELinux的介绍与影响
        1.4.1  SELinux在Android中的意义
        1.4.2  SELinux的基本概念
        1.4.3  从猫狗的例子看SELinux“类型强化”(MCS与MLS特性)
        1.4.4  典型avc:denied日志分析
        1.4.5  如何修改和定制SELinux策略
      1.5  Android Verified Boot(AVB):设备完整性的“守门人”
        1.5.1  AVB的核心设计
        1.5.2  AVB的工作流程
        1.5.3  AVB的三种验证模式
        1.5.4  AVB的交互
        1.5.5  AVB的版本演进
        1.5.6  AVB的局限与破解
        1.5.7  AVB验证失败的日志分析
      1.6  Android安全模型:硬件可信执行环境(TEE)
        1.6.1  Android安全模型演进与TEE介绍
        1.6.2  Android不同版本对TEE的支持
        1.6.3  典型TEE功能与使用场景
        1.6.4  TEE代码使用介绍
        1.6.5  TEE与安全元件的差异
        1.6.6  安全等级介绍
      1.7  Android权限模型
        1.7.1  权限的分类
        1.7.2  权限模型的演变
        1.7.3  如何正确使用权限
      1.8  Android的关键特性与其他系统的区别
        1.8.1  Android与传统Linux系统的区别
        1.8.2  Android与iOS系统的区别
        1.8.3  对比总结:Android的独特性
    第2章  动态代理与VirtualApp简介
      2.1  动态代理介绍
      2.2  Java中的动态代理
        2.2.1  动态代理的使用示例
        2.2.2  动态代理的使用场景
        2.2.3  动态代理的局限性
        2.2.4  Android中的动态代理

      2.3  VirtualApp剖析
        2.3.1  VirtualApp的实现机制
        2.3.2  VirtualApp的局限性
      2.4  相关知识与参考
      2.5  小结
    第3章  Android Hook技术详解
      3.1  Java Hook概述
        3.1.1  Android Java Hook使用场景
        3.1.2  常见的Java Hook框架
        3.1.3  Java Hook的原理
        3.1.4  Java Hook与ART优化机制的关系
      3.2  常见的Java Hook实现方式
        3.2.1  基于art_method的手动替换
        3.2.2  基于字节码/.dex文件的修补
      3.3  JVMTI
        3.3.1  JVMTI的常见功能
        3.3.2  JVMTI Agent开发介绍
        3.3.3  JVMTI实现内存漫游功能介绍
      3.4  Android热修复
        3.4.1  .dex方法指令修改
        3.4.2  .dex替换
      3.5  Native Hook概述
      3.6  Inline Hook
        3.6.1  Inline Hook的实现原理
        3.6.2  Inline Hook的优缺点
        3.6.3  ARM64架构下Inline Hook实现
        3.6.4  ARM32/ARM64 Hook差异
        3.6.5  Inline Hook Dobby
      3.7  GOT Hook
        3.7.1  GOT/PLT
        3.7.2  GOT Hook实现原理
        3.7.3  GOT Hook的优缺点
        3.7.4  bhook实现
      3.8  异常Hook
        3.8.1  Linux基础知识
        3.8.2  异常Hook原理概述
        3.8.3  异常Hook实现原理
        3.8.4  异常Hook的优缺点
        3.8.5  SandHook的异常Hook实现分析
      3.9  硬件断点Hook
        3.9.1  硬件断点Hook的原理与流程
        3.9.2  硬件断点Hook的优缺点
        3.9.3  硬件断点Hook的实现思路
    第4章  Android设备指纹
      4.1  Android设备指纹衡量标准
      4.2  Android设备指纹使用场景
      4.3  Android设备指纹发展史
        4.3.1  第一代:单一或少数关键字段
        4.3.2  第二代:多字段聚合与加权
        4.3.3  第三代:模型化与智能识别

      4.4  Android设备指纹分类
      4.5  AndroidSystemService指纹
        4.5.1  Settings.Secure
        4.5.2  系统设置相关
        4.5.3  蓝牙相关
        4.5.4  IMEI(International Mobile Equipment Identity)
        4.5.5  IMSI(International Mobile Subscriber Identity)
        4.5.6  ICCID(Integrated Circuit Card Identifier)
        4.5.7  LineNumber(手机号码)
        4.5.8  第三方系统账号
        4.5.9  App包相关信息
      4.6  Android Kernel指纹
        4.6.1  网络MAC地址
        4.6.2  serial_number(SoC序列号)
        4.6.3  IPv6与IPv4
        4.6.4  系统文件信息
      4.7  系统属性
        4.7.1  开机时间
        4.7.2  历史开机时间
        4.7.3  getprop底层实现原理介绍
        4.7.4  解析/dev/__properties__属性获取
      4.8  Android第三方厂商指纹
        4.8.1  OAID
        4.8.2  AAID
      4.9  Android DRM指纹
      4.10  其他手机硬件指纹
        4.10.1  传感器相关设备指纹
        4.10.2  电池相关设备指纹
      4.11  跨平台协同指纹
        4.11.1  WebView与JavaScript的深度联动
        4.11.2  原生与Web环境特征融合
        4.11.3  BLE设备扫描与特征提取
        4.11.4  Wi-Fi Direct设备图谱构建
      4.12  Android高版本设备指纹策略介绍
        4.12.1  Android文件信息矩阵
        4.12.2  Android App矩阵
      4.13  Android设备指纹展望
        4.13.1  运营商/手机卡参与的多维度指纹
        4.13.2  跨应用/跨平台协同与数据融合
        4.13.3  AI驱动的指纹模型升级
        4.13.4  芯片级与TEE级别的可信指纹
        4.13.5  隐私与合规的新平衡
    第5章  Android设备风险环境检测
      5.1  什么是设备风险环境
      5.2  常见设备风险环境分类
        5.2.1  Root环境
        5.2.2  Hook风险
        5.2.3  自定义ROM
        5.2.4  虚拟化技术
        5.2.5  应用重打包

        5.2.6  模拟执行
      5.3  系统调用
      5.4  签名检测
        5.4.1  Java层签名检测
        5.4.2  Native层签名检测
        5.4.3  签名检测展望与系统级别检测
      5.5  Root检测
        5.5.1  Android Root进化史
        5.5.2  内核Root
        5.5.3  boot.img完整性与BL解锁检测
        5.5.4  Root检测常见手段
      5.6  Hook检测
        5.6.1  Java Hook检测
        5.6.2  Native Hook检测
      5.7  自定义ROM的检测
        5.7.1  系统文件检测
        5.7.2  机型伪造检测
        5.7.3  系统编译信息与时间戳分析
        5.7.4  其他系统属性与路径检测
        5.7.5  特征文件检测
        5.7.6  对抗与注意事项
      5.8  模拟器检测
        5.8.1  模拟器、云手机与云真机概述
        5.8.2  模拟器与云手机检测方案
      5.9  沙箱检测
      5.10  模拟执行框架检测
        5.10.1  通用检测思路
        5.10.2  Unidbg检测
      5.11  Hook框架特征检测
        5.11.1  Frida检测
        5.11.2  Xposed系列框架检测
      5.12  系统基础环境检测采集列表
        5.12.1  系统服务列表
        5.12.2  getprop列表
        5.12.3  主进程启动时打开的FD(文件描述符)列表
        5.12.4  环境变量
        5.12.5  挂载文件/命名空间检测
        5.12.6  时间及时区信息
        5.12.7  CPU/内存/设备硬件信息
        5.12.8  进程信息
        5.12.9  其他可采集的辅助信息
      5.13  Android ISO服务与安全检测
        5.13.1  Android ISO服务的典型使用场景
        5.13.2  Android ISO服务与安全检测的深度结合
        5.13.3  Android ISO服务对抗Hook框架的优势
        5.13.4  系统级防护示例
        5.13.5  Android ISO服务检测实践建议
      5.14  内核注入外挂原理
        5.14.1  内核注入外挂的运作原理
        5.14.2  为什么内核注入外挂难以检测

        5.14.3  针对内核注入外挂的检测与对抗方法
        5.14.4  DMA外挂介绍
        5.14.5  mseal系统调用介绍
    第6章  Android设备指纹攻、防介绍
      6.1  改机概念与黑产常用手段
      6.2  Magisk模块的开发与入门
        6.2.1  Magisk模块能做什么
        6.2.2  HelloWorld Magisk模块示例
        6.2.3  Magisk模块与LSPosed的区别
        6.2.4  Magisk模块开发指南
      6.3  APatch模块的开发与入门
        6.3.1  APatch与内核模块的区别
        6.3.2  APatch环境准备
        6.3.3  APatch模块的基本结构
        6.3.4  APatch示例详解
        6.3.5  APatch模块maps与mount文件隐藏实现
        6.3.6  APatch与KernelPatch特性小结
      6.4  黑产改机原理介绍
        6.4.1  目标进程注入
        6.4.2  非目标进程注入
        6.4.3  为什么黑产更青睐系统服务/内核层改机
        6.4.4  多种改机手段示例
        6.4.5  安全建议与资源
    第7章  Android系统调用拦截
      7.1  ptrace详解
        7.1.1  ptrace工作流程与关键步骤
        7.1.2  ptrace常见用法与注意事项
      7.2  seccomp与ptrace配合
        7.2.1  seccomp的概念
        7.2.2  seccomp+ptrace
      7.3  proot
        7.3.1  proot的原理
        7.3.2  proot的使用场景
        7.3.3  proot的优势
        7.3.4  proot拦截SVC源码解读
      7.4  eBPF 介绍:内核级可编程框架
        7.4.1  什么是BPF/eBPF
        7.4.2  eBPF与seccomp-bpf/ptrace的关系
        7.4.3  eBPF对系统调用的拦截原理
        7.4.4  在Android上使用eBPF
        7.4.5  eBPF简单示例:捕获openat系统调用
      7.5  任意进程注入Hook
    第8章  客户端风控介绍
      8.1  客户端风控的意义和目标
        8.1.1  保障业务安全
        8.1.2  提升用户体验
        8.1.3  降低运营成本
      8.2  风控等级介绍
        8.2.1  高风险
        8.2.2  中风险

        8.2.3  低风险
        8.2.4  无风险
      8.3  服务端风控的核心思路
      8.4  特征挖掘
      8.5  聚集性分析
      8.6  请求频率与异常流量控制
      8.7  埋点分析与用户行为监控
      8.8  用户行为画像
      8.9  “查杀分离”策略
      8.10  结合客户端与服务端的协同防控
      8.11  边缘计算与风控
        8.11.1  边缘计算在风控中的优势
        8.11.2  边缘计算典型应用场景
        8.11.3  边缘计算风控的挑战
    第9章  Android攻防未来展望
      9.1  系统级别的安全增强
      9.2  设备指纹的加强
      9.3  应用安全的提升
        9.3.1  增强的应用签名和验证
        9.3.2  动态分析和行为监控
        9.3.3  更智能的权限管理
      9.4  新技术和方法
        9.4.1  机器学习(ML)和人工智能(AI)
        9.4.2  区块链技术
        9.4.3  零信任架构
        9.4.4  边缘AI与联邦学习
      9.5  量子计算对移动安全的影响
        9.5.1  量子攻击的威胁
        9.5.2  后量子加密(Post-Quantum Cryptography,PQC)
        9.5.3  量子密钥分发(Quantum Key Distribution,QKD)
        9.5.4  6G网络的安全挑战
      9.6  人工智能在移动安全中的未来应用
    第10章  漏洞库与CVE分析
      10.1  提权漏洞
        10.1.1  Root提权漏洞
        10.1.2  系统App权限提权漏洞
      10.2  设备指纹相关漏洞
        10.2.1  CVE-2021-0641
        10.2.2  CVE-2021-0643
        10.2.3  CVE-2021-0644
        10.2.4  CVE-2021-0653
        10.2.5  CVE-2021-0428
        10.2.6  CVE-2021-25344
        10.2.7  CVE-2021-25358
        10.2.8  CVE-2021-25515
        10.2.9  CVE-2022-22272
        10.2.10  CVE-2020-14105
      10.3  其他历史经典漏洞