实验一 Windows系统安全实验【网络安全】
实验一 Windows系统安全实验【网络安全】
- 前言
- 推荐
- 实验一 Windows系统安全实验
- 3.1 帐户和口令的安全设置
- 3.1.1 实验目的
- 3.1.2 实验环境
- 3.1.3 实验内容和步骤
- 1. 删除不再使用的帐户并禁用guest帐户
- 2.启用密码策略和帐户锁定策略
- 3.查看“用户权限分配”
- 4.查看“用户组权限分配”
- 5.在安全选项中设置“开机不自动显示上次登录帐户”
- 6.禁止枚举帐户名
- 7.禁止远程访问注册表
- 另外
- 说明
- 最后
前言
2023-3-27 10:28:47
以下内容源自《【网络安全】》
仅供学习交流使用
推荐
【网络安全】Windows系统安全实验
实验一 Windows系统安全实验
3.1 帐户和口令的安全设置
3.1.1 实验目的
本章实验的目的主要是熟悉Windows操作系统中帐户和口令的安全设置,掌握删除、禁用帐户的方法,了解并启用密码策略和用户锁定策略,体验查看“用户权限分配”、查看“用户组权限分配”、 在安全选项中设置“开机不自动显示上次登录帐户”、 禁止枚举帐户名和禁止远程访问注册表等操作,切实提高安全防范意识。
3.1.2 实验环境
1台安装Windows10操作系统的计算机,磁盘格式配置为NTFS。
我上机实验是win7台式机
有两个截图是win11笔记本
win11截图有特别说明,其余都是win7
win11本地安全策略找不到的话
请看本文最后说明
3.1.3 实验内容和步骤
1. 删除不再使用的帐户并禁用guest帐户
共享账户、guest帐户等具有较弱的安全保护,常常都是黑客们攻击的对象,系统的帐户越多,被攻击者攻击成功的可能性越大,因此要及时检查和删除不必要的帐户,必要时禁用guest帐户。
首先检查和删除不必要的账户。右键单击“开始”按钮,打开“资源管理器”,选择“控制面板”中的“用户帐户”项,再点击“用户帐户”、“管理帐户”,列出了系统的所有帐户:

我们创建一个新帐户。点击“在电脑设置中添加新用户”:

填入账户名

新用户创建完成!

在“此电脑”右键点击“管理”,在管理界面左侧栏点击“本地用户和组”,点击“用户”,选中“jsss”,右键点击“属性”,勾选“帐户已禁用”,这样就把帐户jsss禁用了。若要删除用户,就点击上方红色“x”号,删除用户。

2.启用密码策略和帐户锁定策略
帐户策略是Windows帐户管理的重要工具。
打开“控制面板”,“查看方式”选择“小图标”,点击“管理工具”—“本地安全策略”,
找不到的话,请看本文最后的说明

选择“帐户策略”,双击“密码策略”,弹出如下所示的窗口。
密码策略用于决定系统密码的安全规则和设置。

其中,符合复杂性要求的密码是具有相当长度、同时含有数字、大小写字母和特殊字符的序列。双击其中每一项,可按照需要改变密码特性的设置。
(1)双击“密码必须符合复杂性要求”,选择“启用”:

下面我们看一下策略是否启动,打开“控制面板”—“用户帐户”—“用户帐户”—“管理帐户”—“更改帐户”—“创建密码”:

在出现的设置密码窗口中输入密码。此时设置的密码要符合设置的密码要求。
例如,若输入密码为L123456,则弹出“密码不符合要求”的对话框;

若输入密码为L_123456,密码被系统接受。

(2)双击“密码长度最小值”,在弹出的对话框中设置可被系统接纳的帐户密码长度最小值,例如设置为6个字符。一般为了达到较高的安全性,建议密码长度的最小值为8。

(3)双击“密码最长使用期限”,在弹出的对话框中设置系统要求的帐户密码的最常使用期限为42天。设置密码自动保留期,可以提醒用户定期修改密码,防止密码使用时间过长带来的安全问题。

(4)双击“密码最短使用期限”,在弹出的对话框中修改设置密码最短存留期为7天。在密码最短存留期内用户不能修改密码。这项设置是为了避免入侵的攻击者修改密码帐户。

(5)双击“强制密码历史”和“为域中所有用户使用可还原的加密存储密码”,在相继弹出的类似对话框中,设置让系统记住的密码数量和是否设置加密存储密码。


至此,密码策略设置完毕。

帐户策略中的第2项是帐户锁定策略,它决定系统锁定帐户的时间等相关设置。
打开“帐户锁定策略”,弹出如下所示的窗口:

(1)双击“帐户锁定阈值”,在弹出的对话框中设置帐户被锁定之前经过的无效登录次数,如3次,以便防范攻击者利用管理员身份登录后无限次的猜测帐户的密码(穷举法攻击)。

(2)双击“帐户锁定时间”,在弹出的对话框中设置帐户被锁定的时间,如5min。此后,当某帐户无效登录(如密码错误)的次数超过3次时,系统将锁定该帐户5min。

要求:策略设置完毕后,可以尝试输入错误密码,锁定账户。
测试:我锁定时间改成了1分钟

三次错误密码即锁定,等待1分钟解锁

3.查看“用户权限分配”
系统中任何一个文件或文件夹,都有以其为客体的访问控制规则,这里我们进行查看。针对目标文件或文件夹,右键单击“属性”,“安全”,可以查看系统中的主体对其的访问控制权限,进一步可通过“编辑”,修改某一个主体的访问控制权限。

要求:尝试创建标准用户,并用该账号登录后新建文件,设置访问控制规则,使得管理员账户的访问权限低于标准用户。
注意:登录jsss用户

jsss用户下新建文件夹1
注意:
别在桌面上创建,
最好在盘符根目录下
下图文件在桌面上后面又移到了D:下了
原因:
桌面是用户目录,每一个用户都有自己的用户目录。
不是很好找,直接放到盘符下,所有用户共用。

修改管理员对文件夹的权限
完全控制 拒绝

查看安全设置

这里,我把文件夹1移到了盘符下了
文件夹1别放到桌面,移动到盘符下

登录:管理员
双击进入文件夹1
可以发现没有权限

如上图,管理员无法访问“文件夹1”,但普通用户可以访问。
4.查看“用户组权限分配”
在访问控制中,系统对用户组有一个粗略的系统权限分配,我们可以在“本地策略”中查看,并做编辑修改,如下图所示。
要求:请你分析本地机器的访问控制策略是否合理,如果需要修改,请给出理由。
以下是用户权限分配界面

备份文件和目录
5.在安全选项中设置“开机不自动显示上次登录帐户”
Windows默认设置为开机时自动显示上次登陆的帐户名,许多用户也采用了这一设置。这对系统来说是很不安全的,攻击者会从本地或Terminal Service的登陆界面看到用户名,并尝试破解密码。
要禁止显示上次的登陆名,可作如下设置:
打开“控制面板”,打开“管理工具”选项下“本地安全策略”项,选择“本地策略”中的“安全选项”,选择“交互式登录:不显示最后的用户名”选项,在弹出的对话框中选择“已启用”,完成设置。

注意:
改之前知道自己账户名和密码
别玩坏了,我这里取消更改了
6.禁止枚举帐户名
为了便于远程用户共享本地文件,Windows默认设置远程用户可以通过空连接枚举出所有本地帐户名,这给了攻击者可乘之机。
要禁止枚举帐户名,可执行以下操作:
打开“本地安全策略”项,选择“本地策略”中的“安全选项”,选择“网络访问:不允许SAM帐户和共享的匿名枚举” 选项,在弹出的对话框中选择“已启用”,完成设置。

7.禁止远程访问注册表
允许远程访问注册表风险极大,将远程访问注册表的路径设置为空,可以有效避免黑客利用扫描器通过远程注册表读取或更改系统信息。
打开控制面板,选择“管理工具”,双击“本地安全策略”,依次打开“本地策略”—“安全选项”,在右侧找到“网络访问:可远程访问的注册表路径”和“网络访问:可远程访问的注册表路径和子路径”,双击打开,将路径删除。

此外,在“安全选项”中还有多项增强系统安全的选项,请自行查看。
另外
要求:列出10条你认为有必要的安全选项做设置并解释。
①Windows 使用安全策略设置“交互式登录:计算机非活动限制”来检测登录用户的活动情况,如果非活动时间量超过此策略设置的非活动限制,则用户可以通过调用屏幕保护程序处于活动状态来锁定会话。如果配置了“交互式登录:计算机不活动限制”的安全策略设置,则设备不仅在非活动时间超过非活动限制时锁定,而且在屏幕保护程序激活或屏幕因电源设置而关闭时锁定。我们将时间设置为10秒。
下图是win7没有,win11的截图

②“交互式登录:计算机帐户阈值”安全策略设置在启用了BitLocker的计算机上强制实施锁定策略,以保护操作系统卷。可以设置导致设备使用BitLocker锁定的失败登录尝试次数的阈值。此阈值意味着,如果超过指定的最大失败登录尝试次数,设备将使受信任的平台模块(TPM)保护程序和除48位恢复密码以外的任何其他保护程序失效,然后重新启动。 在设备锁定模式下,计算机或设备仅启动Windows 恢复环境(WinRE),直到授权用户输入恢复密码以还原完全访问权限。我们将最大登录次数设置为5次。
下图是win7没有,win11的截图

③“用户帐户控制:允许UIAccess应用程序在不使用安全桌面的情况下提升权限”策略决定了用户界面辅助程序是否可以绕过安全桌面,一般设置为“已禁用”,如果启用该选项,应用程序就可以直接按照应用需求提升权限,这样会增加系统的风险,因为可能会被恶意程序所利用。

④“用户帐户控制:用于内置管理员帐户的管理员批准模式”在启用时,本地管理员帐户像标准用户帐户那样运行,但它能够在不使用其他帐户登录的情况下提升权限。在此模式下,任何需要提升权限的操作均会显示可让管理员允许或拒绝提升权限的提示。如果未启用管理员批准模式,内置的管理员帐户默认在完全管理权限下运行所有应用程序。一般将此策略设置为“已禁用”。

⑤“用户帐户控制:提示提升时切换到安全桌面”策略决定了提升请求是在交互式用户桌面上提示还是在安全桌面上提示。如果启用,则包括管理员和标准用户的所有提升请求都将转换至安全桌面;如果禁用,则所有提升请求都将转至交互用户桌面。为了提高计算机的安全性,将该策略设置为“已启用”。

⑥“域控制器:允许服务器操作者计划任务”策略决定了服务器操作员是否可以使用at命令提交作业。如果启用此策略,服务器操作员通过 at 命令创建的作业将在运行任务计划程序服务的帐户中运行。为安全起见,将该策略设置为“已禁用”。

⑦ “帐户:使用空白密码的本地帐户只允许进行控制台登录”策略一般设置为“已启用”,这表示如果账户密码为空,则只有本地才能登入。如果把该策略禁用,就意味着访客只需要知道用户名就可以访问,非常不安全。

⑧“系统设置: 将Windows可执行文件中的证书规则用于软件限制策略”用于确定在启用软件限制策略时是否处理数字证书,启用该策略会令软件限制策略检查证书吊销列表(CRL)以确保软件的证书和签名有效,从而提高安全性,所以建议启用。

⑨启用“用户帐户控制: 将文件和注册表写入错误虚拟化到每用户位置”有助于将应用程序写入失败重定向到文件系统和注册表的定义用户位置,从而防止较旧的应用程序将数据写入不安全的位置。

⑩“用户帐户控制:以管理员批准模式运行所有管理员”策略建议启用。在这种模式下,即使是用管理员账号登陆系统,此账号也会以一个普通标准用户的权限运行,如果有软件需要提升到管理员权限再提示对系统做相应的更改。如果禁用该策略,可能会有恶意软件私自篡改系统文件的风险,导致系统安全受到威胁和损害。

说明
WIN11家庭版没有本地安全策略解决方法
新建一个txt文件
@echo offpushd "%~dp0"dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >List.txtdir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientTools-Package~3*.mum >>List.txtfor /f %%i in ('findstr /i . List.txt 2^>nul') do dism /online /norestart /add-package:"C:\Windows\servicing\Packages\%%i"pause
后缀改为bat,管理员模式运行,然后会弹出命令窗口,等几分钟,就安装好了
Win+r 运行 gpedit.msc
Win+r 运行 SECPOL.MSC
本地安全策略组就出来了
最后,可以把.bet文件和生成的List文件删掉。
最后
2023-3-27 11:36:04
祝大家逢考必过
点赞收藏关注哦
相关文章:
实验一 Windows系统安全实验【网络安全】
实验一 Windows系统安全实验【网络安全】前言推荐实验一 Windows系统安全实验3.1 帐户和口令的安全设置3.1.1 实验目的3.1.2 实验环境3.1.3 实验内容和步骤1. 删除不再使用的帐户并禁用guest帐户2.启用密码策略和帐户锁定策略3.查看“用户权限分配”4.查看“用户组权限分配”5.…...
蓝桥杯正确的解题姿势
在做算法题的过程中最忌讳的就是上来就一顿乱敲,一开始我就是这样,但随着不断的刷题和老师的指导,总结了自己的刷题方法 示例题目 三角回文数 问题描述 对于正整数 n, 如果存在正整数 k使得 n123...kk(k1)/2 , 则 n 称为三角数。例如, 66066 …...
【mysql】性能优化
目录一、硬件与操作系统二、架构设计层面的优化三、mysql程序配置优化四、mysql执行优化一、硬件与操作系统 1.使用高性能cpu,提高计算能力 2.增大可用内存,提高读取能力 3.提高硬盘的读写速度,使用专用的固态硬盘 4.增大网络带宽,…...
Jupyter安装与远程使用过程记录
Jupyter安装与远程使用过程记录 文章目录Jupyter安装与远程使用过程记录Jupyter在线试用在服务器上安装Jupyter Notebook配置服务器远程连接首先保证ip地址连通性其次开启服务器访问端口然后在服务器启动服务最后测试连通性后续使用教程Jupyter在线试用 官网适用,感…...
Swift入门
基本数据类型 Int、UInt:整数型、非负整数Float、Double:单精度浮点数、双精度浮点数Bool:布偶值String、Character:字符串、字符 其他类型 Array, Dictionary:数组、字典StructClassvar:变量let&#x…...
【HashMap】jdk1.8中HashMap的插入扩容源码学习分析
jdk1.8中HashMap的插入扩容源码学习分析 一、成员变量 首先介绍HashMap中各个成员变量的作用,在HashMap中有以下成员变量 size记录了HashMap中键值对的个数 loadFactor(加载因子)用来决定size达到容量的百分之多少时触发扩容机制 默认是0…...
Linux编译器-gcc/g++ 使用
在介绍gcc/g的使用前我们先了解一下两者的不同 gcc时主要编译c语言,而g主要编译c的,但是两者的选项是相同的,因此我们以gcc和c语言为例来讲解。背景知识 gcc和g都是编译器其核心作用将文本类文件翻译成二进制可执行 那么其过程是怎样的&…...
网络安全专家最爱用的9大工具
网络安全专家,不是你认为的那种搞破坏的 “黑客”。网络安全专家,即 “ethical hackers”,是一群专门模拟网络安全专家攻击,帮助客户了解自己网络的弱点,并为客户提出改进建议的网络安全专家。 网络安全专家在工作中&a…...
Linux内核设计与实现第四章学习笔记
文章目录Linux内核设计与实现第四章学习笔记具体场景Linux调度算法传统的调度公平调度调度的实现时间记账调度器实体虚拟实时进程选择调度器入口睡眠和唤醒抢占和上下文切换用户抢占内核抢占实时调度策略Linux内核设计与实现第四章学习笔记 进程优先级:Linux中采用…...
i.MX9352——介绍一款多核异构开发板
本篇来介绍一款多核异构的Linux开发板——OK-MX9352-C开发板。 1 开发板硬件介绍 OK-MX9352-C开发板由核心板和底板组成,核心板采用处理器芯片为NXP的i.MX9352,这是一款多核异构的芯片,核心板基础配置如下 CPU:2Cortex-A551.5G…...
【Python】一文学会面向对象?当然可以的
文章目录前言一、万物皆对象二、类也是对象三,元类总结前言 在大家学习python的时候,一定听说过一句话: 在我们python中万物皆对象,不管是整数、字符串、列表、字典这些基本数据类型,还是函数、以及自定义类创建出来…...
ElasticSearch - SpringBoot整合ES:精确值查询 term
文章目录00. 数据准备01. ElasticSearch 结构化搜索是什么?02. ElasticSearch 结构化搜索方式有哪些?03. ElasticSearch 全文搜索方式有哪些?04. ElasticSearch term 查询数字?05. ElasticSearch term 查询会不会计算评分…...
【GPT4】微软对 GPT-4 的全面测试报告(2)
欢迎关注【youcans的GPT学习笔记】原创作品,火热更新中 微软对 GPT-4 的全面测试报告(1) 微软对 GPT-4 的全面测试报告(2) 【GPT4】微软对 GPT-4 的全面测试报告(2)2. 多模态与跨学科的组合&…...
Docker打包exe运行环境
Docker打包exe运行环境 本文运行环境 Window安装Docker环境 修改配置 点击Switch to Window containers OS/Arch 变为 windows/amd64 拉取window镜像 访问Nano Server找到需要的Window版本拉取镜像 运行镜像测试 进入到容器内部 其他内容就自由发挥啦~~ 参考内容…...
springboot+vue田径运动会成绩管理系统java
springboot是基于spring的快速开发框架, 相比于原生的spring而言, 它通过大量的java config来避免了大量的xml文件, 只需要简单的生成器便能生成一个可以运行的javaweb项目, 是目前最火热的java开发框架 田径运动会成绩管理系统,主要的模块包括首页、个人中心、赛…...
我能“C”——详解操作符(上)
目录 1.操作符的分类: 2. 算数操作符 3.移位操作符 4.位操作符 5.赋值操作符 6.单目操作符 7.关系操作符 8.逻辑操作符 THE END 1.操作符的分类: 操作符也叫运算符 算术操作符 移位操作符 位操作符 赋值操作符 单目操作符 关系操作符 逻辑…...
第一章Vue基础
文章目录前端发展史前端三要素JavaScript框架UI框架JavaScript构建工具三端合一什么是VueVue的好处什么是MVVM为什么要使用MVVM环境配置第一个Vue程序声明式渲染模板语法绑定样式数据绑定为什么要实现数据的双向绑定el与data的两种写法条件渲染事件驱动事件的基本用法事件修饰符…...
【虚幻引擎UE】UE5核心效率插件推荐
一、UnrealEditorPythonScripts (基于UE5 的Python支持插件) 支持Python语言基于UE5进行开发 GIT地址:https://github.com/mamoniem/UnrealEditorPythonScripts 二、Haxe-UnrealEngine5 (基于UE5 的Haxe支持插件) Haxe是一门新兴的开源编程语言,是一种开源的编程语言。…...
记录丨阿里云校招生的成长经历
为了帮助大家更好地了解阿里云云原生应用平台团队同学的成长路径,我们采访了6位各个时间点加入阿里云的学长学姐们,希望他们的经历可以帮助到大家。 经历分享 钰诚丨2022年加入阿里云,校招 大家好,我叫钰诚,目前刚来…...
蓝桥杯第14天(Python版)
并查集的使用# 并查集模板 N400 fa[] def init(): # 初始化,默认自身为根接点for i in range(N):fa.append(i)def merge(x,y): # 发现可以合并,默认选x的根节点为根接点fa[find(x)]find(y)def find(x): # 相等就是根结点,不然就递归查找根…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
el-switch文字内置
el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...
九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...
Leetcode33( 搜索旋转排序数组)
题目表述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 < k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...
