Dismember 是一个用于 Linux 的命令行工具包,可用于扫描所有(或特定)进程的内存,查找常见秘密和自定义正则表达式等内容。
最终它将成为一个完整的 /proc 工具包。

使用 grep 命令,它可以在所有(可访问的)进程的内存中匹配正则表达式。这可以用于在内存中查找敏感数据,通过进程内存中包含的内容来识别进程,或者从进程内存中查询有趣的信息。
通过 scan 命令内置了许多模式,它实际上就像一个针对您机器内存的秘密扫描器。
Dismember 可以搜索它有权访问的所有进程的内存,因此以 root 身份运行是最有效的方式。
还包括列出进程、查看进程状态及相关信息、绘制进程树等命令……
| 命令 | 描述 |
|---|---|
grep | 在进程内存中搜索给定的字符串或正则表达式 |
scan | 在进程内存中搜索一组预定义的秘密模式 |
从最新版本获取二进制文件并将其添加到您的路径中。
# 搜索进程 1234 拥有的内存
dismember grep -p 1234 'the password is .*'
# 在名为 "nginx" 的进程内存中搜索登录表单提交
dismember grep -n nginx 'username=liamg&password=.*'
# 在所有进程中查找 GitHub API 令牌
dismember grep 'gh[pousr]_[0-9a-zA-Z]{36}'
# 搜索所有可访问内存中的常见秘密
dismember scan
这些信息不都在
/proc里吗?
差不多。Dismember 大部分情况下只是读取并呈现它们。如果你能直接用 grep whatever /proc/[pid]/blah 搞定,那就用吧!我构建这个工具是出于学习目的,因为有一天晚上我睡不着,熬夜阅读了 proc 的手册页(我的生活极其摇滚)。它并不是现有工具的替代品,但或许可以成为它们的补充。
你知道其中一些命令在脱离上下文时读起来有多恐怖吗?
知道。
| 命令 | 描述 |
|---|
files | 显示进程正在访问的文件列表 |
find | 根据进程名称查找 PID。如果匹配多个进程,则返回第一个。 |
info | 显示进程的信息 |
kernel | 显示内核的信息 |
kill | 使用 SIGKILL 杀死一个(或多个)进程 |
list | 列出系统上当前可用的所有进程 |
resume | 使用 SIGCONT 恢复一个挂起的进程 |
suspend | 使用 SIGSTOP 挂起一个进程(使用 'dismember resume' 使其脱离挂起状态) |
tree | 显示一个进程及其所有子进程的树形图(默认为 PID 1)。 |