【Tips+1】Linux持久化—strace监听ssh来源流量

admin 2023年11月27日11:24:45评论13 views字数 901阅读3分0秒阅读模式

实现原理

strace 是一个用于跟踪系统调用和信号的实用工具,它可以在程序执行期间监视和记录系统调用的详细信息。在网络攻防中,通常被攻击者用于记录ssh来源流量,从流量中获取ssh明文密码,从而对内网进行横向渗透或者达到一个权限持久化的效果。

操作步骤

1、查看sshd进程PID

ps -ef | grep sshd #父进程pid

【Tips+1】Linux持久化—strace监听ssh来源流量

2、使用strace 抓取流量

strace -f -p 2785 -o /tmp/.ssh.log -e trace=read,write,connect -s 2048

【Tips+1】Linux持久化—strace监听ssh来源流量

以下是该命令的各个选项的解释:

  • -f
    • 表示跟踪由被跟踪进程(以及由它创建的子进程)执行的系统调用。这是递归跟踪的选项,包括子进程。
  • -p 1098
    • 指定要跟踪的进程的进程号。在这里,进程号是 1098。
  • -o /tmp/.ssh.log
    • 指定 strace 的输出文件路径。这里的输出文件是 /tmp/.ssh.log
  • -e trace=read,write,connect
    • 指定要跟踪的系统调用类型,这里是 read(读取)、write(写入)和 connect(连接)。这意味着 strace 会记录这个进程执行的这三种类型的系统调用。
  • -s 2048
    • 设置 strace 输出的字符串长度上限为 2048 字节。这个选项用于限制 strace 输出中字符串的长度,以防止输出过长。

3、测试,我们使用kali 进行登录

在被控机器上连接ssh,随后查看密码是否被记录

【Tips+1】Linux持久化—strace监听ssh来源流量

可以看到成功抓取到流量。

【Tips+1】Linux持久化—strace监听ssh来源流量

如何排查

检查运行中的 strace 进程:

  • 使用以下命令检查系统上是否有正在运行的 strace 进程:
pgrep strace
或
ps aux | grep strace
  • 这将显示与 strace 相关的进程列表。

【Tips+1】Linux持久化—strace监听ssh来源流量

查看 strace 进程的命令行参数:

ps -p <进程号> -o cmd
使用 ps 命令查看 strace 进程的命令行参数,以获取更详细的信息

ps -p <strace 进程号> -o ppid= | xargs ps -p -o cmd=
获取 strace 进程的父进程号,并查看该父进程的命令行参数,以了解哪个进程启动了 strace。

【Tips+1】Linux持久化—strace监听ssh来源流量

【Tips+1】Linux持久化—strace监听ssh来源流量

 

 

原文始发于微信公众号(贝雷帽SEC):【Tips+1】Linux持久化—strace监听ssh来源流量

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年11月27日11:24:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【Tips+1】Linux持久化—strace监听ssh来源流量http://cn-sec.com/archives/2242342.html

发表评论

匿名网友 填写信息