new upstream release (3.3.0); modify package compatibility for Stretch
[ossec-hids.git] / active-response / win / firewall-drop.cmd
1 @ECHO OFF
2 ECHO.
3
4 :: Set some variables
5 FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET DAT=%%A %%B
6 FOR /F "TOKENS=1-3 DELIMS=:" %%A IN ("%TIME%") DO SET TIM=%%A:%%B:%%C
7
8 :: Block IP Address
9 SET ACTION=%~1
10 SET SRCIP=%~3
11
12 :: Check for required arguments
13 IF /I "%ACTION%"=="" GOTO ERROR
14 IF /I "%2"=="" GOTO ERROR
15 IF /I "%SRCIP%"=="" GOTO ERROR
16
17
18 IF /I "%ACTION%"=="add" GOTO ADD
19 IF /I "%ACTION%"=="delete" GOTO DEL
20
21 :ERROR
22 ECHO Invalid argument(s).
23 ECHO Usage: firewall-drop.cmd ^(add^|delete^) user IP_Address
24 ECHO Example: firewall-drop.cmd ADD - 1.2.3.4
25 ECHO %DAT%%TIM% "%~f0" %1 %2 %3 (error) >> "%OSSECPATH%active-response\active-responses.log"
26 EXIT /B 1
27
28 :: Adding IP to be blocked
29
30 :ADD
31 ECHO Adding
32 netsh advfirewall firewall add rule name="OSSEC-%SRCIP%" dir=in interface=any action=block remoteip=%SRCIP%  
33 ECHO %DAT%%TIM% "%~f0" %1 %2 %3 >> "%OSSECPATH%active-response\active-responses.log"
34 GOTO EXIT
35
36 :DEL
37 ECHO Removing
38 netsh advfirewall firewall delete rule name="OSSEC-%SRCIP%" dir=in
39 ECHO %DAT%%TIM% "%~f0" %1 %2 %3 >> "%OSSECPATH%active-response\active-responses.log"
40
41
42 :EXIT /B 0: