原创作品,首发,转载请注明出处。
最近一段事件,勒索病毒层出不穷,给网络安全造成了极大的压力,为了减轻工作压力,提高工作效率,本人制作了《系统综合安全配置方案》批处理工具,用来设置服务器安全,现在发布出来,希望给有需要的人提供方便,为网络安全做一点点贡献。
【系统综合配置方案】 v1.2 =========================================
1、关闭 默认共享
2、禁用 自动播放
3、开启 防火墙日志
4、设置 防火墙规则
5、查看 防火墙设置 Firewall.cpl
6、查看 当前网络连接
7、配置 账户锁定策略(密码错误10次锁定3分钟)
8、禁用 本地多播名称解析(LLMNR)
e、退出
以下操作 请谨慎:
9、修改 远程桌面 默认端口 (*需重启*)
0、关闭 445端口 (关闭所有共享)
by 陈树林 2021.1.20
*请选择您要设置的项目:: [1,2,3,4,5,6,7,8,9,0,E]?
勒索病毒常见的攻击方式,通过扫描弱口令,登录远程桌面进行投毒。为了避免被攻击,我们可以采取一下操作:
1、关闭共享(0、1选项); # 1选项关闭默认共享,0选项 直接关闭共享功能。
2、多次登录错误,锁定账号(8选项);
3、开启 并 设置防火墙功能(4选项); #釜底抽薪,直接阻挡外部访问。对于需要开放的端口,可以手动指定。
4、开启 防火墙日志。 #防火墙日志用于查看近期网络连接状况,可通过Editplus等编辑软件,通过正则表达式,清除send数据,保留RECEIVE,分析来自外部的网络访问。
放到百度网盘一份,以免贴出代码中出现代码错乱。
链接: pan.baidu.com/s/194fJyptwRyTs1_0wE6hJkg
提取码: t7hd
详细代码如下,请复制到记事本中,另存为.bat 文件
@echo off
rem 以下3行命令用来判断 批处理文件是否以管理员权限运行
@Rd "%WinDir%\system32\test_permissions" >NUL 2>NUL
@Md "%WinDir%\System32\test_permissions" 2>NUL||(Echo 请使用右键管理员身份运行!&&Pause >nul&&Exit)
@Rd "%WinDir%\System32\test_permissions" 2>NUL
rem 获取当前远程桌面端口
@for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A OldPort=%%a )
set CallBy=""
rem ##############################################
@cls
:menu
@color 07
@echo 【系统综合配置方案】 v1.2
@echo =========================================
@echo 1、关闭 默认共享
@echo 2、禁用 自动播放
@echo 3、开启 防火墙日志
@echo 4、设置 防火墙规则
@echo 5、查看 防火墙设置 Firewall.cpl
@echo 6、查看 当前网络连接
@echo 7、配置 账户锁定策略(密码错误10次锁定3分钟)
@echo 8、禁用 本地多播名称解析(LLMNR)
@echo e、退出
@echo.
@echo 以下操作 请谨慎:
@echo 9、修改 远程桌面 默认端口 (*需重启*)
@echo 0、关闭 445端口 (关闭所有共享)
@echo by 陈树林 2021.1.20
@echo.
@echo.
@choice /c:1234567890e /m " *请选择您要设置的项目::"
@if %errorlevel%==1 goto ShutDownDefaultShare
@if %errorlevel%==2 goto DisableAutoDiskRun
@if %errorlevel%==3 goto OpenFwLog
@if %errorlevel%==4 goto fwRule
@if %errorlevel%==5 @start firewall.cpl && @cls && @echo. && @echo 正在打开【防火墙配置】... && @echo. && @echo. && @echo. && @goto menu
@if %errorlevel%==6 goto ListNetstat
@if %errorlevel%==7 goto LockAccount
@if %errorlevel%==8 goto DisabledLLMNR
@if %errorlevel%==9 goto ChangeRdpPort
@if %errorlevel%==10 goto Close445
@if %errorlevel%==11 goto end
@if %errorlevel%==12 goto end
:ShutDownDefaultShare
@cls
@echo.
@echo ============================
@echo 【关闭 Windows 默认共享】
@echo ============================
reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /f /v "AutoShareServer" /t REG_DWORD /d 0
reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /f /v "AutoShareWks" /t REG_DWORD /d 0
@echo.
@echo ※重启后 Windows 默认共享 将关闭。
@echo.
@echo.
@echo.
@echo.
@echo.
@goto menu
:OpenFwLog
@cls
@echo 【开启 Windows防火墙日志】
@echo =====================================================
@echo Windows不会按日期生成防火墙日志,需要手动创建计划任务
@echo 请选择 创建日志的频率:
@echo 1:每天
@echo 2:每周
@echo M:返回主菜单
@echo.
@echo ※执行过程中,如果被杀毒软件拦截,请选择“允许操作”
@echo.
@set "year=%date:~0,4%"
@set "month=%date:~5,2%"
@set "day=%date:~8,2%"
@if not exist %SystemDrive%\PerfLogs (mkdir %SystemDrive%\PerfLogs)
@if not exist %SystemDrive%\PerfLogs\FireWall (mkdir %SystemDrive%\PerfLogs\FireWall)
@echo @echo off > %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat >nul
@echo @echo off > %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat >nul
@echo @set "year=%%date:~0,4%%" >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
@echo @set "month=%%date:~5,2%%" >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
@echo @set "day=%%date:~8,2%%" >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
@echo @netsh advfirewall set allprofiles logging filename %%SystemDrive%%\PerfLogs\Firewall\Firewall-%%year%%%%month%%%%day%%.log ^>nul >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
@echo @netsh advfirewall set allprofiles logging maxfilesize 32767 ^>nul >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
@echo @netsh advfirewall set allprofiles logging allowedconnections enable ^>nul >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
@choice /c:12m /m " *请选择您要设置的周期::"
@if %errorlevel%==1 goto EveryDay
@if %errorlevel%==2 goto EveryWeek
@if %errorlevel%==3 cls && goto menu
:EveryDay
@echo.
@echo Step1:*正在创建:每天生成【生成防火墙日志】计划任务 ......
@schtasks /create /tn "StartFireWallLog" /ru system /tr %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat /F /sc DAILY /st 07:30 /MO 1 >nul
@goto SetFwLog
:EveryWeek
@echo.
@echo Step1:*正在创建:每周一生成【生成防火墙日志】计划任务 ......
@schtasks /create /tn "StartFireWallLog" /ru system /tr %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat /F /sc WEEKLY /D MON /st 07:30 /MO 1 >nul
@goto SetFwLog
:SetFwLog
@echo ※计划任务 添加完成。
@echo.
@echo Step2:*立即开启防火墙日志......
@netsh advfirewall set allprofiles logging filename %SystemDrive%\PerfLogs\Firewall\Firewall-%year%%month%%day%.log >nul
@netsh advfirewall set allprofiles logging maxfilesize 32767 >nul
@netsh advfirewall set allprofiles logging allowedconnections enable >nul
@netsh advfirewall set allprofiles logging droppedconnections disable >nul
@netsh advfirewall set allprofiles firewallpolicy blockinbound,notconfigured >nul
@echo ※防火墙日志【已开启】
@echo ----------------------
@echo.
@echo.
@echo.
@echo.
@goto menu
:fwRule
@cls
:ContinuefwRule
@for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A CurrPort=%%a )
@if not "%CurrPort%"=="%OldPort%" set CurrPort=%CurrPort%,%OldPort%
@echo 【设置默认防火墙规则】
@echo =========================================
@echo 请选择配置方式:
@echo 1、使用默认 防火墙配置
@echo 2、手动指定 防火墙放通端口
@echo 3、查看 当前放通端口
@echo 4、查看 当前网络连接
@echo M、返回主菜单
@echo.
@echo 默认防火墙配置:
@echo cTool-TCP:%CurrPort%
@echo cTool-UDP:8000
@echo cTool-RDP:%CurrPort%(当前远程桌面端口)
@echo.
@echo.
@echo ※请确保所有 需要开放的端口 都已添加,避免远程无法连接
@echo ※执行过程中,如果被杀毒软件拦截,请选择“允许操作”
@echo.
@choice /c:1234m /m " 请选择您的配置方式:"
@if %errorlevel%==1 goto defaultFW
@if %errorlevel%==2 goto manualFW
@if %errorlevel%==3 goto showFW
@if %errorlevel%==4 set CallBy="fwRule" && goto ListNetstat
@if %errorlevel%==5 cls && goto menu
:defaultFW
@for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A CurrPort=%%a )
@if not "%CurrPort%"=="%OldPort%" set CurrPort=%CurrPort%,%OldPort%
@echo.
@echo 已选择:【默认防火墙配置】
@echo ===========================================
@echo 1、正在 添加 cTool-TCP 规则,开启TCP:%CurrPort%端口 ...
@netsh advfirewall firewall delete rule name=cTool-TCP dir=in > nul
@netsh advfirewall firewall add rule name=cTool-TCP dir=in action=allow protocol=tcp localport=%CurrPort% > nul
@echo ※cTool-TCP 规则 添加完成。
@echo.
@echo 2、正在 添加 cTool-UDP 规则,开启UDP:8000端口 ...
@netsh advfirewall firewall delete rule name=cTool-UDP dir=in > nul
@netsh advfirewall firewall add rule name=cTool-UDP dir=in action=allow protocol=udp localport=8000 > nul
@echo ※cTool-UDP 规则 添加完成。
@echo.
@echo 3、正在 添加 cTool-RDP 远程桌面规则,开启TCP:%CurrPort%端口 ...
@netsh advfirewall firewall delete rule name=cTool-RDP dir=in > nul
@netsh advfirewall firewall add rule name=cTool-RDP dir=in action=allow protocol=tcp localport=%CurrPort% > nul
@echo ※cTool-RDP 远程桌面规则 添加完成。
@echo ----------------------------------------------------
@echo.
@echo.
goto StartFireWall
:manualFW
@for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A CurrPort=%%a )
@if not "%CurrPort%"=="%OldPort%" set CurrPort=%CurrPort%,%OldPort%
@echo.
@echo 已选择:【手动指定防火墙放通端口】
@echo ===========================================
@echo 仅允许输入:数字、“,”、“-”,或者按“M”返回
@echo 使用英文“,”分隔单个端口、使用“-”指定一段端口
@echo 数字范围:1025-65535
@echo 例如:3389,6000,7890-7889
@echo
@echo.
@echo.
:tcp
@set /p tcpPort=请输入要放通的 TCP端口:
@if "%tcpPort%"=="m" cls && goto fwRule
@if "%tcpPort%"=="M" cls && goto fwRule
@echo %tcpPort%|findstr "^[0-9,\-][0-9,\-]*$">nul&& (@echo. >nul)|| (@echo *对不起,端口 必须是:0-9、“,”、“-”,请重新输入(返回请按:M)。&& @echo. && @echo. && goto tcp )
@netsh advfirewall firewall delete rule name=cTool-TCP dir=in > nul
@netsh advfirewall firewall add rule name=cTool-TCP dir=in action=allow protocol=tcp localport=%CurrPort%,%tcpPort% > nul
@echo ※cTool-TCP 规则 添加完成,放通的 TCP端口是:%CurrPort%,%tcpPort%
@echo.
:udp
@set /p udpPort=请输入要放通的 UDP端口:
@if "%udpPort%"=="m" cls && goto fwRule
@if "%udpPort%"=="M" cls && goto fwRule
@echo %udpPort%|findstr "^[0-9,\-][0-9,\-]*$">nul&& (@echo. >nul)|| (@echo *对不起,端口 必须是:0-9、“,”、“-”,请重新输入(返回请按:M)。&& @echo. && @echo. && goto udp )
@netsh advfirewall firewall delete rule name=cTool-UDP dir=in > nul
@netsh advfirewall firewall add rule name=cTool-UDP dir=in action=allow protocol=UDP localport=%udpPort% > nul
@echo ※cTool-UDP 规则 添加完成,放通的 UDP端口是:%udpPort%
@echo.
@echo 添加 cTool-RDP 远程桌面规则,开启TCP:%CurrPort%端口 ...
@netsh advfirewall firewall delete rule name=cTool-RDP dir=in > nul
@netsh advfirewall firewall add rule name=cTool-RDP dir=in action=allow protocol=tcp localport=%CurrPort% > nul
@echo ※cTool-RDP 远程桌面规则 添加完成。
@echo ----------------------------------
@echo.
@echo.
goto StartFireWall
:showFW
@cls
@echo.
@echo 当前防火墙 放通的端口:
@echo ===================================
@for /f "tokens=1,2-28,*" %%b in ('netsh Advfirewall firewall show rule name^=cTool-TCP') do (if "%%b" equ "本地端口:" (@echo cTool-TCP放通端口:%%d ))
@for /f "tokens=1,2-28,*" %%b in ('netsh Advfirewall firewall show rule name^=cTool-UDP') do (if "%%b" equ "本地端口:" (@echo cTool-UDP放通端口:%%d ))
@for /f "tokens=1,2-28,*" %%b in ('netsh Advfirewall firewall show rule name^=cTool-RDP') do (if "%%b" equ "本地端口:" (@echo cTool-RDP放通端口:%%d))
@echo.
@echo.
@echo.
goto ContinuefwRule
:StartFireWall
@echo.
@echo.
@echo 是否现在【开启防火墙】?
@echo ===========================================
@echo ※请确保所有 需要放通的端口 都已添加,避免远程无法连接。※
@echo.
@choice /c:yn /m "*立刻【开启防火墙】请按:Y,放弃:N"
@if %errorlevel%==2 @echo. && @echo ※保持当前防火墙状态 && @echo. && @echo. && @echo. && @echo. && @echo. && goto menu
@echo 启动 防火墙服务 ...
@sc start MpsSvc > nul
@echo 启动 防火墙策略 ...
@netsh advfirewall set allprofiles state on > nul
@echo 设置 防火墙服务 为自动启动 ...
@sc config MpsSvc start= auto > nul
@echo.
@echo 设置完成:【防火墙】已开启
@echo ---------------------------
@echo.
@echo.
@echo.
@echo.
@goto menu
rem 修改 远程桌面端口 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
:ChangeRdpPort
@cls
@color 2e
rem @ver | find "6." > NUL && set RdpRegPath=HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
@for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A CurrPort=%%a )
@set port=
@echo 【修改远程桌面端口】
@echo ================================
@echo 当前远程桌面端口为:%CurrPort%
@echo.
@echo ※请谨慎修改端口※
@echo ※修改后可能造成防火墙拦截,无法访问远程桌面服务※
@echo ※修改后,需立刻重启服务器※
@echo 返回主菜单:请按M
@echo.
@echo.
:inputPort
@set /p port=请输入新端口(必须纯数字):
@if "%port%"=="m" cls && goto menu
@if "%port%"=="M" cls && goto menu
@echo %port%|findstr "^[0-9][0-9]*$">nul&& goto isNum || (@echo * 端口 必须是数字,请重新输入。&& @echo * 返回主菜单:请按M && @echo. && @echo. && goto inputPort )
@goto end
:isNum
@if %port% gtr 1024 (if %port% leq 65535 (goto ChangePort) else (@echo *输入的端口 必须大于:1024,小于等于:65535)) else (@echo *输入的端口 必须大于:1024,小于等于:65535)
@echo.
@echo.
@goto inputPort
:ChangePort
@set RdpRegPath=HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
@set rdpwdPath=HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp
reg add "%RdpRegPath%" /f /v "PortNumber" /t REG_DWORD /d %port% >nul
reg add "%rdpwdPath%" /f /v "PortNumber" /t REG_DWORD /d %port% >nul
rem 添加防火墙规则,避免被拦截
@set AllowPort=%port%
@if not "%CurrPort%"==%port% set AllowPort=%CurrPort%,%AllowPort%
@if not "%CurrPort%"=="%OldPort%" (@if not "%OldPort%"==%port% set AllowPort=%OldPort%,%AllowPort%)
@netsh advfirewall firewall delete rule name=cTool-RDP dir=in > nul
@netsh advfirewall firewall add rule name=cTool-RDP dir=in action=allow protocol=tcp localport=%AllowPort% > nul
@echo.
@echo ※修改完成:
@echo ※远程桌面端口已经修改为:【%port%】
@echo ------------------------------------
@echo.
@echo.
@echo.
:needReboot
@echo ※※ 【请立刻重启服务器】 ※※
@pause >nul
@goto needReboot
rem 修改 远程桌面端口 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
:Close445
@cls
@echo.
@echo 【 关闭445端口 】
@echo ==============================================
@echo 此功能用于 关闭共享服务,让出占用的445端口
@echo.
@echo 注意:
@echo 关闭后,此电脑 不能对外提供 共享服务。
@echo 关闭后,此电脑 访问其他电脑 共享文件不受影响。
@echo 重启后生效。
@echo.
@echo 确认关闭 :请按 Y
@echo 恢复共享服务:请按 R
@echo 返回主菜单 :请按 M
@echo.
@echo.
@choice /c:yrm /m "请选择您的操作:"
@if %errorlevel%==1 goto ConfirmClose445
@if %errorlevel%==2 goto Reset445
@if %errorlevel%==3 @cls && goto menu
:ConfirmClose445
@reg add HKLM\SYSTEM\CurrentControlSet\Services\NetBT\Parameters /f /v "SMBDeviceEnabled" /t REG_DWORD /d 0 >nul 2>nul
@sc config LanmanServer start= DISABLED >nul 2>nul
@echo.
@echo ========================
@echo 操作完成
@echo 重启后 445端口 将关闭。
@echo ========================
@echo.
@echo.
@echo.
@echo.
@goto menu
:Reset445
@reg delete HKLM\SYSTEM\CurrentControlSet\Services\NetBT\Parameters /f /v "SMBDeviceEnabled" >nul 2>nul
@sc config LanmanServer start= AUTO >nul 2>nul
@echo.
@echo =========================
@echo 操作完成
@echo 重启后 共享服务 将恢复。
@echo =========================
@echo.
@echo.
@echo.
@echo.
@goto menu
:LockAccount
@cls
@echo 【设置账户锁定策略】
@echo ==================================
@echo 为了保障服务器密码不被暴力破解
@echo 设定:
@echo 密码错误 10次,账户锁定 3分钟。
@echo.
@echo 开启策略 :请按 Y
@echo 关闭策略 :请按 R
@echo 返回主菜单:请按 M
@echo.
@echo.
@choice /c:yrm /m "请选择您的操作:"
@if %errorlevel%==1 goto StartLock
@if %errorlevel%==2 goto CancelLock
@if %errorlevel%==3 @cls && goto menu
:StartLock
@echo.
@echo.
@echo ※设置【密码错误10次锁定账户】:
@net accounts /lockoutthreshold:10
@echo ※设置【账户锁定时间:3分钟】:
@net accounts /lockoutwindow:3
@net accounts /lockoutduration:3 >nul
@echo.
@echo.
@echo.
@echo.
@goto menu
:CancelLock
@echo.
@echo.
@echo *取消【账户密码错误锁定策略】:
@net accounts /lockoutthreshold:0
@echo.
@echo.
@echo.
@echo.
@goto menu
:DisableAutoDiskRun
@cls
@echo.
@echo 禁用【自动播放】
@echo ================================================================
@echo 自动播放:微软为了提高用户体验,对于新插入的U盘,或双击磁盘盘符,
@echo 提供了默认操作,这一功能被别有用心的人利用了,成了病毒、木马、黑
@echo 客工具的温床,为排除安全隐患,请尽量禁止“自动播放”功能。
@echo.
@echo 禁用 :请按 Y
@echo 恢复 :请按 R
@echo 返回主菜单:请按 M
@echo.
@echo.
@choice /c:yrm /m "请选择您的操作:"
@if %errorlevel%==1 goto ConfirmDisableAutoDiskRun
@if %errorlevel%==2 goto CancelDisableAutoDiskRun
@if %errorlevel%==3 @cls && goto menu
:ConfirmDisableAutoDiskRun
REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "NoDriveTypeAutoRun" /t REG_DWORD /d 255 /f >nul 2>nul
@echo.
@echo ========================
@echo 操作完成
@echo 已禁用【自动播放】
@echo ========================
@echo.
@echo.
@echo.
@echo.
@goto menu
:CancelDisableAutoDiskRun
REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "NoDriveTypeAutoRun" /f >nul 2>nul
@echo.
@echo =========================
@echo 操作完成
@echo 已允许【自动播放】
@echo =========================
@echo.
@echo.
@echo.
@echo.
@goto menu
:DisabledLLMNR
@cls
@echo.
@echo 禁用【链路本地多播名称解析(LLMNR)】
@echo =============================================================
@echo LLMNR 是辅助名称解析协议。
@echo LLMNR 使用多播机制,在一个子网上的本地网络 获取DNS 名称解析,
@echo 能在无法进行传统的 DNS 名称解析的情况下提供名称解析功能。
@echo.
@echo 关闭解析 :请按 Y
@echo 恢复解析 :请按 R
@echo 返回主菜单:请按 M
@echo.
@echo.
@choice /c:yrm /m "请选择您的操作:"
@if %errorlevel%==1 goto ConfirmDisabledLLMNR
@if %errorlevel%==2 goto CancelDisabledLLMNR
@if %errorlevel%==3 @cls && goto menu
:ConfirmDisabledLLMNR
REG ADD "HKLM\Software\policies\Microsoft\Windows NT\DNSClient" /v "EnableMulticast" /t REG_DWORD /d "0" /f >nul 2>nul
@echo.
@echo ========================
@echo 操作完成
@echo 已禁用【链路本地多播名称解析(LLMNR)】
@echo ========================
@echo.
@echo.
@echo.
@echo.
@goto menu
:CancelDisabledLLMNR
REG ADD "HKLM\Software\policies\Microsoft\Windows NT\DNSClient" /v "EnableMulticast" /t REG_DWORD /d "1" /f >nul 2>nul
@echo.
@echo =========================
@echo 操作完成
@echo 已允许【链路本地多播名称解析(LLMNR)】
@echo =========================
@echo.
@echo.
@echo.
@echo.
@goto menu
:ListNetstat
@cls
@echo 查看系统 当前打开的TCP端口
@echo =========================== Code by 陈树林 ===
@echo.
@echo 打开端口 进程ID 进程名称
for /f "tokens=2,5" %%i in ('netstat -anop tcp^|findstr LISTENING') do (
for /f "tokens=1,2" %%k in ('tasklist /nh^|findstr %%j') do (
if %%j NEQ 4 (if "%%k" neq "wininit.exe" (if "%%k" neq "QQ.exe" (
if "%%k" neq "services.exe" (if "%%k" neq "lsass.exe" (
if "%%k" neq "spoolsv.exe" (if "%%k" neq "360se.exe" (
if "%%k" neq "vmware-hostd.exe" (if "%%k" neq "vmware-authd.exe" (
if "%%k" neq "360tray.exe" (
if %%j==%%l ( @echo %%i %%j %%k) ))))))))))
)
)
@echo.
@echo.
@echo.
@echo.
if %CallBy% neq "fwRule" (@goto menu) else (set CallBy="" && goto ContinuefwRule)
:end