• Stars
    star
    401
  • Rank 107,625 (Top 3 %)
  • Language
    C#
  • Created 11 months ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Windows安全基线核查加固助手

WindowsBaselineAssistant GitHub Repo stars GitHub Downloads (all assets, all releases) GitHub Release GitHub Release Date

WindowsBaselineAssistant

WindowsBaselineAssistant(WBA)是一个用于检测和加固Windows安全基线的辅助工具,借助此工具你可以免去繁琐的手工检测和加固操作,实现一键检测和加固你的Windows安全基线,并可以导出检测或加固结果,解放你的双手~

截图

UIMain

工具运行要求

  • .Net Framework 4.0及以上

项目依赖库

  • SunnyUI 3.6.3
  • SunnyUI.Common 3.6.3
  • System.ValueTuple 4.5.0
  • NPOI 2.5.1
  • Costura.Fody 4.1.0

自定义规则

WBA支持自定义规则以适应不同环境下的检测需求

WBA的所有规则位于item.xml文件中,其中检测规则分为registrysecedit两种,判定规则分为fixed,enum,greaternumber,lessnumber,array,equals六种.

规则格式

registry(读取注册表)

<item>
	<name>检查源路由配置</name>
	<description>源路由攻击有源地址欺骗、IP欺骗等,为了提高系统的可靠性,需要检查是否启用正确配置源路由攻击保护.</description>
	<type>registry</type>
	<registry>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters</registry>
	<regitem>DisableIPSourceRouting</regitem>
	<standard>2</standard>
	<assessment>enum</assessment>
	<valuetype>dword</valuetype>
</item>
名称 解释
name 规则名称
description 规则描述
type 检测类型
registry 检测项的注册表路径
regitem 检测的注册表项
standard 标准值
assessment 判定规则(见: 判定规则)
valuetype 注册表数据类型(见: 数据类型)

secedit(读取config.cfg信息)

<item>
	<name>检查密码最长使用期限</name>
	<description>长期修改密码会提高密码暴露风险,所以为了提高系统的保密性.需要检查密码最长使用期限.</description>
	<type>secedit</type>
	<mark>MaximumPasswordAge</mark>
	<standard>90</standard>
	<assessment>greaternumber</assessment>
</item>
名称 解释
name 同上
description 同上
type 同上
mark secedit文件中的键
standard 同上
assessment 同上

附加标识

manual: 用于标识检测项需要手动进行加固

<item>
	<manual>1<manual>
</item>

image-20240115160311962

ignore: 用于标识检测项为已忽略

<item>
	<ignore>1<ignore>
</item>

image-20240115160420571

判定规则

标识符 判定规则解释 判定结果
fixed 检测项的标准值为一个不固定值 手动加固
enum 检测项的标准值为一个枚举类型 等于枚举值: 符合 反之: 不符合
greaternumber 检测项的标准值大于此值时 符合 反之: 不符合
lessnumber 检测项的标准值小于此值时 符合 反之: 不符合
array 检测项的标准值是一个数组(多行) 相同: 符合 反之: 不符合
equals 检测项的标准值等于检测值 相同: 符合 反之: 不符合

数据类型

注册表类型 工具映射类型 类型解释
String string 字符串类型
ExpandString expandstring 可扩展字符串类型的注册表值,通常包含了环境变量
Binary 暂不支持 二进制数据类型
DWord dword 32位整数类型
QWord qword 64位整数类型
MultiString multistring 多行字符串类型
Unknown 默认 未知类型
None 暂不支持 没有特定类型

如现在要检测重新传输的TCP连接阈值
检测类型为检索注册表 检索的注册表路径为HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\services\\Tcpip\\Parameters
检测项为TcpMaxHalfOpenRetried
标准值为400
数据类型为DWord
检测值要小于此值时判定符合

<item>
	<name>检查处于SYN_RCVD 状态下,且至少已经进行了一次重新传输的TCP连接阈值</name>
	<description>xxxxxx</description>
	<type>registry</type>
	<registry>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters</registry>
	<regitem>TcpMaxHalfOpenRetried</regitem>
	<standard>400</standard>
	<assessment>lessnumber</assessment>
    <valuetype>dword</valuetype>
</item>

更多示例见item.xml

致谢

FAQ

WBA适用所有Windows版本嘛?

很显然这是不可能的,每个Windows版本的注册表和secedit信息不尽相同,WBA不可能做到适配所有系统

为什么加固后,通过Windows管理界面查看配置项未进行更改?

这通常是你的规则和你的Windows系统不匹配造成的,你需要重新查找检测项在注册表和secedit中的检测位置,并更新的你的规则库

More Repositories

1

Erebus

CobaltStrike后渗透测试插件
PowerShell
1,462
star
2

MDUT-Extend-Release

MDUT-Extend(扩展版本)
495
star
3

Webshell-bypass-collection

收集的一些各种语言的免杀webshell
PHP
100
star
4

Browser-cookie-steal

Python script for steal browser cookies
Python
63
star
5

JetbrainsServerFinder

一个利用Shodan搜索引擎查询Jetbrains系列产品激活服务器的网页端工具
Python
54
star
6

AutoRemove

Python script for auto remove AV
Python
45
star
7

GodzillaSource

Godzilla4.01 decompile code
Java
25
star
8

CVE-2022-28346

Django QuerySet.annotate(), aggregate(), extra() SQL 注入
Python
23
star
9

safedog_bypass

a safedog fuzzing python script
Python
18
star
10

sRDI-nim

A nim implementation of sRDI
Nim
16
star
11

CVE-2022-22978

CVE-2022-22978 Spring-Security bypass Demo
Java
13
star
12

Mysqlmonitor

Mysql数据库执行监控
C#
9
star
13

PhpStudy-RCE-Tool

PhpStudy 命令执行工具
Java
9
star
14

Gadgets

零碎的一些小玩意儿
Python
6
star
15

Siteserver-RTD

Siteserver 4.x-5.x RTD Getshell Tool
C#
4
star
16

Sangfor-edr-RCE

exp for sangfor edr
Python
4
star
17

JavaSec

记录Java安全学习中的一些示例代码
Java
4
star
18

HideNimMain

Hide the exported NimMain in a DLL
Nim
4
star
19

HiveJack-Console

Console edition for hivejack , based on .net framework 2.0
C#
3
star
20

AppLoader

一个多jdk环境下jar程序加载器
C#
2
star
21

Apache-Flink-Exp

Apache Flink Exp
Python
2
star
22

Ai-Cheat

Csgo cheating demo based on yolov5
Python
2
star
23

DeEpinGh0st

My personal repository
1
star
24

BlogOSS

博客图床仓库
1
star
25

deepingh0st.github.io

it's my personel blog
HTML
1
star