最近公司被入侵了,并且留下了ssh后门,因此必须得重装openssh,但是一重装的话,之前的连接就会断开,要是这样的话,远程连接就连不上了,面临的问题恐怕就只有到机房去安装了,要是公司离机房较远的话,就是一个大问题了,因此可以使用dropbear来暂时替代openssh,使用dropbear来连接服务器,来对openssh进行重装。ssh后门使sshd文件被替换,系统一些常用的关键的命令也被替换。(可以使用lsattr来查看隐藏的属性:lsattr /bin /sbin /usr/bin /usr/sbin等目录!)
首先发几张图片供大家欣赏:
sshd问题文件,被替换了!!正常情况下应该是在/etc目录,而不是/usr/etc目录,请注意!!!!
下载安装dropbear:http://matt.ucc.asn.au/dropbear/dropbear-0.52.tar.gz
先简单介绍一下:dropbear是一个免费的开源软件,最新版本为0.52版的,而且还是2008年发布的,到现在好像也没更新了,他比openssh小,且运行时只运行一个进程,而不是openssh的两个进程,因此比openssh占的资源小,至于安全性来说,本人不知道怎样,因此只用来作为临时的ssh连接软件,必定openssh用的较为广泛且安全性较高!!!
在安装dropbear之前需,需先安装zlib: yum install zlib*
先改一下openssh的端口吧,以免被dropbear占用:
vi /etc/ssh/ssh_config
找到Port 22 换成Port 2211 (自己随便设置)
然后service sshd restart即可,netstat查看连接端口已由22变成了2211
tar -xvzf dropbear-0.52.tar.gz
cd dropbear-0.52
./configure
make
makeinstall
生成的dropbear执行文件为:
dropbear: ssh2 server
dropbearkey: 密钥生成器
dropbearconvert: 可以转换openssh的密钥
dbclient: ssh2 client
配置dropbear:
生成ssh连接所需要的公钥,如下:
/usr/local/bin/dropbearkey -t dss -f /etc/dropbear/dropbear_dss_host_key (dss加密,长度默认为1024,而且只能是这么多)
或者:/usr/local/bin/dropbearkey -t rsa -s 4096 -f /etc/dropbear/dropbear_rsa_host_key (rsa加密,长度可以自己设,1024的倍数) --不生成密钥或者公钥,dropbear将无法启动。
(RSA: RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n 至少也要 600 bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式标准化。)
(DSA)是Schnorr和ElGamal签名算法的变种,被美国NIST作为DSS
(Digital Signature Standard)。
DSA:是基于整数有限域离散对数难题的,其安全性与RSA相比差不多。DSA的一个重要特点是两个素数公开,这样,当使用别人的p和q时,即使不知道私钥,你也能确认它们是否是随机产生的,还是作了手脚。RSA算法却作不到。
启动dropbear:
/usr/local/sbin/dropbear
启动后的端口为22。
dropbear默认的安装路径是:/usr/local/sbin
如果想监听特定的端口,按如下格式执行,如果不加此参数则会监听默认端口:
usr/local/sbin/dropbear –p 1984
更改默认监听的端口方法:
在编译dropbear之前,编辑options.h更改端口即可。
想查看dropbear的使用,可以执行:
/usr/local/sbin/dropbear -h
在安装完成之后就可以重新安装openssh了,可以使用yum安装,比较方便。之后就是去除那些后门文件,并更换正常的系统命令文件. yum install net-tools可以将ls ,ps 等关键命令重装。
涉及到一些ssh后门程序,本文就不提供了,感兴趣的可以上网查找,这里只提供名字:mafix,shv4, shv5。中了此木马程序之后,会生成ttyload和ttymon进程,作为ssh连接的入口,只要看到此进程了需注意了!!!
完毕!!!
本文转自 zhangzj1030 51CTO博客,原文链接:http://blog.51cto.com/tech110/458115