Token导航 LogoToken导航TokenDH.com
Droid Forensics Suite logo
运维云端stdio官方级别未说明来源级核验

Droid Forensics Suite

MCP Server

一个用于通过Android调试桥(ADB)获取Android设备取证数据的全面模型上下文协议(MCP)服务器,专为具有适当授权和同意的法医调查人员设计。

工具数

10

提示词数

0

GitHub Stars

5

资源数

0
PythonClaude设备管理Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

0x-Professor

提供方

0x-Professor

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run mcp dev main.py

详细介绍

安卓取证ADB MCP服务器

一个全面的模型上下文协议(MCP)服务器,用于使用Android调试桥(ADB)进行Android设备取证数据采集。该工具是为获得适当同意和授权的法医调查人员设计的。

⚠️ 法律声明

此工具用于 仅授权法医调查用户必须具备:

  • 访问设备的合法授权
  • 设备所有者的书面同意
  • 遵守当地法律法规
  • 适当的监管链文件

未经授权访问设备是非法和不道德的。

特性

核心能力

  • 设备管理:通过ADB连接和管理Android设备
  • 安全命令执行:为安全起见,将shell命令列入白名单
  • 完整设备备份:创建完整的设备备份(.ab格式)
  • 备份提取:将Android备份(.ab)转换为TAR格式(adb备份提取的Python端口)
  • 数据采集:拉取特定文件和目录
  • 法医文物收藏:自动收集常见法医文物
  • 元数据和保管链:自动生成取证元数据

MCP工具可用

  1. check_ad_状态:验证ADB的安装和可用性
  2. adb设备:列出所有已连接的Android设备
  3. adb_connect_device:连接到特定设备
  4. adb_shell_命令:执行白名单shell命令
  5. get_device_info:获取全面的设备信息
  6. list_installed_packages:列出所有已安装的应用程序
  7. adb_backup_device:创建完整设备备份
  8. adb_pull_data:从设备中提取文件/文件夹
  9. 提取备份:将.ab备份提取为TAR格式
  10. 收藏、研究、艺术:自动工件收集

先决条件

所需软件

  1. Python 3.13+:MCP服务器需要
  1. Android平台工具:安装ADB

- 下载:https://developer.android.com/tools/releases/platform-tools - 添加到系统PATH

  1. UV包装管理器:已在您的环境中配置

Android设备要求

  • USB调试已启用(设置→ 开发人员选项→ USB调试)
  • 数据采集过程中设备解锁
  • USB电缆连接或网络ADB连接

安装

  1. 安装依赖项:
uv sync
  1. 验证ADB安装:
adb version
  1. 测试服务器:
uv run mcp dev main.py

用法

运行服务器

开发模式(配备MCP检查员)

uv run mcp dev main.py

生产模式(克劳德桌面集成)

uv run mcp install main.py --name "Android Forensics"

Claude桌面配置

添加 claude_desktop_config.json:

{
  "mcpServers": {
    "android-forensics": {
      "command": "uv",
      "args": [
        "--directory",
        "u:\\adb-connect",
        "run",
        "main.py"
      ],
      "env": {
        "PYTHONUNBUFFERED": "1"
      }
    }
  }
}

示例工作流

1.基本设备连接

1. Check ADB status: check_adb_status()
2. List devices: adb_devices()
3. Connect to device: adb_connect_device(device_id="DEVICE_SERIAL")
4. Get device info: get_device_info(device_id="DEVICE_SERIAL")

2.完整设备备份

1. Create backup:
   adb_backup_device(
       output_file="evidence_backup.ab",
       device_id="DEVICE_SERIAL",
       include_apk=True,
       include_shared=True,
       all_apps=True
   )

2. Extract backup:
   extract_backup_to_tar(
       backup_file="evidence_backup.ab",
       output_tar="evidence_backup.tar",
       password="optional_password"
   )

3.收集法医文物

collect_forensic_artifacts(
    output_dir="./forensic_evidence",
    device_id="DEVICE_SERIAL"
)

4.执行Shell命令

adb_shell_command(
    command="pm list packages",
    device_id="DEVICE_SERIAL"
)

安全功能

命令白名单

只允许使用以下shell命令:

  • 文件操作: ls, cat, pwd, find, du, df
  • 系统信息: getprop, dumpsys, uname, date, uptime
  • 包管理: pm, am
  • 流程管理: ps, top
  • 网络: netstat, ip, ifconfig
  • 日志: logcat
  • 设置: settings, content
  • 屏幕: screencap, wm

验证

  • 命令在执行前经过验证
  • 壳牌运营商(;, &&, ||, |)已检查
  • 超时限制防止挂起进程
  • 所有操作的错误处理

备份提取详细信息

extract_backup_to_tar 该工具是Python实现的 adb备份提取 项目。

支持的功能

  • ✅ 未加密的备份
  • ✅ 加密备份(带密码)
  • ✅ 压缩备份(zlib)
  • ✅ AES-256解密
  • ✅ PBKDF2密钥推导

备份文件格式

Android备份(.ab)具有以下结构:

ANDROID BACKUP\n
version\n
compressed (0 or 1)\n
encryption (none or AES-256)\n
[encryption metadata if encrypted]
[compressed/encrypted data]

法医最佳实践

监管链

所有操作都会生成元数据,包括:

  • 时间戳(ISO 8601格式)
  • 设备序列号
  • 已执行操作
  • 调查员信息
  • 文件哈希(如适用)

证据收集

  1. 记录一切:使用 get_device_info() 第一
  2. 创建完整备份:使用 adb_backup_device() 完全收购
  3. 哈希证据:计算所有收集文件的SHA-256哈希值
  4. 维护日志:保留所有命令输出和错误
  5. 撰写保护证据:立即将备份存储为只读

推荐工作流程

1. Connect device and verify connection
2. Document device information
3. Take screenshots of device state
4. Create full backup
5. Extract backup to TAR
6. Collect specific artifacts
7. Generate forensic report
8. Calculate and document all hashes
9. Store evidence securely

故障排除

未找到ADB

# Windows: Add to PATH or use full path
$env:PATH += ";C:\path\to\platform-tools"

# Verify
adb version

未检测到设备

  1. 在设备上启用USB调试
  2. 在设备上接受RSA指纹
  3. 尝试不同的USB电缆/端口
  4. 检查 adb devices 输出

备份失败

  1. 确保设备已解锁
  2. 在设备屏幕上确认备份
  3. 检查可用存储空间
  4. 某些应用程序可能会阻止备份

权限不足

  • 许多取证工件需要root访问权限
  • 使用 adb root 如果设备已获得root权限
  • 考虑使用TWRP恢复进行完全访问

建筑

项目结构

adb-connect/
├── main.py              # MCP server implementation
├── pyproject.toml       # Dependencies and configuration
├── README.md           # This file
└── .python-version     # Python version specification

关键组件

  1. MCP服务器:基于FastMCP的服务器,带有工具注册功能
  2. ADB包装器:使用子进程安全执行命令
  3. 备份提取器:基于密码学的.ab到.tar转换器
  4. 法医收藏家:自动工件采集
  5. 元数据生成器:监管链文件

依赖项

  • mcp\[cli\] >=1.19.0:模型上下文协议SDK
  • 密码学 >=43.0.0:备份解密(AES-256、PBKDF2)
  • 皮丹提克 >=2.0.0:数据验证和序列化

贡献

这是一种取证工具——贡献应优先考虑:

  1. 安保和安全
  2. 法律遵循
  3. 证据完整性
  4. 文档的质量

参考文献

许可证

MIT许可证-有关详细信息,请参阅许可证文件。

免责声明

该工具仅用于合法的法医调查。作者和贡献者不对任何滥用或非法活动负责。在访问任何设备之前,始终确保您有适当的授权。

______________________________________________________________________

供法医调查部门使用:该工具旨在支持您的授权调查,同时充分尊重法律要求和监管链程序。

目录标签

目录标签

PythonClaude设备管理Android取证本地部署数据采集法医调查ADB工具

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP