19.3、Unix Linux安全分析与防护

目录

UNIX/Linux系统的安全分析与防护

unix和linux操作系统分成三层,分别是硬件层,系统内核层以及应用层。Windows系统也是分成三层,硬件抽象层、内核层,还有服务模块。

unix和Linux系统都是多用户、多任务的操作系统,双多操作系统。多用户,可以多个用户登录,同时使用后台操作系统,因为这两个系统基本上是用于服务器,是供我们多人使用的,所以要供多个用户同时使用。这里需要注意,多用户不是指操作系统能开出多个用户,任何操作系统基本上都可以有张三用户、李四用户,不是有多个用户名字叫多用户,而是这些用户,他能够同时的去使用我们操作系统的资源。

像早期的微软系统,XP这种,它其实就是单用户的,它虽然操作系统里面可能有张三、李四,但是同时只能有一个用户去登录使用资源,这就叫单用户

微软个人操作系统,早期是单用户的,像现在的WIN 7、win 10,也都成了多用户,可以同时去使用。像微软服务器操作系统,都是多用户的、多任务,同时可以处理多个任务,比如说,你既登QQ又登微信,这就叫多任务。

时间往前面去推移,最早的比如说DOS操作系统,他就是单任务的,同时只能干一个事情

unix和linux具备一些安全机制,第一个认证机制,第二个审计机制,第三个是访问控制机制。认证机制,有四种认证方式,第一个基于口令认证,输密码很好理解。第二个终端认证,在unix或者Linux系统当中,还提供一个限制超级用户从远程登录的认证,就是比如说在linux当中,有一个用户叫超级用户,可以限制他只能从某一个IP地址,某一个终端来登录,而不能从互联网或者其他任意的终端来登录这台服务器。这样的话就能够最大限度的保证网络安全,即使用户名密码泄密了,对方也登录不了,因为你不一定知道我必须要从哪个IP登录。

第三种叫主机信任机制,不同的主机之间,可以相互信任,让他们无需认证就可以直接登录,我们双方认证,双方信任就不需要做认证

第四是第三方认证,关于认证机制,第一个单项认证,第二个双向认证,第三种是基于第三方认证,一次一密口令认证S/Key,Kerberos认证系统,插入式身份认证PAM

审计机制,无论是linux还是Windows系统都是带审计机制的。审计日志文件最早是放在/usr/adm,较新的系统是放在/var/adm。Solaris、Linux、unix和bsd系统,是放在/var/log文件。

访问控制机制,通过十比特来进行文件权限的访问控制,其实,文件权限本来是九比特,只是如果是十比特的话,第一位是文件类型,如果是d,就表示目录,如果是横杠,表示是普通文件,所以十位第一位是表示文件类型,后面九位是表示用户权限

用户权限是三个一组,第一组表示用户权限,第二组是表示跟我这个用户相同组用户的权限,相当于是我们的同族,第三组表示其他用户权限,就是你既不是我这个用户,又不是我的同族,这是其他用户。

UNIX/Linux系统安全增强技术

操作系统安全增强技术,任何系统其实都差不多,安卓基本上也是一样的,WINDOWS、linux、安卓、苹果iOS一样的打补丁

打补丁需要检查补丁的完整性,用一个哈希工具算哈希值,把补丁下载下来之后算一下哈希值,然后跟官网的哈希值对比一下,看是不是一样的,如果是一样的,证明你是完整的,没有被篡改,如果不一样,这个补丁包我们就不能用,我们要重新去下过,这是通过哈希来检查文件的完整性。第二个要安装最小化的系统网络服务,对一些不用的服务,要把它给关闭掉,注销掉,这些服务软件要把它卸载掉,一些不必要的通信端口也是要封闭掉,在操作系统层面可以封,在网络层面也可以封。

文件权限,我们要把它设置好,比如说网络配置文件,一般的权限,我们要设置成六零零,服务文件,设置成六四四。两个文件的属主,都要把它设置成root,像我们系统服务文件,还有网络配置文件,这就是最小化系统网络服务

设置开机保护口令。其实开机保护口令有两重,第一重是我们的,比如说linux,要设置系统密码,第二重是密码,防止我们通过PE,绕过操作系统的认证去读取硬盘里面的数据

黑客,想访问硬盘里面的数据,但是又不知道操作系统密码,第一种方式暴力破解或者猜,但是这种效率很低,有可能猜个一年两年都猜不出来,这就不太现实了。如果我能接触到这台电脑,我可以在上面安装一个PE系统,就可以不通过你这里进来访问硬盘内容

通过PE小系统进来访问,就绕过了操作系统验证,就能够读取硬盘里边的数据了,但是我在底下的层再设一个密码,就是安装PE系统可以,但是你要输入密码,你才能安装PE系统。你不知道我的密码,你安不了PE系统,你就必须要通过我原来的操作系统来访问我里边的硬盘,这样就绕不过密码的认证,这就是密码的设置。

弱口令检查,禁用默认账号,比如说像一些root账号,访客账号,不用的账号把它禁用掉。用ssh来增强网络安全服务。安全登录,它是加密的,而传统的ftp这些都不加密,我们要用加密的通道。

tcp_wrapper,相当于是WINDOWS里边的端口过滤器,可以设置那些IP或者那些端口能够访问那些,其他的就把它给封闭掉,是来做服务的监控和过滤

构建unix和linux的防火墙软件,其实我们实际用的比较多的是iptables。它就跟我们交换机上写的包功率防火墙acl差不多,permit、delay、源端口、目的端口、IP地址

使用Tripwrie和MD5Sum工具软件来检测完整性,主要检测哈希值,发现有没有被篡改,还可以看里面的文件,有没有被篡改

检测LKM后门,这是可加载的内核模块,可以通过KLM模块去扩展内核功能,但是它也比较危险,直接生物内核,内核就是心脏,如果这块存在一些危害软件,很有可能直接导致系统崩溃,所以我们要对这一类的模块,进行检查,有一系列的检查工具,比如说Kstat、Chkrootkit、Rookit Hunter

系统安全监控或者叫监测,监测有利于及时的发现一些安全问题,WINDOWS里边同样有系统监测工具,比如说任务管理器,可以看CPU内存利用率,那些程序占用的各项资源比较高,这就需要引起我们的注意了,我们要考虑这个程序是不是木马或者病毒,它常见的工具有查看网络状态的,还有snort软件入侵检测工具,其他的禁止重要文件访问,我们重要的一些文件,你要修改它的权限,比如说像我们的这个叫网络配置的文件,它把权限修改为六零零。

chatrr +i /etc/inetd.conf表示保证文件的属主是root,并且将其设置为不能改变,这样的话,只有root才能修改这个文件了,这是禁止访问重要文件

禁止不必要的suid程序,suid可以使普通用户以root权限去执行某个程序,这个程序挺危险的,能够把普通用户提权成超级管理员用户,所以我们要严格的控制这类程序,控制不好,容易造成越权访问。

设置口令最小长度和最短使用时间,你看这里面参数有个叫PASS_MIN_LEN和 PASS_MIN_DAYS表示密码最小长度,密码最短使用时间。

限制远程访问,不是所有的主机都能够访问我的,我可以在两个文件里面去做设置,/etc/hosts.allow和/etc/hosts.deny。表示这两个文件你写在这里面的,表示只有这里面的IP地址才能访问我的主机。前面一个是白名单,后面一个是黑名单。

用户超时注销,可以设置,比如说在/etc/skel/.bash_logout文件里面,有一行叫timeout=600,表示十分钟不操作的话就自动注销,需要重新输入密码,才能访问,然后注销的时候要删除我们历史记录,历史记录在history文件里边。

UNIX/Linux安全模块应用参考

LSM就是Linux安全模块,它是为Linux内核提供一个轻量级通用的访问控制框架,使得很多访问控制功能都可以作为模块来实现,LSM采用了在内核源代码中放钩子的方法,放钩子说白了就是一个扩展,对内核的一些功能进行控制。

因为内核一般是不需要经常去变动的,如果你要增加功能,你去变动内核,造成的影响可能很大,所以我们就加了一个放钩子的方法,就是你要扩展什么功能,我们通过这样的一个钩子,去做扩展就行了。

安全功能扩展的两个模块,第一个是身份验证模块框架(PAM),第二个是SELinux。

PAM是通过插件的方式来增加linux身份验证服务,比如说你最早使用用户名密码服务,后来你想使用人脸识别,虹膜指纹等等,可以直接去开发Linux系统,在系统上去支持,这是可以的,但是不方便,而且可能会影响linux的安全性,所以通过其他的扩展模块去做,如果你要加入其他的认证方式,刚刚提的人脸、指纹,通过模块去实现,不需要动linux底层的一些东西,这就是PAM的工作机制。

而SELinux也是一个插件,增强linux安全性的插件。它由策略和实施两部分组成,策略封装在安全服务器当中实施,由对象管理器具体执行。然后SELinux可以实现两种访问控制,基于决策的访问控制和强访问控制,这也叫强制访问控制。

国产操作系统安全分析与防护

国产操作系统包括中科方德,中标麒麟,北京凝思科技、普华、深度Linux,华为鸿蒙操作系统,阿里飞天云操作系统、统信UOS。

国产操作系统它存在的安全风险,第一个Linux内核安全风险。因为国产操作系统都是基于开源的linux去做的深度定制和开发,所以linux有的问题它都有,缓冲区溢出、边界错误、访问验证等等

第二个自主研发系统组件的安全,因为是基于linux去定制的,上面有各种各样的组件,组件就是是软件,肯定有漏洞,WINDOWS的补丁更新了这么多年,还在持续的更新。

第三个是依赖第三方系统组件的安全,比如说有些时候我们在操作系统里面会用pgp做安全组件,如果它有漏洞,会影响系统的安全性

第四个是系统安全配置问题,就人为操作,比如说你的密码是一二三,肯定不安全

第五个硬件安全,国产操作系统受限于硬件而产生的一些安全问题,其实不仅国产操作系统,任何一个操作系统,如果底层硬件不安全,那肯定上层操作系统做的再安全也没辙,CPU都坏了,你的操作系统、应用肯定跑不起来,所以硬件还是挺重要的

国产操作系统的安全增强措施,国产操作系统在自主可控,安全可信方面,对开源的Linux系统进行安全增强,这里面需要注意,都是基于linux去开发的

UOS是我们国家桌面操作系统,是基于linux开发的,它可以从多个方面对linux操作系统提供安全保障,包含管理员分权,操作员,审计员,安全管理员,三权分离

最小特权结合角色的基于类型访问控制,说白了基于角色的访问控制,细颗粒度的自主访问控制,多级安全等等,这一系列的功能从内核到应用,做到全方面的防护Linux内核。从目前来看,应该是比较安全的,因为是开源的,有很多早期的漏洞

开源社区不停的在更新,所以内核漏洞是比较少的,应用层面现在我们都在推国产化,比如说office,现在我们都用WPS了,然后一些系统业务软件基本上都是由国内的公司去开发的,这是关于国产操作系统的安全分析与防护

相关推荐
Johny_Zhao4 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
用户962377954489 小时前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机12 小时前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机12 小时前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户9623779544813 小时前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star13 小时前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户9623779544817 小时前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux