我在大学期间写了这个
针对已获取 root 权限的服务器,从处理基于密码认证的 sshd 和 sudo 系统调用中读取内存。不会向被跟踪的进程写入任何内存。每次运行 sshd 和 sudo 命令时都会生成一个新进程。
使用 netlink 套接字监听 proc 事件以获取可跟踪的候选进程。当接收到 sshd 或 sudo 进程时,附加 ptrace 并跟踪 read 和 write 系统调用,提取与基于密码认证相关的字符串。
不太喜欢给 openssh 植入后门或在目标服务器上安装内核模块的解决方案,所以我做了这个。

make
./3snake -h
./3snake
在当前终端运行
./3snake
守护进程化并将输出转储到文件
./3snake -d -o "/tmp/output_file.txt"
位于 config.h
passwd 密码更改Linux,启用 ptrace,挂载 /proc 文件系统
| 功能 | X |
|---|---|
| OpenSSH 服务器密码认证 | X |
| sudo | X |
| su | X |
| 从进程提取正则字符串 | ~ |
| ssh 客户端 | X |
MIT 以及 我在大学期间写了这个