WIN2012R2最新2025安全设置教程,IIS环境中安全加强

迅恒数据中心
安装WIN2012R2系统后关闭共享等

regsvr32 /u C:\Windows\System32\wshom.ocx
regsvr32 /u C:\Windows\SysWOW64\wshom.ocx
regsvr32 /u C:\Windows\System32\shell32.dll
regsvr32 /u C:\Windows\SysWOW64\shell32.dll

icacls %SYSTEMDRIVE%\ /remove everyone /C
icacls %SYSTEMDRIVE%\ /remove users /C
icacls %SYSTEMDRIVE%\ /remove "creator owner" /C
icacls %SYSTEMDRIVE%\ /remove *S-1-15-2-1 /C
icacls %SYSTEMDRIVE%\ /remove *S-1-15-2-2 /C
icacls %SYSTEMDRIVE%\ /remove *S-1-5-11 /C
icacls %SYSTEMDRIVE%\ /remove *S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464 /C
icacls %SYSTEMDRIVE%\ /remove "IIS_IUSRS" /C
icacls %SYSTEMDRIVE%\ /grant:r users:(RA)


设置以下目录权限:
C:\Program Files (x86)\ACDSee 5.0
C:\Program Files (x86)\Windows Mail
C:\Program Files\Windows Mail
C:\Program Files\WindowsApps
C:\Program Files\Embedded Lockdown Manager
只保留Administrators和SYSTEM权限,其他删除



严格NET权限将以下代码保存为ps1文件并执行==并备份原文件:
$FileUrl1="C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config"
$FileUrl2="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\web.config"
$FileUrl3="C:\Windows\Microsoft.NET\Framework\v4.0.30319\CONFIG\web.config"
$FileUrl4="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\CONFIG\web.config"
Copy-Item -Path "$FileUrl1" -Destination "$FileUrl1.bak"; (Get-Content -Path "$FileUrl1") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="Full"', 'trust level="High"' } | Set-Content -Path "$FileUrl1"
Copy-Item -Path "$FileUrl2" -Destination "$FileUrl2.bak"; (Get-Content -Path "$FileUrl2") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="Full"', 'trust level="High"' } | Set-Content -Path "$FileUrl2"
Copy-Item -Path "$FileUrl3" -Destination "$FileUrl3.bak"; (Get-Content -Path "$FileUrl3") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="Full"', 'trust level="High"' } | Set-Content -Path "$FileUrl3"
Copy-Item -Path "$FileUrl4" -Destination "$FileUrl4.bak"; (Get-Content -Path "$FileUrl4") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="Full"', 'trust level="High"' } | Set-Content -Path "$FileUrl4"


严格NET权限将以下代码保存为ps1文件并执行==不备份原文件:
$FileUrl1="C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config"
$FileUrl2="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\web.config"
$FileUrl3="C:\Windows\Microsoft.NET\Framework\v4.0.30319\CONFIG\web.config"
$FileUrl4="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\CONFIG\web.config"
(Get-Content -Path "$FileUrl1") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="Full"', 'trust level="High"' } | Set-Content -Path "$FileUrl1"
(Get-Content -Path "$FileUrl2") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="Full"', 'trust level="High"' } | Set-Content -Path "$FileUrl2"
(Get-Content -Path "$FileUrl3") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="Full"', 'trust level="High"' } | Set-Content -Path "$FileUrl3"
(Get-Content -Path "$FileUrl4") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="Full"', 'trust level="High"' } | Set-Content -Path "$FileUrl4"


宽松NET权限将以下代码保存为ps1文件并执行==不备份原文件:
$FileUrl1="C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config"
$FileUrl2="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\web.config"
$FileUrl3="C:\Windows\Microsoft.NET\Framework\v4.0.30319\CONFIG\web.config"
$FileUrl4="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\CONFIG\web.config"
(Get-Content -Path "$FileUrl1") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="High"', 'trust level="Full"' } | Set-Content -Path "$FileUrl1"
(Get-Content -Path "$FileUrl2") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="High"', 'trust level="Full"' } | Set-Content -Path "$FileUrl2"
(Get-Content -Path "$FileUrl3") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="High"', 'trust level="Full"' } | Set-Content -Path "$FileUrl3"
(Get-Content -Path "$FileUrl4") | ForEach-Object { $_ -replace 'allowOverride="true"', 'allowOverride="false"' } | ForEach-Object { $_ -replace 'trust level="High"', 'trust level="Full"' } | Set-Content -Path "$FileUrl4"


16.1、本地安全策略-本地策略-安全选项-网络访问:可远程访问的注册表路径 清空  和 网络访问:可远程访问的注册表路径和子路径 清空
16.2、本地安全策略-本地策略-用户权限分配-允许本地登录-只保留administrators管理员组 删除Backup Operators和Users
16.3、本地安全策略-本地策略-用户权限分配-允许远程桌面服务登录-添加administrator超级管理员或其他管理员 然后删除administrators管理员组 和Remote Desktop Users
16.4、本地安全策略-本地策略-安全选项-网络安全-网络安全:LAN管理器身份验证级别-将其修改为仅发送NTLMv2响应.拒绝LM个NTLM(&)


直接安装护卫神到D:\HwsHostMaster不需要先装IIS
护卫神将PHP所有版本都装上
修改护卫神主控面板端口为8888,主机系统--设置--修改端口为8888
修改PhpMyAdmin端口为9999,PhpMyAdmin--设置--修改端口为9999
在防火墙规则中将和FTP相关的3个默认规则禁用,开放21,55000-56000端口
防火墙中禁用相关规则:Windows远程管理的2个规则、Web管理服务、核心网络**的多个规则
防火墙中增加数据库3306,1433端口规则


safe2024服务器安全设置(运行2018就可以了)==这个要注意多运行几次 要检查系统用户(组)和进程是否能列出
日志中会不停出现报错信息:安排软件保护服务在 2024-10-14T08:48:29Z 时重新启动失败。错误代码: 0x80070005。
对SoftwareProtection计划任务的文件增加权限即可:
icacls "%windir%\System32\Tasks\Microsoft\Windows\SoftwareProtectionPlatform\SvcRestartTask" /grant:r "NT Service\sppsvc:F"
在WIN2012中还需要对%windir%\System32\Tasks\Microsoft\Windows\SoftwareProtectionPlatform加上Everyone的读取权限
icacls "%windir%\System32\Tasks\Microsoft\Windows\SoftwareProtectionPlatform" /grant:r "Everyone:(OI)(CI)(R)"

对C:\inetpub的删除Users等用户的权限
禁用继承takeown /f "%SystemDrive%\inetpub" /r /d y这里不需要,因为目前对C盘删除了其他用户的权限
icacls "%SystemDrive%\inetpub" /remove Users /C
icacls "%SystemDrive%\inetpub" /remove "IIS_IUSRS" /C
icacls "%SystemDrive%\inetpub" /remove "NT SERVICE\TrustedInstaller" /C
icacls "%SystemDrive%\inetpub" /remove "CREATOR OWNER" /C
icacls "%SystemDrive%\inetpub\wwwroot" /grant:r "Users:(OI)(CI)(R)"
不增加上面这条默认网站的Users的读取权限,会造成默认网站访问出错
对C:\inetpub\temp增加IIS_IUSRS读写权限[这个权限不要加,会使得PHP/ASPX木马读取网站列表和配置]:
icacls "%SystemDrive%\inetpub\temp" /grant:r "IIS_IUSRS:(OI)(CI)(R,W)"
为了安全只加读取权限
icacls "%SystemDrive%\inetpub\temp" /grant:r "IIS_IUSRS:(OI)(CI)(R)"
如果不加上面这条会造成网站对应的程序池停止,因为网站运行要读\C:\inetpub\temp\apppools里config各自配置文件
加(OI)(CI)就是应用于此文件夹/子文件夹和文件,否则仅应用于此文件夹

修改Mysql数据库路径:
Mysql运行用户MySQL_HWS  读取权限(单小项)和读取属性  只有该文件夹
icacls D:\ /grant:r "MySQL_HWS:(RA)"
icacls E:\ /grant:r "MySQL_HWS:(RA)"
修改mysql\my.ini文件中的参数将数据库放其他分区
datadir="E:/MySQLdata/"
innodb_data_home_dir ="E:/MySQLdata/"
innodb_log_group_home_dir ="E:/MySQLdata/"
创建MySQL数据库数据文件夹并增加权限
mkdir "E:\MySQLdata"
icacls E:\MySQLdata /grant:r "MySQL_HWS:(OI)(CI)(F)"
暂停MySQL服务将mysql\data全部复制到E:\MySQLdata后再启动MySQL
如果不能启动运行,就在所在分区盘D:\加上Users的读取运行权限,就可以启动Mysql了
重启好MysqL后删除Users权限,删除Users权限后再测试重启MysqL,能正常启动Mysql了,很神奇,原因不明


取消网站运行用户对主控网站目录的写入权限:
icacls "D:\HwsHostMaster\host\web" /deny "huweishen211638:(DE)" /C
icacls "D:\HwsHostMaster\host\web" /grant:r "huweishen211638:(OI)(CI)(GR,DE)" "huweishen211638:(CI)(X)" /C
请注意替换上面主控网站的运行用户huweishen211638为正确的==上面有三处
删除IIS_IUSRS在主控网站主控的权限
icacls "D:\HwsHostMaster\host\web" /remove IIS_IUSRS /C


取消网站运行用户PhpMyAdmin_HWS对网站目录的写入权限
icacls "D:\HwsHostMaster\phpweb\phpmyadmin\web" /deny "PhpMyAdmin_HWS:(DE)" /C
icacls "D:\HwsHostMaster\phpweb\phpmyadmin\web" /grant:r "PhpMyAdmin_HWS:(OI)(CI)(GR,DE)" "PhpMyAdmin_HWS:(CI)(X)" /C
删除IIS_IUSRS在网站目录的权限
icacls "D:\HwsHostMaster\phpweb\phpmyadmin\web" /remove IIS_IUSRS /C


修改myodbc安装目录的权限
D:\HwsHostMaster\phpweb\myodbc\x64
D:\HwsHostMaster\phpweb\myodbc\x86
删除Everyone用户的权限 加上users读取和执行的权限
icacls "D:\HwsHostMaster\phpweb\myodbc\x64" /remove Everyone /C
icacls "D:\HwsHostMaster\phpweb\myodbc\x86" /remove Everyone /C
icacls "D:\HwsHostMaster\phpweb\myodbc\x64" /grant:r "users:(OI)(CI)RX"
icacls "D:\HwsHostMaster\phpweb\myodbc\x86" /grant:r "users:(OI)(CI)RX"
但删除 D:\HwsHostMaster\phpweb\myodbc\*\myodbc-installer.exe文件的users权限
也就是添加拒绝权限
icacls "D:\HwsHostMaster\phpweb\myodbc\x64\myodbc-installer.exe" /deny "users:RX"
icacls "D:\HwsHostMaster\phpweb\myodbc\x86\myodbc-installer.exe" /deny "users:RX"
由于是单个文件所以不加(OI)(CI)参数


PHP的安装目录只保留一个php-cgi.exe的exe文件
PHP5.2没有php-cgi.exe所以目录不要有任何exe文件
默认已经是将PHP运行在FastCGI模式下
set PHPRUL=D:\HwsHostMaster\phpweb\php
del /f /q "%PHPRUL%52\php.exe" "%PHPRUL%52\php-win.exe" "%PHPRUL%52\phpdbg.exe" "%PHPRUL%52\deplister.exe" "%PHPRUL%52\phar.phar.bat"
del /f /q "%PHPRUL%53\php.exe" "%PHPRUL%53\php-win.exe" "%PHPRUL%53\phpdbg.exe" "%PHPRUL%53\deplister.exe" "%PHPRUL%53\phar.phar.bat"
del /f /q "%PHPRUL%54\php.exe" "%PHPRUL%54\php-win.exe" "%PHPRUL%54\phpdbg.exe" "%PHPRUL%54\deplister.exe" "%PHPRUL%54\phar.phar.bat"
del /f /q "%PHPRUL%55\php.exe" "%PHPRUL%55\php-win.exe" "%PHPRUL%55\phpdbg.exe" "%PHPRUL%55\deplister.exe" "%PHPRUL%55\phar.phar.bat"
del /f /q "%PHPRUL%56\php.exe" "%PHPRUL%56\php-win.exe" "%PHPRUL%56\phpdbg.exe" "%PHPRUL%56\deplister.exe" "%PHPRUL%56\phar.phar.bat"
del /f /q "%PHPRUL%70\php.exe" "%PHPRUL%70\php-win.exe" "%PHPRUL%70\phpdbg.exe" "%PHPRUL%70\deplister.exe" "%PHPRUL%70\phar.phar.bat"
del /f /q "%PHPRUL%71\php.exe" "%PHPRUL%71\php-win.exe" "%PHPRUL%71\phpdbg.exe" "%PHPRUL%71\deplister.exe" "%PHPRUL%71\phar.phar.bat"
del /f /q "%PHPRUL%72\php.exe" "%PHPRUL%72\php-win.exe" "%PHPRUL%72\phpdbg.exe" "%PHPRUL%72\deplister.exe" "%PHPRUL%72\phar.phar.bat"
del /f /q "%PHPRUL%73\php.exe" "%PHPRUL%73\php-win.exe" "%PHPRUL%73\phpdbg.exe" "%PHPRUL%73\deplister.exe" "%PHPRUL%73\phar.phar.bat"
del /f /q "%PHPRUL%74\php.exe" "%PHPRUL%74\php-win.exe" "%PHPRUL%74\phpdbg.exe" "%PHPRUL%74\deplister.exe" "%PHPRUL%74\phar.phar.bat"
del /f /q "%PHPRUL%80\php.exe" "%PHPRUL%80\php-win.exe" "%PHPRUL%80\phpdbg.exe" "%PHPRUL%80\deplister.exe" "%PHPRUL%80\phar.phar.bat"
del /f /q "%PHPRUL%81\php.exe" "%PHPRUL%81\php-win.exe" "%PHPRUL%81\phpdbg.exe" "%PHPRUL%81\deplister.exe" "%PHPRUL%81\phar.phar.bat"
del /f /q "%PHPRUL%82\php.exe" "%PHPRUL%82\php-win.exe" "%PHPRUL%82\phpdbg.exe" "%PHPRUL%82\deplister.exe" "%PHPRUL%82\phar.phar.bat"
del /f /q "%PHPRUL%83\php.exe" "%PHPRUL%83\php-win.exe" "%PHPRUL%83\phpdbg.exe" "%PHPRUL%83\deplister.exe" "%PHPRUL%83\phar.phar.bat"
icacls "%PHPRUL%52\pws-php5cgi.reg" /deny "users:RX"
icacls "%PHPRUL%52\pws-php5isapi.reg" /deny "users:RX"
icacls "%PHPRUL%53\pws-php5cgi.reg" /deny "users:RX"
icacls "%PHPRUL%53\pws-php5isapi.reg" /deny "users:RX"
icacls "%PHPRUL%54\pws-php5cgi.reg" /deny "users:RX"
icacls "%PHPRUL%54\pws-php5isapi.reg" /deny "users:RX"


PHP安装文件夹权限结构:
administrator 完全控制
system 完全控制
users  读取和执行
其他用户的权限一律删除:
set PHPRUL=D:\HwsHostMaster\phpweb\php
icacls "%PHPRUL%52" /remove Everyone /C
icacls "%PHPRUL%52" /remove IIS_IUSRS /C
icacls "%PHPRUL%53" /remove Everyone /C
icacls "%PHPRUL%53" /remove IIS_IUSRS /C
icacls "%PHPRUL%54" /remove Everyone /C
icacls "%PHPRUL%54" /remove IIS_IUSRS /C
icacls "%PHPRUL%55" /remove Everyone /C
icacls "%PHPRUL%55" /remove IIS_IUSRS /C
icacls "%PHPRUL%56" /remove Everyone /C
icacls "%PHPRUL%56" /remove IIS_IUSRS /C
icacls "%PHPRUL%70" /remove Everyone /C
icacls "%PHPRUL%70" /remove IIS_IUSRS /C
icacls "%PHPRUL%71" /remove Everyone /C
icacls "%PHPRUL%71" /remove IIS_IUSRS /C
icacls "%PHPRUL%72" /remove Everyone /C
icacls "%PHPRUL%72" /remove IIS_IUSRS /C
icacls "%PHPRUL%73" /remove Everyone /C
icacls "%PHPRUL%73" /remove IIS_IUSRS /C
icacls "%PHPRUL%74" /remove Everyone /C
icacls "%PHPRUL%74" /remove IIS_IUSRS /C
icacls "%PHPRUL%80" /remove Everyone /C
icacls "%PHPRUL%80" /remove IIS_IUSRS /C
icacls "%PHPRUL%81" /remove Everyone /C
icacls "%PHPRUL%81" /remove IIS_IUSRS /C
icacls "%PHPRUL%82" /remove Everyone /C
icacls "%PHPRUL%82" /remove IIS_IUSRS /C
icacls "%PHPRUL%83" /remove Everyone /C
icacls "%PHPRUL%83" /remove IIS_IUSRS /C


修改php*\php.ini各版本的配置信息,前面加;将自定义缓存目录注释掉,
就会自动将缓存等使用系统的默认缓存目录C:\Windows\Temp
;session.save_path ="D:\HwsHostMaster\phpweb\php*\temp\"
;upload_tmp_dir ="D:\HwsHostMaster\phpweb\php*\temp\"
然后删除缓存文件夹中Everyone的权限:
set PHPRUL=D:\HwsHostMaster\phpweb\php
icacls "%PHPRUL%52\temp" /remove Everyone /C
icacls "%PHPRUL%53\temp" /remove Everyone /C
icacls "%PHPRUL%54\temp" /remove Everyone /C
icacls "%PHPRUL%55\temp" /remove Everyone /C
icacls "%PHPRUL%56\temp" /remove Everyone /C
icacls "%PHPRUL%70\temp" /remove Everyone /C
icacls "%PHPRUL%71\temp" /remove Everyone /C
icacls "%PHPRUL%72\temp" /remove Everyone /C
icacls "%PHPRUL%73\temp" /remove Everyone /C
icacls "%PHPRUL%74\temp" /remove Everyone /C
icacls "%PHPRUL%80\temp" /remove Everyone /C
icacls "%PHPRUL%81\temp" /remove Everyone /C
icacls "%PHPRUL%82\temp" /remove Everyone /C
icacls "%PHPRUL%83\temp" /remove Everyone /C

IIS其他组件的文件夹权限:
如aspjpeg、aspupload、jmail等
administrator 完全控制
system 完全控制
users  读取和执行
其他用户的权限一律删除


主机大师开通的网站权限加强
假设存放所有网站的总目录为D:\wwwroot
D:\wwwroot目录:只保留 Administrators和SYSTEM完全控制 权限 其他的权限删除
如删除Users 用户的权限-先禁用继承并复制-然后删除相关用户的权限 :
icacls "D:\wwwroot" /inheritance:d
icacls "D:\wwwroot" /remove Users /C
相关说明:
ASP脚本和PHP脚本依赖网站运行用户的权限
NET脚本的权限依赖IIS_IUSRS或程序池用户
FTP依赖网站运行用户的权限
ASP和PHP组件依赖Users权限
net代码的写入删除权限依赖程序池用户权限或IIS_IUSRS用户的权限(其一)
php代码的写入删除权限依赖网站身份验证匿名用户的权限
IIS_IUSRS用户不能有写入等权限否则会引起.net跨站攻击
ASPX木马和IIS_IUSRS权限、Users用户组权限有关
网站特定用户运行  PHP木马只拥有Users用户组权限  NET木马拥有IIS_IUSRS权限和Users用户组权限
网站特定用户运行  没有 IIS_IUSRS或程序池用户 无法运行ASPX代码(伪静态组件估计也不行),但是能运行PHP和ASP
网站特定用户运行  ASPX的跨站攻击权限 与 IIS_IUSRS、Users用户组权限有关
网站特定用户运行  PHP木马的权限和Users用户组权限有关
PHP相关插件需要给Users权限


以下服务必须禁用:
Computer Browser、DHCP Client、Print Spooler、Remote Registry、Routing and Remote Access、
Server、TCP/IP NetBIOS Helper、Workstation
关闭Workstation服务防止ASP木马列出用户组和系统进程
由于关闭Workstation服务会关闭Remote Desktop Configuration服务
所以需要关闭Workstation服务前需要远程登陆下服务器
由于关闭DHCP Client服务需要关闭WinHTTP Web Proxy Auto-Discovery Service、Network Location Awareness、Network List Service服务
如果安装安全狗不要禁用Remote Registry服务
如果安装安全狗后提示网络驱动出现异常(驱动服务未启动)也可以先将Workstation服务开启,重新安装安全狗后再禁用Workstation服务
配置好所有环境后禁用"Distributed Transaction Coordinator"(MSDTC)服务,传IIS中存在漏洞
禁用IP Helper服务会执行不了netsh命令,无法命令行做端口映射、防火墙规则、IP安全策略、IP设置等


安装ISAPI_Rewrite3_0112_x64.msi伪静态组件
在ISAPI和CGI限制中将Helicon Proxy_x64删除
在IASPI筛选器中将ISAPI_Rewrite_x64删除
在处理程序映射中奖Helicon Proxy_x64删除
实际起作用的文件是ISAPI_Rewrite.dll(伪静态)和ISAPI_RewriteProxy.dll(反向代理)
删除RegexTest.exe、ConfigEditor.exe文件,以免用这编辑.htaccess文件会还原破解,使得伪静态失效
删除ISAPI_Rewrite_x64.dll、ISAPI_RewriteProxy_x64.dll、ISAPI_Rewrite.chm文件
C:\Program Files\Helicon文件夹只保留Users读取和执行
将ISAPI_RewriteProxy.dll和ISAPI_Rewrite.dll中的Everyone修改为Users
C:\Program Files\Helicon\ISAPI_Rewrite3内的exe文件全部删除Users权限
注意Rewrite.log、error.log删除Users权限,只保留Everyone读取和写入权限,httpd.conf对Everyone只保留读权限


安装SQL2017数据库:
-------------------
安装--全新SQL Server独立安装或向现有安装添加功能--输入产品密钥的形式安装--TDKQD-PKV44-PJT4N-TCJG2-3YJ6B
功能选择(只勾选以下的功能,其他都不用勾选):
数据库引擎服务
SQL Server复制
客户端工具链接
客户端工具向后兼容性
客户端工具SDK
SQL客户端连接SDK
--------------------
并将实例根目录、共享功能目录、共享功能目录(x86)全部修改到E盘
---------------------
数据库引擎配置--混合模式--设置sa的密码--并"添加当前用户"
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
配置SQL2017数据库:
配置工具--SQL Server 2017配置管理器--SQL  Server 网络配置--MSSQLSERVER的协议
右侧"TCP/IP"右键属性--IP地址--"已启用"后全部设置为"是"
并在服务中禁用并停止“SQL Server CEIP service”“SQL Server VSS Writer”“SQL Server 代理”服务
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
安装数据库管理工具SQL Server Management Studio (SSMS) 20.2.30
安装最新版的SQL ManagementStudio (SSMS)后会自动安装Azure Data Studio
Azure Data Studio对一般用户没啥用途
可以直接在 控制面板--程序和功能 中将Azure Data Studio卸载
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
设置以下目录权限:
C:\Program Files\Microsoft Analysis Services
C:\Program Files\Microsoft SQL Server
C:\Program Files (x86)\Microsoft Analysis Services
C:\Program Files (x86)\Microsoft Help Viewer
C:\Program Files (x86)\Microsoft SQL Server
C:\Program Files (x86)\Microsoft SQL Server Management Studio 20
只保留Administrators和SYSTEM权限,其他删除
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
删除E:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL的Users的权限
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
安装SQL2017目前最新的GDR补丁KB5046857
如果安装CU+GDR补丁可能会报错0x851A001A
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
禁用SQL Server (MSSQLSERVER)以外的所有SQL服务
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
使用主机大师对SQLServer进行修复
否则会在开数据库时出现错误:在数据库master中拒绝了CREATE DATABASE权限
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C:\Windows\system32\LogFiles\Sum\Api.log
C:\Windows\system32\LogFiles\Sum\Api.chk
增加NT Service\MSSQLSERVER用户读写权限
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
禁用sa用户在非本机登录:
-------------------------------
创建一个触发器:
CREATE TRIGGER forbiddensa
ON ALL SERVER WITH EXECUTE AS 'sa'
FOR LOGON
AS
BEGIN
--选择sa用户进行限制:
IF ORIGINAL_LOGIN()= 'sa'
--允许sa在本机登录“”
AND
(SELECT EVENTDATA().value('(/EVENT_INSTANCE/ClientHost)[1]', 'NVARCHAR(15)'))
NOT IN('<local machine>','127.0.0.1','192.168.136.250')
     ROLLBACK;
END;
--------------------------------
删除这个触发器的语法:
drop trigger forbiddensa on ALL server
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++





NET网站需要写入属性权限
FIPS影响NET网站:
secpol.msc--安全策略--本地策略--安全选项--“系统加密:将FIPS兼容算法用于加密、哈希和签名”设置为“已禁用”

禁止NET木马查看系统服务、系统用户、系统信息,但是能看系统进程:
C:\Windows\System32\wbem\WmiPrvSE.exe
C:\Windows\SysWOW64\wbem\WmiPrvSE.exe
只给予Administrators组、SYSTEM组“完全控制”,其余用户删掉

防止IIS探测(禁止查看IIS站点):取消users权限
C:\Windows\System32\activeds.dll
C:\Windows\SysWOW64\activeds.dll
C:\Windows\System32\activeds.tlb
C:\Windows\SysWOW64\activeds.tlb

对以下目录取消执行权限,只保留读取和写入权限:
C:\Users\.NET v2.0
C:\Users\.NET v2.0 Classic
C:\Users\.NET v4.5
C:\Users\.NET v4.5 Classic
C:\Users\Classic .NET AppPool
C:\Users\MSSQLSERVER
C:\Users\SQLTELEMETRY
保留C:\Users\MySQL_HWS的修改权限,否则Mysql无法运行


权限扫描工具 对全服务器做权限扫描 注意以下目录权限:
C:\Program Files (x86)\StartIsBack\Orbs
C:\Users\All Users\Microsoft\Crypto\DSS\MachineKeys
C:\Users\All Users\Microsoft\Crypto\RSA\MachineKeys
C:\Users\All Users\Microsoft\RAC\PublishedData
C:\Windows\ModemLogs
C:\Windows\ServiceProfiles\NetworkService
C:\Windows\System32\catroot2\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}
C:\Windows\System32\LogFiles\WMI
C:\Windows\Temp
C:\Windows\WinSxS\Manifests\amd64_microsoft-windows-s..edsecurityupdatesai_31bf3856ad364e35_6.3.9603.30600_none_6022b34506a8b67a.manifest
C:\Users\Administrator\AppData\Local\Microsoft\VsTelemetry\Default\Default.manifest.json
E:\Program Files (x86)\Microsoft SQL Server\140\DTS\DataDumps
E:\Program Files\Microsoft SQL Server\140\DTS\DataDumps


安装冰盾主动防御系统
替换冰盾规则到C:\ProgramData\iDefender覆盖
需要退出冰盾重新打开冰盾 自定义规则才能生效
开启冰盾:自保护、密码保护
设置以下目录权限:
C:\ProgramData\iDefender
C:\Program Files (x86)\iDefender
保留Administrators和SYSTEM权限,其他全部删除


安装ESET服务器版杀毒软件
修改以下目录的权限:
C:\Program Files\ESET
C:\ProgramData\ESET
取消Users的权限
ESET关闭空闲状态下自动扫描--检测引擎--恶意软件扫描--空闲状态扫描--全关闭
在冰盾中设置禁止运行SysInspector.exe和eShell.exe


需要测试下伪静态等外部组件的权限和使用情况


网站权限调整-没Net:
@echo off
title 主机大师开通的ASP+PHP网站权限加强设置
::请注意修改下面的程序池名和网站物理路径
set webuser=piiscn2025
rem 上面webuser的值是程序池名,对应网站的运行用户,也对应网站FTP用户名
set weburl=D:\wwwroot\piiscn2025_5tpgy8\web
rem 上面weburl的值是网站根目录web的物理路径
echo 修正网站运行用户在网站根目录的权限
icacls "%weburl%" /grant:r "%webuser%:(OI)(CI)(R)" /C
icacls "%weburl%" /grant "%webuser%:(OI)(CI)(WD,AD,DE)" "%webuser%:(CI)(X)" /C
icacls "%weburl%" /deny "%webuser%:(DE)" /C
echo 删除IIS_IUSRS权限,以免引起跨站攻击
icacls "%weburl%" /remove IIS_IUSRS /C
echo 增加程序池用户在网站根目录只读权限
icacls "%weburl%" /grant:r "IIS AppPool\%webuser%:(OI)(CI)(R)" /C
pause

网站权限调整-有NET:
@echo off
title 主机大师开通的NET网站权限加强设置
::请注意修改下面的程序池名和网站物理路径
set webuser=piismom
rem 上面webuser的值是程序池名,对应网站的运行用户,也对应网站FTP用户名
set weburl=D:\wwwroot\piismom_q9fmw4\web
rem 上面weburl的值是网站根目录web的物理路径
echo 修正网站运行用户在网站根目录的权限
icacls "%weburl%" /grant:r "%webuser%:(OI)(CI)R" /C
icacls "%weburl%" /grant "%webuser%:(CI)(X)" "%webuser%:(OI)(CI)W" "%webuser%:(OI)(CI)(DE,WDAC)" /C
icacls "%weburl%" /deny "%webuser%:(DE)" /C
rem icacls "%weburl%" /grant:r "%webuser%:(OI)(CI)(R)" /C
rem icacls "%weburl%" /grant "%webuser%:(OI)(CI)(WD,AD,DE)" "%webuser%:(CI)(X)" /C
rem icacls "%weburl%" /deny "%webuser%:(DE)" /C
echo 删除IIS_IUSRS权限,以免引起跨站攻击
icacls "%weburl%" /remove IIS_IUSRS /C
echo 增加程序池用户在网站根目录的权限
icacls "%weburl%" /grant:r "IIS AppPool\%webuser%:(OI)(CI)R" /C
icacls "%weburl%" /grant "IIS AppPool\%webuser%:(CI)(X)" "IIS AppPool\%webuser%:(OI)(CI)W" "IIS AppPool\%webuser%:(OI)(CI)(DE,WDAC)" /C
icacls "%weburl%" /deny "IIS AppPool\%webuser%:(DE)" /C
rem icacls "%weburl%" /grant:r "IIS AppPool\%webuser%:(OI)(CI)(R)" /C
rem icacls "%weburl%" /grant "IIS AppPool\%webuser%:(OI)(CI)(WD,AD,DE)" "IIS AppPool\%webuser%:(CI)(X)" /C
rem icacls "%weburl%" /deny "IIS AppPool\%webuser%:(DE)" /C
pause


cmd命令行读取txt每行出现特定字母则删除
注意:首先确保文件的编码为ANSI格式
要删除包含关键词的行 :
findstr /iv /c:"文件名太长" /c:"方法失败" /c:"试图执行" /c:"Application Data" /c:"ProgramData" 1.txt >6.txt
/iv为不区分大小写排除  /c:后为关键词 可以多个关键词 1.txt是读取的文本  6.txt是提取后保存的文本
如果要保留关键词的行 又怎么操作呢:
findstr /i 权限有问题 1.txt >5.txt
说明: /i 为不区分大小写  权限有问题是关键词  1.txt是读取的文本  5.txt是提取后保存的文本
 

分类:安全公告 百度收录 必应收录