3snake

Tool for extracting information from newly spawned processes

  • 所有者: blendin/3snake
  • 平台:
  • 许可证: Other
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

About

Targeting rooted servers, reads memory from sshd and sudo system calls that handle password based authentication. Doesn't write any memory to the traced processes. Spawns a new process for every sshd and sudo command that is run.

Listens for the proc event using netlink sockets to get candidate processes to trace. When it receives an sshd or sudo process ptrace is attached and traces read and write system calls, extracting strings related to password based authentication.

Don't really like the solution of backdooring openssh or installing a kernel module on target servers so I made this.

3snake

Build

make
./3snake -h
./3snake

Usage

Run in current terminal
./3snake

Daemonize and dump output to file
./3snake -d -o "/tmp/output_file.txt"

Configuration

Located in config.h

  • ROOT_DIR - root directory when daemonized (relative file paths for -o option will end up here)
  • ENABLE_SSH - OpenSSH server password auth
  • ENABLE_SUDO - sudo password auth
  • ENABLE_SU (experimental) - su password auth
  • ENABLE_SSH_CLIENT (experimental) - ssh client password auth

Limitations

Linux, ptrace enabled, /proc filesystem mounted

Todo
---, Features, X, ---------------------------------------------------, -----, OpenSSH server password auth, X, sudo, X, su, X, regex strings from processes, ~, ssh client, X, * Make the process of adding tracers more fluid

  • Yubikey: Ask for second yubikey from end users, OpenSSH
  • Output mode that only shows usernames/passwords

License

MIT

主要指标

概览
名称与所有者blendin/3snake
主编程语言C
编程语言Makefile (语言数: 3)
平台
许可证Other
所有者活动
创建于2018-02-07 21:03:15
推送于2025-05-11 19:15:04
最后一次提交2025-05-11 15:15:03
发布数0
用户参与
星数759
关注者数24
派生数111
提交数39
已启用问题?
问题数8
打开的问题数1
拉请求数6
打开的拉请求数0
关闭的拉请求数1
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?