作者 | 轩辕之风O

来源 | 编程技术宇宙(ID:xuanyuancoding)

本故事根据上次的挖矿病毒事件改编。

傍晚时分,警报声乍起,整个Linux帝国都陷入了惊恐之中。

安全部长迅速召集大家商讨应对之策。

“诸位,突发情况,CPU占用率突然飙升,并且长时间没有降下来的趋势,CPU工厂的阿Q向我们表达了强烈抗议”

这时,一旁的kill命令说到:“部长莫急,叫top老哥看一下谁在占用CPU,拿到进程号pid,我把他干掉就好了”

此言一出,在座的大伙都点头赞许,惊恐之色稍解。

top命令站了起来,面露得意之色,说到:“大家请看好了”,说完,打印出了当前的进程列表:

众人瞪大了眼睛,瞅了半天,也没看出哪个进程在疯狂占用CPU,top老哥这下尴尬了。

这时,一旁的ps命令凑了上来,“让我来试试”

ps命令深吸了一口气,也打印出了进程列表。

然而,依旧没有任何可疑的进程。

“你俩怎么回事,为什么没有?”,安全部长有些不悦。

“部长,我俩都是遍历的 /proc/ 目录下的内容,按理说,所有的进程都会在这里啊,我也想不通为什么找不到···”,top老哥委屈的说到。

“遍历,怎么遍历的?”

“就是通过opendir/readdir这些系统调用函数来遍历的,这都是帝国提供的标准接口,应该不会出错,除非......”,说到这,top打住了。

“除非什么?”

“除非这些系统调用把那个进程给过滤掉了,那样的话我就看不到了,难道有人潜入帝国内核,篡改了系统调用?”

安全部长瞪大了眼睛,真要如此,那可是大事啊!

眼看部长急的团团转,一旁的netstat起身说到:“部长,我之前结识一好友,名叫unhide,捉拿隐藏进程是他的拿手好戏,要不请他来试试?”

部长大喜,“还犹豫什么,赶紧去请啊!”

“已经联系了,随后就到”。

部长看着netstat,说到:“正好,趁着这个功夫,你先来看看现在有没有对外可疑的连接”。

netstat点了点头,随后打印出了所有的网络连接信息:

“来来来,你们挨个来认领,看看都是谁的”,部长说到。

“这个80端口的服务是我的”,nginx站了出来。

“这个6379端口服务是我的”,redis也站了出来。

“这个,9200是我的”,elasticsearch说到。

“3306那个是我的”

“8182是我的”

······

一阵嘈杂后,只剩下一个连接无人认领:

tcp   0    0 192.168.0.4:51854      88.99.193.240:7777    ESTABLISHED  -

“部长,这八成就是躲在暗处那家伙的连接”,netstat说到。

安全部长思考片刻问到:“curl何在?来访问下这个IP地址,探探对方虚实”

curl站了出来,“来了来了”

curl小心翼翼的发送了一个HTTP请求过去,对方竟然回信了:

一行醒目的mining poll出现在大家面前。

“挖,挖矿病毒!”,top老哥叫了出来。

这一下,在场所有的人都倒吸了一口凉气。

部长赶紧叫防火墙firewall配置了一条规则,将这条连接掐断。

就在这时,unhide走了进来。

简单了解了情况后,unhide拍拍胸脯说到:“这事交给我了,一定把这家伙给揪出来”

随后,unhide一阵操作猛如虎,输出了几行信息:

Found HIDDEN PID 13053    Executable: "/usr/bin/pamdicks"    $USER=root
Found HIDDEN PID 13064    Executable: "/usr/bin/pamdicks"    $USER=root

众人皆凑了过来,瞪大了眼睛,unhide老哥果然不是盖的,果真发现了几个可疑分子。

top有点表示怀疑,问到:“敢问兄台用的什么路数,为何我等都看不到这几个进程的存在?”

unhide笑道:“没什么神秘的,其实我也是遍历 /proc/ 目录,和你们不同的是,我不用readdir,而是从进程id最小到最大,挨个访问 /proc/$pid 目录,一旦发现目录存在而且不在ps老哥的输出结果中,那这就是一个隐藏进程。”

一旁的ps笑道:“原来还有我的功劳呐”

“找到了,就是这家伙!”,netstat大声说到。

“你怎么这么肯定?”部长问到。

“大家请看,进程打开的文件都会在 /proc/pid/fd 目录下,socket也是文件,我刚看了一下,这个进程刚好有一个socket。再结合/proc/tcp信息,可以确定这个socket就是目标端口号7777的那一条!”

“好家伙!好家伙”,众人皆啧啧称赞。

“还等什么,快让我来干掉它吧!”,kill老哥已经按捺不住了。

“让我来把它删掉”,rm小弟也磨刀霍霍了。

部长摇头说到:“且慢,cp何在,把这家伙先备份到隔离目录去,以待秋后算账”

cp拷贝完成,kill和rm两位一起上,把背后这家伙就地正法了。

top赶紧查看了最新的资源使用情况,惊喜的欢呼:“好了好了,CPU占用率总算降下去了,真是大快人心”

天色已然不早,没多久,众人先后离开,帝国恢复了往日的平静。

不过,安全部长的脸上,仍然是一脸愁容。

“部长,病毒已经被清除,为何还是闷闷不乐呢?”,助理问到。

“病毒虽已清除,但却不知这家伙是如何闯入的,还有背后暗中保护隐藏它的人又是谁,这实让我在很忧心啊”

不知不觉夜已深,帝国安全警报突然再一次响了起来。

“这又是怎么回事?”,部长厉声问到。

“部长,rm那小子是假冒的,今天他骗了我们,病毒根本没删掉,又卷土重来了!”

部长望向远处的天空,CPU工厂门口的风扇又开始疯狂地转了起来···

☞2021 互联网大厂新年礼盒大比拼!
☞59% 的程序员曾担心自己猝死!2021 国民健康洞察报告发布
☞“六成应用开发不需要程序员”喜提热搜背后,RPA 会抢饭碗吗?☞又双叒叕出事?微信 PC 版被曝扫描用户浏览器 cookies

点分享

点收藏

点点赞

点在看

CPU 深夜狂飙,一帮大佬都傻眼了......相关推荐

  1. CPU深夜狂飙,一帮大佬都傻眼了...

    安全部长迅速召集大家商讨应对之策. "诸位,突发情况,CPU 占用率突然飙升,并且长时间没有降下来的趋势,CPU 工厂的阿 Q 向我们表达了强烈抗议." 这时,一旁的 kill 命 ...

  2. 互联网大佬都是怎么找对象的?

    来源:不凡商业 (ID:bufanbiz) 作者 / 牛油果 本文部分及全部资料来源于网络,如和大佬实际生活状态有出入,以其实际生活状态为准. 找一个好对象,你离大佬一步之遥. 我们不妨先从硅谷的故事 ...

  3. 科技大佬都是怎么找对象的?

    硅谷Live / 实地探访 / 热点探秘 / 深度探讨 本文转载自:不凡商业 (ID:bufanbiz) 作者 / 牛油果 本文部分及全部资料来源于网络,如和大佬实际生活状态有出入,以其实际生活状态为 ...

  4. 为了追求更快,CPU、内存、I/O都做了哪些努力?

    背景 曾经,我面试的时候有两个最怕的.一怕问算法,二怕问高并发. 算法这个,刷了不少LeetCode,发现还是有套路可循的,虽不敢说算法能力有多强,至少没有以前那么怕了(才怪). 而第二个,高性能高并 ...

  5. 被5月GitHub Top20榜单惊呆了 原来区块链大佬都在做这个

    被5月GitHub Top20榜单惊呆了 原来区块链大佬都在做这个 GitHub 上项目的活跃指数,在一定程度上代表了这个项目的开发状态. 频繁更新代码的项目有可能正处于构建和完善中,而停止更新代码的 ...

  6. 为何大佬都愿意为“996”站台?中国的程序员活该加班?

    为何大佬都愿意为"996"站台?中国的程序员活该加班? 这是一个很现实的问题,先后有很多人出来为国内互联网企业的"996"工作制站台,其中最大牌的莫过于马云了, ...

  7. ❤️大佬都在学什么?Python爬虫分析C站大佬收藏夹,跟着大佬一起学, 你就是下一个大佬❤️!

    ❤️大佬都在学什么?Python爬虫分析C站大佬收藏夹,跟着大佬一起学,你就是下一个大佬❤️! 前言 程序说明 数据爬取 获取 CSDN 作者总榜数据 获取收藏夹列表 获取收藏数据 爬虫程序完整代码 ...

  8. 此人才是最强的创客,马化腾、李彦宏大佬都望尘莫及

    此人才是最强的创客,马化腾.李彦宏大佬都望尘莫及 文|洪生鹏 01 熟读三国的朋友应该都知道,刘备早年颠沛流离,没有地盘,或者有地盘也未能保住,备尝艰辛,寄人篱下,在成帝业前,曾投靠过很多人.没错,是 ...

  9. 熬夜整理出了70个清华大佬都在用的Python经典练手项目【附源码】

    我们都知道,不管学习那门语言最终都要做出实际的东西来,而对于编程而言,这个实际的东西当然就是项目啦,不用我多说大家都知道学编程语言做项目的重要性. 于是,小编熬了几个通宵,终于整理出了70个清华大佬都 ...

最新文章

  1. Android 游戏开发必备的基础知识
  2. 如何用 Serverless 让 SaaS 获得更灵活的租户隔离、更优的资源开销
  3. sh文件启动java_shell java应用启动脚本(app.sh)
  4. 中国教育电视台的iEnglish英语风采秀 为我们揭示了“双减”的本质目标
  5. C# 温故而知新:Stream篇(六)
  6. 【Python爬虫】知识点简单总结
  7. tomcat安全认证
  8. java jframe 设置背景图片_JAVA怎样设置JFrame的背景图片呢?谁能教教我怎么弄背景图片...
  9. ## CSP 201412-2 Z字形扫描(C语言)(100分)
  10. python命令行解析库——argparse库的使用
  11. 大数据学习入门必备规划
  12. javascript延时调用函数
  13. Laplace锐化算子和LOG算子
  14. 计算机主板在网卡分配错位,华硕主板如何在bios里关闭网卡启动
  15. 无利不起早:理性看待IBM倾“芯”中国
  16. 打造自己的图像识别模型
  17. 使用翻译的neko模块
  18. 企业项目化管理【一】:项目管理软件选型指南
  19. 广州住房公积金提取、变更的步骤
  20. 基于C++的坦克动荡游戏

热门文章

  1. 【LeetCode系列】从中序与后序遍历序列构造二叉树 从前序与中序遍历序列构造二叉树...
  2. 【最新综述】轻量级神经网络架构综述
  3. 超越MobileNetV3!Facebook提出更轻更快的FBNetV2
  4. 2019 AI Index 报告出炉:AI 领域取得的进展很多,但结果忧喜参半
  5. SAP QA32试图做UD,系统报错-工厂 BTYC中的 QM 基选设置需要维护
  6. 人工智能科普|极大似然估计——机器学习重要知识点
  7. SAP MM 没有录入盘点结果的盘点凭证不能执行MI07
  8. Tensorflow—继续优化,使MNIST准确率98%以上
  9. 深入理解pytorch中计算图的inplace操作
  10. print(__doc__)