version 2.0 🙂
Give authenticated users modify permission to c:\program files\openvpn\log folder.
Connect with openvpn and check eventlog Application and Services Logs\Microsoft\Windows\Network Profile\Operational look for Event 4003 right click on it and Attack Task To This Event.
Give it a name, start a program, program : wscript.exe, add arguments c:\pathofthescript\openvpn_route.vbs, AND Run with highest Privilegs.
openvpn_route.vbs ( change logfile and openvpnadaptername) :
On error resume next
logfile = "C:\Program Files\OPENVPN\Log\yourlogfilename.log"
OpenVPNAdapterName = "OPENVPN"
A=""
Set WSHShell = wscript.createObject("wscript.shell")
Dim objFSO, strLine, objReadFile,a
Set objFSO = CreateObject("Scripting.FileSystemObject")
set objShare = Wscript.CreateObject("HNetCfg.HNetShare.1")
set objEveryColl = objShare.EnumEveryConnection
if (IsObject(objEveryColl) = TRUE) then
for each objNetConn in objEveryColl
set objShareCfg = objShare.INetSharingConfigurationForINetConnection(objNetConn)
if (IsObject(objShareCfg) = TRUE) then
set objNCProps = objShare.NetConnectionProps(objNetConn)
if (IsObject(objNCProps) = TRUE) then
if objNCProps.Name = OpenVPNAdapterName and objNCProps.Status = 2 then
RouteADD
end if
end if
end if
next
end if
Function RouteADD
Set objReadFile = objFSO.OpenTextFile(logfile, 1, False)
Do Until objReadFile.AtEndOfStream
strLine = objReadFile.ReadLine
if instr(strLine, "C:\Windows\system32\route.exe") Then
A = Mid(strLine,46,90)
WSHShell.Run A
End If
Loop
set objFSO = nothing
end function