应急实战(10):Linux后门帐号

news/2024/10/17 18:54:13/

目录

1. Prepare

    1.1 部署安全设备

2. Detect

    2.1 设备产生告警

3. Contain

4. Eradicate

    4.1 删除后门帐号

    4.2 加固弱口令帐号

5. Recover

    5.1 恢复帐号登录

6. Follow-Up

    6.1 修改登录端口

    6.2 开启命令记录

1. Prepare

1.1 部署安全设备

部署主机安全产品:牧云HIDS

fe3755b9922dbd19d0286900234da623.png

2. Detect

2.1 设备产生告警

2024-10-12 01:40:42,牧云产生告警,服务器执行了可疑命令:    

useradd guest -o -u 0 -g 0 -c guest -m -d /home/guest -s /bin/bash -p $1$EwkP89RH$N2zHMdX5wrcpWF9lzD.3k1

864fcf2d6504038630517897a912e158.png

登录牧云,看到源IP地址是法国的217.128.86.8    

1b79bbb1e200b8d15556ebeebd66375e.png

60578021851dfb4fe8a7b6e76daceeb3.png

牧云没有该IP的其他告警    

c71dbf3f66b8d8c866444f46d2497acf.png

境外IP创建系统帐号,基本可确认是真实攻击,需启动应急

3. Contain

无异常网络连接需要遏制

3f991d50cd50ead8126b7de01d198859.png

无异常进程需要遏制    

e058a7117fb3c3171d4be4dbcc13fdf4.png

4. Eradicate

4.1 删除后门帐号 

删除后门帐号:userdel -r guest

产生报错:user guest is currently used by process 1    

c58e1dd5d507750804d01610e33f6f54.png

因为guest帐号的uid和gid是0,所以被1号进程使用很正常

正打算按照https://www.rootop.org/pages/5075.html的方法处理,结果guest帐号不知怎么就自己没了

0534f34c4a7481b396cebb5f0f02fa61.png

4.2 加固弱口令帐号

查看帐号登录情况,发现陕西IP地址106.36.198.78也登录过,整理如下:

1、Oct 12 01:01:29:陕西IP登录root帐号失败1次

2、Oct 12 01:09:50:陕西IP登录root帐号成功1次    

3、Oct 12 01:39:59:法国IP登录root帐号成功1次

4、Oct 13 21:41:42:陕西IP登录root帐号失败2次

由此可猜测,可能是陕西IP爆破出root帐号的弱口令后提供给法国IP,当然也可能是法国IP自己一次就猜中了root帐号的弱口令。

af6320e9c2b2f6a4b52db41c9d5cb26d.png

修改root帐号的弱口令

2fc77fedb50cbc689a8413cfa6c49b1a.png

5. Recover

5.1 恢复帐号登录

基于/etc/shadow的ctime,识别到/etc/ssh/sshd_config也被攻击者篡改过    

666af554a97aac5825074320c86217d3.png

查看/etc/ssh/sshd_config,发现root用户被攻击者设置为禁止登录:DenyUsers root

看来攻击者是怕煮熟的鸭子飞了,顺手帮我加固了弱口令帐号。

163794ad4fd8fc3e54d4f8472c89a445.png

删掉该配置项,就能恢复root帐号登录    

6. Follow-Up

6.1 修改登录端口

暴力破解告警实在太多,不胜其扰

f3fe6772755a9a0ae99bbb4595069503.png

将ssh端口改掉即可

/etc/ssh/sshd_config:Port 22222

systemctl restart sshd

690f2b59e4a80d8263db17eaa4007879.png

6.2 开启命令记录

为有效监控攻击者执行的命令,开启全量命令记录功能

a5c08aa8c667587d8847269f80eb4674.png


http://www.ppmy.cn/news/1539779.html

相关文章

AsyncTask的工作原理和缺陷

AsyncTask的工作原理及其缺陷 AsyncTask是Android平台提供的一个轻量级的异步任务类,它允许开发者在后台线程中执行耗时操作,并在操作完成后将结果回调到主线程以更新UI。AsyncTask内部封装了线程池和Handler机制,简化了多线程编程的复杂性。…

第十六章 RabbitMQ延迟消息之延迟插件优化

目录 一、引言 二、优化方案 三、核心代码实现 3.1. 生产者代码 3.2. 消息处理器 3.3. 自定义多延迟消息封装类 3.4. 订单实体类 3.5. 消费者代码 四、运行效果 一、引言 上一章节我们提到,直接使用延迟插件,创建一个延迟指定时间的消息&…

【优选算法】(第三十七篇)

目录 在每个树⾏中找最⼤值(medium) 题目解析 讲解算法原理 编写代码 最后⼀块⽯头的重量(easy) 题目解析 讲解算法原理 编写代码 在每个树⾏中找最⼤值(medium) 题目解析 1.题目链接:…

leetcode 刷题day44动态规划Part13( 647. 回文子串、516.最长回文子序列)

647. 回文子串 动规五部曲: 1、确定dp数组(dp table)以及下标的含义 按照之前做题的惯性,定义dp数组的时候很自然就会想题目求什么,就如何定义dp数组。但是对于本题来说,这样定义很难得到递推关系&#x…

【原创】java+springboot+mysql智能农村管理系统设计与实现

个人主页:程序猿小小杨 个人简介:从事开发多年,Java、Php、Python、前端开发均有涉猎 博客内容:Java项目实战、项目演示、技术分享 文末有作者名片,希望和大家一起共同进步,你只管努力,剩下的交…

利用sessionStorage收集用户访问信息,然后传递给后端

这里只是简单的收集用户的停留时间、页面加载时间、当前页面URL及来源页面&#xff0c;以做示例 <html><head><meta http-equiv"content-type" content"text/html; charsetUTF-8"/><title>测试sessionStorage存储用户访问信息<…

面试经典150题刷题记录

数组部分 1. 合并两个有序的子数组 —— 倒序双指针避免覆盖 88. 合并两个有序数组 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2&#xff0c;另有两个整数 m 和 n &#xff0c;分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中&#xff0c;使…

高级算法设计与分析 学习笔记14 FFT

​ 本章我们研究多项式乘法。 我们直接乘&#xff0c;时间复杂度是n^2。使用FFT则可以变成nlgn ​编辑 可以看到两个n的多项式&#xff0c;我们直接乘&#xff0c;每种组合都要试一遍&#xff0c;就会要是n^2遍 ​编辑 那么要怎么加速呢&#xff1f; ​编辑 首先多项式可…