专栏首页北京马哥教育记一次Linux系统被入侵的排查过程

记一次Linux系统被入侵的排查过程

事件起因

一天晚上,我准备与朋友通话,突然发现电脑上QQ自动离线,然后又自动登录,还以为QQ被盗了。

电话完后,发现是网络不稳定引起的,由于小区宽带上个月才进电信光纤网,存在一些不稳定因素,是可以理解的。

但是我发现居然连普通的百度都打不开了!

几分钟后,我冷静了下来,准备看看是不是附近有人赠我的网,把我的带宽用完了。

果断登录路由器发现我的Linux虚拟机居然占用了所有的上行流量,事态趋向严重了:我的Linux机器被人中了木马。

开始排查:

1.ps和top上场

ps命令发现其中有两个随机英文名程序,应该不是我自己的程序。使用top命令发现如下图:

尝试kill掉这两个进程,几秒内,路由器显示带宽使用率下来了,但不幸的是,马上又恢复了我打电话期间的状态。好吧,看来还有后台程序会自动生成。

2.禁用虚拟机网卡

此步中我将虚拟机网上改成vmnet host only模式,让它暂时不能连接互联网,恢复家庭网络。同时将虚拟机网卡IP设置成与vmware虚拟网卡同一网段,以方便ssh工具进行连接。

3.查看程序所在路径

查找程序路径:ls /proc/进程号/exe,然后再次kill掉进程,又会生成一个新的进程名,发现路径也是随机在PATH变量的路径中变换,有时在/bin目录,有时在/sbin,有时在/usr/bin目录中。

看来还有后台主控程序在作怪,继续查找。

4.尝试查找跟踪程序

查看/bin /sbin /usr/bin等目录下是否存在以.开头的文件名,发现不少,而且部分程序移除后会自动生成。

这说明还没找到主控程序。

此时我好奇心发作,想用strace 跟踪程序看有什么特殊没有,结果发现系统还未安装strace命令,此时虚拟机不可能联网安装,只能将光盘挂载到系统中去,创建本地yum源进行安装:

好了,接下来跟踪一下:strace /bin/hzqzqdmatu

结果意外出现了,我跟踪下这个程序,结果它居然自杀了(把自己进程文件干掉了),算你狠!!!

然后想用netstat看下网络连接情况,结果居然查不到任何对外的网络连接,开始怀疑命令被修改过了。

使用stat 查看系统命令ps ls netstat ps pstree等等,修改时间都在6月24日,也就是在6天内,这让我猛然想起传说中的rootkit用户态级病毒!!!!

有可能是之前设置了root密码为123456,又把机器放到过公网上,被人入侵了。

来,查一把它在相关路径中还放了哪些程序:

我尝试把这些程序都删除掉,但几秒后又会自动生成的,所以我们继续向真相进军!

5.删除程序重启系统

我以迅雷不及掩耳之势暴力删除了所有6天前的程序,并强制断电虚拟机,重启。

不幸的是,系统重启后,程序还是好端端的运行起来了。

看来它还有启动项:

好家伙,这么多,所有运行级别都设置了启动项。

继续再来一次删除,暴力重启:

重启完后,用top指令查看,CPU使用也不高了,哈哈,居然就这样被干掉了?

我还在想你是不是会在系统常用命令中,如ls ps 中隐藏启动进程,一旦执行又会拉起木马程序呢~

再查看下系统中是否创建了除root以外的管理员账号:

结果发现只输入了root这一个用户,说明系统用户是正常的。

其实,当系统被感染rootkit后,系统已经变得不可靠了,唯一的办法就是重装系统了。

在这里,作为一名向往白帽hacker的果哥,我们还是演示下如何修复下其命令程序,我的系统是CentOS 6.8:

基本思想:我们找出常用命令所在的rpm包,然后强制删除之,再通过本地yum源进程安装

好了,再重启下系统看看。

其实到这里,我们仅仅是通过一些简单的命令和对系统的掌握情况进行了问题定位和排除,我们还没有对系统日志/var/log/messages /var/log/secure进行排查,hacker就已经投降了。

所以遇到问题并不可怕,可怕的是我们没有一颗敢于去解决问题的心,其次,等到问题发生了,再学习可就晚了,不要忘了每天学习积累经验哦,也许哪天你就用上了呢 Good good study,day day up!

本文分享自微信公众号 - 马哥Linux运维(magedu-Linux),作者:果子

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-03-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 你的Linux服务器被黑了?看一看是不是犯了这5点错

    本文由马哥教育Linux云计算面授班24期学员推荐,转载自互联网,作者为高俊峰,Linux资深技术专家,畅销书籍《循序渐进Linux》、《高性能Linux服务器...

    小小科
  • MySQL入门书籍和方法分享

    1、SQL入门 在准备成为MySQL DBA之前,能熟练的编写SQL是一个必要条件。exists 和 join之间的等价转换;基本的行列转换;SQL 循环等的熟...

    小小科
  • linux系统被入侵后处理实战

    作者 李振良 | 来源 51cto 糖豆贴心提醒,本文阅读时间8分钟,文末有秘密! ? 事件背景 操作系统:Ubuntu12.04_x64 运行业务:公司...

    小小科
  • 【Rust日报】2019-12-12 用 Rust 实现一个 RISC-V OS 系列博客更新

    这是 《The Adventures of OS》 系列的 3.2 章节,主要讲述内存管理单元。

    MikeLoveRust
  • 无服务器云函数python实时新闻爬虫(自带api网关)

    https://github.com/birdsofsummer/news_spider

    用户1348396
  • 豌豆荚的老团队,做了一款「反头条」的内容类小程序

    知晓君
  • 区块链钱包开发,多币种钱包系统开发公司

    目前咱们市面上的一些区块链钱包大多都是单币种钱包,就像是比.特.币的钱包或者是以.太.坊的钱包。这类钱包主要是用于储存币,而且仅仅只能储存这单一的一个币种,如果...

    v13823115027
  • HLS仍为自适应码率流媒体主导标准

    https://www.encoding.com/blog/2019/04/04/encoding-com-releases-its-2019-global-m...

    LiveVideoStack
  • 开放数据指数2014发布

    大数据文摘
  • 谈谈SAAS模式

    什么是SAAS 软件即服务英文是Software-as-a-service的意译。国外称为SaaS,国内通常叫做软件运营服务模式,简称为软营模式。 SAAS的起...

    cloudskyme

扫码关注云+社区

领取腾讯云代金券