当前位置: 首页 > news >正文

19.3、Unix Linux安全分析与防护

目录

    • UNIX/Linux系统的安全分析与防护
    • UNIX/Linux系统安全增强技术
    • 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了,然后一些系统业务软件基本上都是由国内的公司去开发的,这是关于国产操作系统的安全分析与防护

相关文章:

19.3、Unix Linux安全分析与防护

目录 UNIX/Linux系统的安全分析与防护UNIX/Linux系统安全增强技术UNIX/Linux安全模块应用参考国产操作系统安全分析与防护 UNIX/Linux系统的安全分析与防护 unix和linux操作系统分成三层,分别是硬件层,系统内核层以及应用层。Windows系统也是分成三层&a…...

JVM对象内存结构

1对象内存结构说明 注意: 如果对象为数组对象,在对象头后面有4字节存储数组长度; 1.1对象头 对象头分为Mark Word和Class Pointer两部分; Mark Word:对象基础信息 32位操作系统中占4字节,64位操作系统中占8…...

联邦学习和大模型相结合: 数据隐私,提升训练效率,架构优化

联邦学习和大模型相结合: 数据隐私,提升训练效率,架构优化 数据隐私保护方面 增强隐私保护机制:大模型通常需要大量的数据进行训练,而联邦学习可以在不共享原始数据的情况下进行模型训练。结合两者,可以设计出更强大的隐私保护机制,如利用联邦学习的加密技术和差分隐私…...

命令别名和命令历史

1.1命名别名 别名是命令的快捷方式。对于需要经常执行,并需要很长时间输入的长命令创建快捷方式很有用。 语法: alias 别名 ’ 原命令 [ 选项 ]…… [ 参数 ]……’ 1.2命令历史...

打造三甲医院人工智能矩阵新引擎(二):医学影像大模型篇--“火眼金睛”TransUNet

一、引言 1.1 研究背景与意义 在现代医疗领域,医学影像作为疾病诊断与治疗的关键依据,发挥着不可替代的作用。从传统的X射线、CT(计算机断层扫描)到MRI(磁共振成像)等先进技术,医学影像能够直观呈现人体内部结构,为医生提供丰富的诊断信息,涵盖疾病识别、病灶定位、…...

Scade pragma: separate_io

概述 在 Scade 语言中,支持对用户自定义算子使用 separate_io pragma 进行修饰。其形式如: function #pragma kcg separate_io #end N(x: int8) returns (y,z: int8) let y x;z x; tel在上例中,算子N 就被 pragma #pragma kcg separate_i…...

IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元)

时序预测 | MATLAB实现IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元) 目录 时序预测 | MATLAB实现IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元)预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现IWOA-GRU和GRU时间序列预测…...

“知识图谱AI教学辅助系统:点亮智慧学习的新灯塔

嘿,各位教育界的小伙伴们!今天咱们来聊聊一个超级有料的话题——知识图谱AI教学辅助系统。想象一下,如果有一个智能导师能根据你的需求定制专属的学习路径,还能像百科全书一样随时解答疑问,是不是感觉学习变得更高效、…...

产品 防尘防水IP等级 划分与实验方法

概述: 我们经常听到或看到有关IP防护等级的说法。比如:xx产品的防护级别为IP54;xx产品的防护级别为IP65等等。IP54、IP65是外壳防护等级代码。 一款产品,在实验室内按照GB/T 2421规范对其外壳的防护能力进行实验,并将…...

【微服务】1、引入;注册中心;OpenFeign

微服务技术学习引入 - 微服务自2016年起搜索指数持续增长,已成为企业开发大型项目的必备技术,中高级java工程师招聘多要求熟悉微服务相关技术。微服务架构介绍 概念:微服务是一种软件架构风格,以专注于单一职责的多个响应项目为基…...

01、Docker学习,第一天:简单入门与安装

Docker学习,第一天:简单入门与安装 一、Docker简介 环境配置如此之麻烦,换台机器,重来一次,费事费力。安装的时候,把原始环境一模一样的复制过来。开发人员利用Docker可以消除写作编码时,”在…...

C++STL中iomanip的使用与细节

C标准模板库&#xff08;STL&#xff09;中的<iomanip>头文件提供了一组用于格式化输入输出流的函数和操纵符。这些函数和操纵符可以用来控制输出的布局、精度、宽度等。以下是一些常用的<iomanip>函数及其使用方式&#xff1a; setprecision(n)&#xff1a;设置浮…...

3.C语言变量的基础概念与使用

目录 1.变量名2.变量声明3.变量赋值4.变量作用域 1.变量名 本篇原文为&#xff1a;C语言变量的基础概念与使用 更多C进阶、rust、python、逆向等等教程&#xff0c;可点击此链接查看&#xff1a;酷程网 变量&#xff08;variable&#xff09;可以理解成一块内存区域的名字。…...

Go语言中的逃逸分析:深入浅出

Go语言中的逃逸分析&#xff1a;深入浅出 在Go语言中&#xff0c;逃逸分析&#xff08;Escape Analysis&#xff09;是一个非常重要且强大的编译器优化技术。它帮助编译器决定一个变量是在栈上分配还是在堆上分配&#xff0c;从而影响程序的性能和内存管理。本文将深入探讨Go语…...

【FlutterDart】 拖动改变 widget 的窗口尺寸大小GestureDetector~简单实现(10 /100)

上效果 预期的是通过拖动一条边界线改变窗口大小&#xff0c;类似vscode里拖动效果。这个是简单的拖动实现 上代码&#xff1a; import package:flutter/material.dart;class MyDraggableViewDemo extends StatelessWidget {const MyDraggableViewDemo({super.key});override…...

【论文笔记】LongLoRA: Efficient Fine-tuning of Long-Context Large Language Models

&#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&#xff0c;为生民立命&#xff0c;为往圣继绝学&#xff0c;为万世开太平。 基本信息 标题: LongLoRA: Efficient Fine…...

数据挖掘——朴素贝叶斯分类

数据挖掘——朴素贝叶斯分类 朴素贝叶斯分类极大后验假设独立性假设贝叶斯分类器总结 朴素贝叶斯分类 什么是分类&#xff1f; 找出描述和区分数据类或概念的模型&#xff0c;以便能够使用模型预测未知的对象的类标号 概念区分 分类与回归 分类是预测分类&#xff08;离散、…...

unity中的UI系统---GUI

一、工作原理和主要作用 1.GUI是什么&#xff1f; 即即时模式游戏用户交互界面&#xff08;IMGUI&#xff09;&#xff0c;在unity中一般简称为GUI&#xff0c;它是一个代码驱动的UI系统。 2.GUI的主要作用 2.1作为程序员的调试工具&#xff0c;创建游戏内调测试工具 2.2为…...

鸿蒙Flutter实战:15-Flutter引擎Impeller鸿蒙化、性能优化与未来

Flutter 技术原理 Flutter 是一个主流的跨平台应用开发框架&#xff0c;基于 Dart 语言开发 UI 界面&#xff0c;它将描述界面的 Dart 代码直接编译成机器码&#xff0c;并使用渲染引擎调用 GPU/CPU 渲染。 渲染引擎的优势 使用自己的渲染引擎&#xff0c;这也是 Flutter 与其…...

C语言冒泡排序教程简介

冒泡排序&#xff08;Bubble Sort&#xff09;是一种简单的排序算法&#xff0c;因其工作原理像气泡一样逐渐上浮而得名。其基本思想是通过一轮一轮地比较相邻的元素&#xff0c;将较大的元素逐步“冒泡”到数组的尾部。 在本篇博客中&#xff0c;我们将详细讲解冒泡排序的基本…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来&#xff0c;Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

【论文笔记】若干矿井粉尘检测算法概述

总的来说&#xff0c;传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度&#xff0c;通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云

目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

宇树科技,改名了!

提到国内具身智能和机器人领域的代表企业&#xff0c;那宇树科技&#xff08;Unitree&#xff09;必须名列其榜。 最近&#xff0c;宇树科技的一项新变动消息在业界引发了不少关注和讨论&#xff0c;即&#xff1a; 宇树向其合作伙伴发布了一封公司名称变更函称&#xff0c;因…...

Rust 开发环境搭建

环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行&#xff1a; rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu ​ 2、Hello World fn main() { println…...

沙箱虚拟化技术虚拟机容器之间的关系详解

问题 沙箱、虚拟化、容器三者分开一一介绍的话我知道他们各自都是什么东西&#xff0c;但是如果把三者放在一起&#xff0c;它们之间到底什么关系&#xff1f;又有什么联系呢&#xff1f;我不是很明白&#xff01;&#xff01;&#xff01; 就比如说&#xff1a; 沙箱&#…...

规则与人性的天平——由高考迟到事件引发的思考

当那位身着校服的考生在考场关闭1分钟后狂奔而至&#xff0c;他涨红的脸上写满绝望。铁门内秒针划过的弧度&#xff0c;成为改变人生的残酷抛物线。家长声嘶力竭的哀求与考务人员机械的"这是规定"&#xff0c;构成当代中国教育最尖锐的隐喻。 一、刚性规则的必要性 …...

STM32标准库-ADC数模转换器

文章目录 一、ADC1.1简介1. 2逐次逼近型ADC1.3ADC框图1.4ADC基本结构1.4.1 信号 “上车点”&#xff1a;输入模块&#xff08;GPIO、温度、V_REFINT&#xff09;1.4.2 信号 “调度站”&#xff1a;多路开关1.4.3 信号 “加工厂”&#xff1a;ADC 转换器&#xff08;规则组 注入…...