Categories


Tags


Windows IIS日志文件分析程序

Windows Server具有事件日志记录的功能,其IIS日志文件里记录了包括下列信息:谁访问了您的站点,访问者查看了哪些内容等等。通过定期检查这些日志文件,网站管理员可以检测到服务器或站点的哪些方面易受攻击或存在其他安全隐患。

不过,目前的日志分析工具并不是很完善,有些功能并不具备,特别是针对某个URL地址进行攻击的分析并不多,下面是一个VB Script程序,保存为VBS程序后可以在服务器上运行,用于分析和检测IIS日志里针对某个URL地址进行攻击的IP地址。

'代码开始

targeturl = "/archives/2761.html"  '受攻击网站的URL地址。

logfilepath = "C:\LogFiles\W3SVC\ex110813.log"  '受攻击网站的日志路径。

On Error Resume Next

Set fileobj = CreateObject("scripting.filesystemobject")

Set fileobj2 = CreateObject("scripting.filesystemobject")

Set myfile = fileobj2.opentextfile(logfilepath, 1, False)

Do While myfile.atendofstream <> True

myline = myfile.readline()

myline2 = Split(myline, " ")

newip = myline2(9)

myurl = myline2(5)

If targeturl = myurl Then

writelog newip

End If

Loop

myfile.Close

Set fileobj2 = Nothing

Msgbox "结束."

Sub writelog(errmes)

ipfilename = "blockip.txt"

Set logfile = fileobj.opentextfile(ipfilename, 8, True)

logfile.writeline errmes

logfile.Close

Set logfile = Nothing

End Sub

'代码结束

IIS日志

分析出来的IP如果出现异常,可以通过程序,将其批量添加到IIS的屏蔽IP列表里,下面是网上找到的一段VBScript代码,将其改名为vbs后,把上面那段程序的IP导入,即可批量屏蔽攻击者的IP地址。

'代码开始

'/*=========================================================================

' * Intro VBScript使用ADSI为IIS批量添加屏蔽或允许访问的IP

' * FileName VBScript-ADSI-IIS-Add-Deny-Grant-IP-Change-MetaBase.xml.vbs

' *==========================================================================*/

'AddDenyIP2All "192.168.1.106,255.255.255.0"

'AddDenyIP "123456","127.0.0.1"

'AddDenyIP2All "14.113.226.116"

'添加要屏蔽的IP或一组计算机,到一个指定站点上

Sub AddDenyIP(strWebNo, strDenyIp)

On Error Resume Next

Set SecObj = GetObject("IIS://LocalHost/W3SVC/" & strWebNo & "/Root")

Set MyIPSec = SecObj.IPSecurity

MyIPSec.GrantByDefault = True

IPList = MyIPSec.IPDeny

i = UBound(IPList) + 1

ReDim Preserve IPList(i)

IPList(i) = strDenyIp

MyIPSec.IPDeny = IPList

SecObj.IPSecurity = MyIPSec

SecObj.Setinfo

End Sub

'添加要屏蔽的IP或一组计算机,到IIS公共配置,以应用到所有站点

'如果之前对有些站点单独做过屏蔽IP设置,在些设置不会生效,得在总的网站上设置一下,然后覆盖所有子结点

Sub AddDenyIP2All(strDenyIp)

On Error Resume Next

Set SecObj = GetObject("IIS://LocalHost/W3SVC")

Set MyIPSec = SecObj.IPSecurity

MyIPSec.GrantByDefault = True

IPList = MyIPSec.IPDeny

i = UBound(IPList) + 1

ReDim Preserve IPList(i)

IPList(i) = strDenyIp

MyIPSec.IPDeny = IPList

SecObj.IPSecurity = MyIPSec

SecObj.Setinfo

End Sub

'添加允许的IP或一组计算机,到一个指定站点上

Sub AddGrantIP(strWebNo, strGrantIp)

On Error Resume Next

Set SecObj = GetObject("IIS://LocalHost/W3SVC/" & strWebNo & "/Root")

Set MyIPSec = SecObj.IPSecurity

MyIPSec.GrantByDefault = False

IPList = MyIPSec.IPGrant

i = UBound(IPList) + 1

ReDim Preserve IPList(i)

IPList(i) = strGrantIp

MyIPSec.IPGrant = IPList

SecObj.IPSecurity = MyIPSec

SecObj.Setinfo

End Sub

'添加允许的IP或一组计算机,到IIS公共配置,以应用到所有站点

'如果之前对有些站点单独做过屏蔽IP设置,在些设置不会生效,得在总的网站上设置一下,然后覆盖所有子结点

Sub AddGrantIP2All(strGrantIp)

On Error Resume Next

Set SecObj = GetObject("IIS://LocalHost/W3SVC")

Set MyIPSec = SecObj.IPSecurity

MyIPSec.GrantByDefault = False

IPList = MyIPSec.IPGrant

i = UBound(IPList) + 1

ReDim Preserve IPList(i)

IPList(i) = strGrantIp

MyIPSec.IPGrant = IPList

SecObj.IPSecurity = MyIPSec

SecObj.Setinfo

End Sub

'显示IIS公共配置里禁止访问的IP

Sub ListDenyIP()

Set SecObj = GetObject("IIS://LocalHost/W3SVC")

Set MyIPSec = SecObj.IPSecurity

IPList = MyIPSec.IPDeny 'IPGrant/IPDeny

WScript.Echo Join(IPList, vbCrLf)

' For i = 0 To UBound(IPList)

' WScript.Echo i + 1 & "-->" & IPList(i)

' Next

End Sub

来源:月光博客


Public @ 2019-08-10 15:47:23

Windows Server的IIS和Apache性能

我曾经在《Windows服务器下的IIS和Apache性能比较》一文中比较了IIS和Apache的一些性能比较,并实际搭建了一个Apache+MySQL+PHP的平台,我当时的初步比较是两者在静态HTML的处理能力上基本相同。但是,经过我在实际网站上运行Apache+MySQL+PHP一段时间后,我发现在Windows Server 2003的环境下,Apache 2.2.6的稳定性的确不如IIS

Public @ 2021-12-12 16:01:02

Mirai变种僵尸网络攻击预警

近期已发现多起长期未更新补丁的windows系统遭到Mirai僵尸网络攻击,入侵后服务器会出现大量对外扫描23,1433等端口--中招检测:1.看进程:image.png2.看文件:C:\Windows\system会出现以下文件image.png或者image.png3.看服务:image.png--清理流程:停止异常服务删除异常任务计划my1如果存在mssql,需删除Mssqla等异常数据库管

Public @ 2009-02-26 16:13:34

IIS服务器手机访问不信任解决方法

解决方法: 1. 在IIS管理器中,打开站点,编辑“HTTP 头”,将“信任的表达式类型”和“信任的表达式”改为“*/*”; 2. 在IIS管理器中,打开站点,运行“默认文档”,将“启用 IIS 流量以 HTTP 响应头”前面的对勾去掉; 3. 在IIS管理器中,安全性,安全性政策,客户端 IP 地址信任,勾上“启用客户端 IP 地址信任”; 4. 运行记事本,输入以下内容,保存为“t

Public @ 2023-02-25 14:00:21

更多您感兴趣的搜索

0.458999s