<?xml version="1.0" encoding="gb2312"?>

<!-- RSS generated by oioj.net on 4/16/2004 ; 感谢LeXRus提供 RSS 2.0 文档; 此文件可自由使用，但请保留此行信息 --> 
<!-- Source download URL: http://blogger.org.cn/blog/rss2.asp       -->
<rss version="2.0">

<channel>
<title>iisutm2的博客</title>
<link>http://blogger.org.cn/blog/blog.asp?name=iisutm2</link>
<description>iisutm2的博客</description>
<copyright>blogger.org.cn</copyright>
<generator>W3CHINA Blog</generator>
<webMaster>webmaster@blogger.org.cn</webMaster>
<item>
<title><![CDATA[IISUTM网站防火墙 V1.1 免费试用活动]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45788</link>
<author>iisutm2</author>
<pubDate>2009/6/3 9:35:38</pubDate>
<description><![CDATA[<P>IISUTM网站防火墙 V1.1 免费试用活动</P>
<P><BR>开始日期:2009-05-11<BR>活动状态:进行中</P>
<P>参加活动要求：<BR>拥有独立服务器的个人以及公司组织，要求windowsNT,2000,2003，使用IIS的WEB服务器。</P>
<P>免费活动内容 ：<BR>1.免费获得软件一个月注册码，试用期内无任何限制的享受软件的所有功能。<BR>2.享受我们提供的全方位的WEB安全服务，有专门的安全团队在使用IISUTM的基础上为您的服务器提供全方位的保护。<BR>3.可以享受购买正式产品的折扣。</P>
<P>报名邮箱：<A href="mailto:license@iisutm.com">license@iisutm.com</A><BR>报名QQ群：12773662<BR>了解详情请登陆：<A href="http://www.iisutm.com">www.iisutm.com</A></P>]]></description>
</item><item>
<title><![CDATA[iisutm 产品功能]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45223</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:27:37</pubDate>
<description><![CDATA[<P>iisutm 产品功能</P>
<P>&nbsp;<BR>原文：<A href="http://www.iisutm.com">www.iisutm.com</A></P>
<P><BR>禁用代理访问<BR>可禁止用户通过代理服务器访问您的网站，杜绝恶意非法发布信息者。</P>
<P><BR>&nbsp;<BR>保护帐户的安全<BR>保证Web来宾用户在进行身份验证时的合法性，以及不允许使用系统帐户等高危险帐户和阻止用户使用弱口令作为登陆的口令，您还可以添加您不希望客户使用的帐户名称和密码。</P>
<P><BR>&nbsp;<BR>防护CC攻击<BR>HTTPCookies及RequestMonitor两种独家绝技实现100%防护CC通过刷脚本对数据库的攻击，并且完全不影响正常用户的合法访问。</P>
<P><BR>防盗链功能<BR>提供针对Referer、QueryString、Cookies及Session等多种形式的认证保护，可提供对图片、文件、音乐、电影及会员资源的盗链保护，并且独特具备防止迅雷、FlashGet、QQ旋风等P2SP工具的恶意传播下载。</P>
<P><BR>&nbsp;防止黑客入侵/SQL注入<BR>拥有URL与Cookies过滤、IISGuard安全卫士及TrustScript可信脚本认证等多个防黑客模块，全面保护您的服务器安全，阻止黑客通过 SQL注入、Unicode恶意编码、跨站脚本攻击、WebShell利用、木马上传等多种攻击方式入侵您的服务器，是至今为止功能最&nbsp; 强大的IIS防黑客保护产品之一。 </P>
<P>&nbsp;</P>
<P>防止XSS攻击/信息监控拦截<BR>实时监控用户提交的信息，拦截诸如javascript特征字符串以及色情、邪教、反党等非法内容，从而再也不必担心服务器被封。</P>
<P>&nbsp;</P>
<P><BR>防止源代码泄露<BR>有效禁止非法脚本执行，防止源代码泄漏。</P>
<P>&nbsp;</P>
<P>自动程序防护<BR>阻止来自其他的黑客工具自动扫描，恶意Spider抓取站点的信息,页面源代码查询以及图片下载工具和间谍软件等等自动程序对web站点的访问以及资源获取，最大程度上的保证站点的内容安全。</P>
<P>&nbsp;</P>
<P>文件类型访问许可<BR>用户可以轻松配置您所允许客户端访问的文件名称以及文件扩展名，保证数据库等核心文件不会被客户端获取。</P>
<P>&nbsp;</P>
<P>IP黑名单<BR>可将恶意IP或IP段放入黑名单中，阻止其对网站的非法访问。</P>
<P>&nbsp;</P>
<P>IP授权访问<BR>不仅可授权指定的IP为可信IP，而且可授权指定的网站链接受保护的资源。</P>
<P><BR>&nbsp;<BR>详尽的日志记录<BR>IISUTM提供了详尽的日志记录以及可以自定义的日志管理，用户能够根据日志的情况，进行针对性IISUTM的配置，以提高使用的性能。</P>
<P>&nbsp;<BR>&nbsp;<BR>全方位的IIS安全管理<BR>除了以上这些功能例外，我们还提供了适合高级用户使用的全面的IIS安全配置管理， 例如请求动词，事件响应，连接限制，URL扫描，HTTP报头扫描，查询字符串扫描，虚拟目录，Web应用程序管理等等全面的IIS安全配置管理。<BR>&nbsp;</P>]]></description>
</item><item>
<title><![CDATA[iisutm 产品介绍]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45222</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:27:18</pubDate>
<description><![CDATA[<P>iisutm 产品介绍</P>
<P>原文：<A href="http://www.iisutm.com">www.iisutm.com</A></P>
<P>计算机国际互联网发展到今天取得了巨大成功。电子商务和电子政务等网络技术的应用和普及不仅给人们的生活带来了极大方便，而且正在创造着巨大的财富。但与此同时，提供互联网WEB服务的WEB服务器也越来越多的遭受着黑客、病毒等许多危害，数据被篡改和窃取、文件被破坏，人们在享受互联网带来便利的同时也在遭受着各种各样的安全威胁，越来越多政府部门和企业单位开始采用各种网络安全工具来保护自己的WEB服务器。但是，网络安全问题不但依然存在，而且更加严重。全球每天有几十万台WEB服务器遭受攻击，上百万台计算机感染病毒，其中不乏采用了防火墙、入侵检测等网络安全产品的用户。</P>
<P>那么，有没有更高级别的安全解决方案，可以更有效的保护WEB服务器的安全？答案是肯定的。人们通过反复实践之后发现：ISAPI Filter技术是对付各种WEB服务器危害最为有用的办法。原理很简单，当WEB服务器接受请求的时候，对这些请求进行针对性的过滤，在IIS内核中实现真正意义上的全方位安全防护。<BR>大量重要部门，如金融、电力、电信、医疗、交通等行业网络WEB服务器都对安全防护有越来越多的需求。各种采用IIS作为WEB服务器的门户网站，行业网站，企业网站以及个人的站点，由于IIS本身的安全隐患，以及程序员开发中所没有进行溢出等安全处理等等原因，需要采用专门针对IIS的第三方安全应用产品。<BR>IISUTM可灵活部署在大中型网站及中小企业网站的WEB服务器里， 保护用户网站免受黑客攻击、 内容盗用、 恶意代码等混合威胁的侵害；同时还为用户提供简便统一地管理各种安全特性及相关日志、报告，大大降低了设备部署、管理和维护的运营成本。<BR>IISUTM在技术上采用先进的全状态内核检测技术，可通过简单的配置和管理，以较低的维护成本为用户提供一个高级别保护的“安全隔离区”。它对经过IIS的数据流进行请求合法性、是否为黑客入侵等进行高效检测，所有的检测都是在实时状态下进行，具有很高的网络性能。<BR>IISUTM不同于一般的小型Web应用防火墙产品，而是一款企业级的全方位应用安全防护产品，它是由一个多年从事安全产品的团队开发而成，功能上具备防黑客、防盗链、防机器人等多种安全防护和管理能力，效率上在IIS内核中采用ISAPI Filter技术使得其具有瞬间的即时处理能力，管理上采用B/S管理，在Web服务器部署IISUTM以后，不需要安装任何客户端软件，在能够访问网络的 地方通过浏览器可以轻松管理。</P>
<P><BR>&nbsp;</P>]]></description>
</item><item>
<title><![CDATA[iis安全 检查清单]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45221</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:26:43</pubDate>
<description><![CDATA[<P>iis安全 检查清单</P>
<P>原文：<A href="http://windows.stanford.edu/docs/IISsecchecklist.htm">http://windows.stanford.edu/docs/IISsecchecklist.htm</A></P>
<P>译文：<A href="http://www.iisutm.com">http://www.iisutm.com</A></P>
<P>下面是安全要点的简要清单，在检查这些安全要点之前需要确保IIS服务器在线。在违反下面安全要点的情况下，管理员可能需要了解安全文档中对已知的安全问题应该发生的安全危害的介绍。</P>
<P><BR>一般性假设</P>
<P>&nbsp;&nbsp;&nbsp; </P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.域控制器上没有IIS。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.仅安装需要的服务( FTP,WWW,SMTP,NNTP)发送邮件不需要SMTP服务；可以使用CDOSYS.DLL（一个Windows提供的COM组件）或者使用第三方的Web应用程序例如：blat.exe来发送邮件。</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.从不使用跨服务器的虚拟目录。</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.底层的Windows操作系统是可以靠的。</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5.仅系统管理员是本地管理员。</P>
<P><BR>设计指南</P>
<P><BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.网站绝不应该在系统驱动器上。 </P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.如果传播的信息是敏感的需要安装SSL，如果SSL已经启用则请求SSL（通过访问端口 80 的删除能力）。</P>
<P>&nbsp;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.所有的FTP站点和需要的万维网站点需要启用对“stanford-only”的站点进行IP筛选。IPSec筛选器可用于实现这一目标。 </P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.虚拟目录应尽少使用， 除非您需要跨驱动器否则不需要使用虚拟目录。 如果需要跨驱动器，需要基于安全隐患重新考虑。</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5.移除NTFS驱动器下所有可移除的写入权限。</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp; 6.不要让其他人很容易地找到脚本和代码。黑客通过这些代码寻找漏洞，他们可以使用这些漏洞来控制服务器.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 下面是一些好的防范方法：</P>
<P>不要为您的Scripts目录使用明显的名称，考虑重命名您的脚本的扩展名为不寻常的字符。 例如，将 myscript.asp 重命名为 myscript.dum。 这将需要在ISAPI 扩展名映射（MIME）增加一个映射.dum到特定的代码处理器（在这种情况下是改变到“asp.dll”代码处理器）。 这样会使您的脚本难以找到。 顺便说一下一种特殊情况，重命名所有的.asp为.html 不需要修改 ISAPI 扩展名映射。</P>
<P>考虑编译所有的到DLL文件中。这不仅保护了源代码，也大大提高了性能。编译过的代码运行比原来的脚本将近快20倍。 </P>
<P>Web 应用程序 （即脚本和可执行文件） 只需要有限的权限就能正常运行。 提供更多的权限将会被黑客利用来下载文件和分析您的代码的漏洞，以及允许黑客下载你的代码。 所需的最低权限是：NTFS： 读取，IIS：执行，IIS：不需要读取。</P>
<P><BR>7.小心使用 IIS 服务器上的添加/删除控制面板。 如果您打开 Windows 组件，Windows 会无意中重置所有 ISAPI 筛选器和扩展为默认值并可以重置其它事情。这是Microsoft的其中一个你需要小心的有问题的设计。</P>
<P>&nbsp;</P>
<P>安装和配置</P>
<P>&nbsp;</P>
<P>1.删除所有默认虚拟目录 （带有世界顶部的文件夹的图标） 和应用程序根 （带有绿球在框中的图标）</P>
<P><BR>删除iisadmin </P>
<P><BR>删除iissamples </P>
<P>删除msadc </P>
<P>删除iishelp </P>
<P>删除scripts </P>
<P><BR>删除printers</P>
<P><BR>2.删除所有默认内容</P>
<P><BR>删除%systemdirectory%\inetsrv\iisadmin </P>
<P><BR>删除%systemdirectory%\inetsrv\iisadmpwd </P>
<P>删除inetpub\wwwroot (or \ftproot or \smtproot) </P>
<P><BR>删除inetpub\scripts </P>
<P><BR>删除inetpub\iissamples </P>
<P><BR>删除inetpub\adminscripts </P>
<P><BR>删除%systemroot%\help\iishelp\iis</P>
<P><BR>删除%systemroot%\web\printers</P>
<P><BR>删除%systemdrive%\program files\common files\system\msadc.只有使用Microsoft Access 数据库的网站需要 msadc。</P>
<P>&nbsp;</P>
<P>3.配置默认网站为极为安全设置（例如，需要SSL，仅集成Windows验证，只可从一个IP访问，NTFS权限主目录不能为空等） ，然后停止该网站。这样的结果是破坏默认网站，80%黑客会盲目地攻击，而不是您的真实网站。 </P>
<P><BR>4.配置所有与主机头的DNS名称相匹配的网站。 打开ISM，网站选项卡，点击高级按钮，选择对话框 “ 全部未分配 ” （或特定的 IP) 然后点击编辑按钮，并指定了主机头在适当的栏位。对HTTP和HTTPS进行同样的操作。不配置默认网站的主机头。这将把90 ％的自动化黑客工具的工作转到瘫痪掉的默认网站上。 </P>
<P><BR>5.主目录的IIS权限：启用“读取”和“记录访问”。禁用"写入"，"索引资源"，"目录浏览"，“脚本资源访问”（仅WebDAV使用此权限）以及Frontpage Web权限。执行权限选择“无”。对目录包含脚本文件的目录启用执行权限。 </P>
<P><BR>6.禁用所有不必要的ISAPI筛选器，执行此操作打开ISM，ISAPI筛选器选项卡。</P>
<P><BR>删除 Frontpage ISAPI 筛选器 （或较早的 IIS 服务器上的扩展）在不需要这些情况下。 如果需要 Frontpage ISAPI （扩展），设置它为只读。 较早的 IIS 服务器上禁用 Frontpage 扩展使用以下命令：“ c \common\microsoft shared\web server extensions\40\bin\fpsrvadm –o uninstall –p all”。</P>
<P>摘要式身份验证。 此身份验证方法需要支持可逆加密的密码，这是一个坏主意。 可逆加密的密码在斯坦福 Windows 结构中不被支持。 删除此筛选器。</P>
<P>HTTP 压缩。 此筛选器允许 HTTP 流的压缩。 这是一个很好的功能，但可能会导致安全性降低。</P>
<P>SSL。 不大可能您不需要 SSL 的支持，但如果你真不需要它请删除它。</P>
<P><BR>7.删除与 ISAPI 筛选器禁用相关联的 DLL 文件。 Frontpage： fpexdll.dll，摘要： md5filt.dll，压缩： compfilt.dll，SSL： Sspifilt.dll。</P>
<P><BR>8.（如果可能） 取消映射下列扩展名：.asa、.asp、.bat、.cdx、.cer、.htr、.htw、.ida、.idc、.idq、.printer、.shtm、.shtml、.stm 在 ISM，主目录选项卡，并选择配置按钮。</P>
<P><BR>9.禁用“启用父路径”设置。 在 ISM，主目录选项卡，点击 配置按钮，打开应用程序选项选项卡，取消选中复选框。 这样可以防止不知道目录的基础结构情况下恶意的 Web目录遍历。 Web 开发人员不能使用像路径..\..\Default.htm，必须使用完全合格的路径。</P>
<P>&nbsp;</P>
<P>补丁级别</P>
<P>&nbsp;</P>
<P>1.应用 Service Pack 和修补程序。可以使用 UpdateExpert，Microsoft ’s HfCheck 工具。</P>
<P><BR>2.安装高加密包 （附带 Windows 2000 SP 2) ,可以使用128 位加密。</P>
<P>身份验证模式</P>
<P><BR>1.在网站层级、 虚拟目录层级、 目录层级 等所有地方禁用基本身份验证。</P>
<P><BR>2.在任何地方禁用摘要式身份验证。</P>
<P><BR>3.IUSR &amp; IWAM 帐户不应是域用户，也不应是Guests用户。 如果不需要匿名访问则删除这些帐户。</P>
<P><BR>4.如果web 数据是 ultra-sensitive（超灵敏）数据，考虑将服务器放置在域之外。</P>
<P><BR>授权更改</P>
<P><BR>1.启用 IIS 审计，变更为W3号扩展日志记录，并检查信息被正确记录。 （例如：需要用户名吗？） 考虑启用下列项目： 日期和时间，客户端的IP地址，服务器的IP地址，服务器端口，用户名， 用于访问网站的HTTP方法，URI 尾，URI 查询，请求的状态。 </P>
<P><BR>2.设置只允许系统和本地管理员能访问IIS日志。 </P>
<P><BR>3.删除"hklm\software"的非管理员帐户的写入权限 。 管理员和系统帐户：完全控制，所有人： 读取或执行。</P>
<P><BR>4.限制 系统上所有可执行程序的NTFS权限。 NTFS 权限：管理员和系统帐户：完全控制、 用户： 读取或执行。 给 IUSR 帐户谨慎执行权限。</P>
<P>5.限制任何脚本编译器如Perl的权限 。 NTFS的 权限 ：管理员及系统：完全控制，所有人：读/执行。给 IUSR 帐户谨慎执行权限。 </P>
<P><BR>6.确保所有人只有只读权限：<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Web root<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; %systemroot%<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; %systemroot%\system32<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; %systemroot%\system32\inetsrv<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; %systemroot%\system32\inetsrv\asp<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; %systemroot%\program files\common files\</P>]]></description>
</item><item>
<title><![CDATA[网站信誉及安全评估的在线工具]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45220</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:26:32</pubDate>
<description><![CDATA[<P>网站信誉及安全评估的在线工具</P>
<P>&nbsp;<BR>原文:&nbsp;&nbsp;&nbsp; <A href="http://www.iisutm.com/">http://www.iisutm.com/</A></P>
<P><BR>收集的几个网站信誉及安全评估的在线工具</P>
<P>Norton Safe Web, from Symantec<BR><A href="http://safeweb.norton.com">http://safeweb.norton.com</A></P>
<P>WOT Security Scorecard | WOT Web of Trust<BR><A href="http://www.mywot.com/en/scorecard">http://www.mywot.com/en/scorecard</A></P>
<P>McAfee SiteAdvisor<BR><A href="http://www.siteadvisor.com/">http://www.siteadvisor.com/</A></P>
<P>如果有熟悉的网站邀请或者是不确认的邮件中的连接，包括一些现在流行的社区，让你输入邮箱地址,MSN,QQ等信息和密码，有很高的网站诈骗和垃圾邮件风险，可以用上面的工具先检查下是否安全在进行浏览呢。</P>
<P>不然最好先用虚拟机或者沙盒一类的工具来浏览。</P>
<P><BR>&nbsp;<BR></P>]]></description>
</item><item>
<title><![CDATA[modsecurity规则分析]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45219</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:26:14</pubDate>
<description><![CDATA[<P>modsecurity规则分析 </P>
<P>原文:&nbsp;&nbsp;&nbsp; <A href="http://www.iisutm.com/">http://www.iisutm.com/</A><BR>&nbsp;</P>
<P>&nbsp;<BR>modsecurity是一个非常不错的开源web应用防火墙项目，就像snort一样，其规则是开源社区一大财富，至少提供了一种描述web攻击防护规则的共同语言。现在提供modsecuirty规则的主要有modsecurity和getroot。<BR>这两天分析了一下这两个规则集，初步整理如下。<BR>规则来源及版本：<BR>getroot免费规则：<BR><A href="http://downloads.prometheus-group.com/delayed/rules/modsec-200809221633.tar.gz">http://downloads.prometheus-group.com/delayed/rules/modsec-200809221633.tar.gz</A><BR>modsecurity core rule：<BR><A href="http://www.modsecurity.org/download/modsecurity-core-rules_2.5-1.6.1.tar.gz">http://www.modsecurity.org/download/modsecurity-core-rules_2.5-1.6.1.tar.gz</A> <BR>分析采用缺省规则进行，缺省注释掉没有启用的规则不分析。 getroot统计有效规则(含SecRule关键字的规则）5373条， modsecurity有效规则126条。<BR>分析包括参数（Variables）统计、变换函数（Transformation functions）统计和规则关联关系统计（chian，skip）。参数统计是统计出现次数，一条有效规则中可能出现几次，比如ARGS，一条规则可能出现多次，出现几次统计几次。变换函数一条规则中只只出现一次，因此和规则条数统计一致。关联关系统计是统计chain，skip，skipafter的次数，反应规则之间相互联系的统计。</P>
<P>统计结果如下:</P>
<P>getroot参数出现次数及排名：<BR>7959 ARGS<BR>3647 REQUEST_URI<BR>313 REQUEST_BODY<BR>250 url<BR>237 REQUEST_HEADERS<BR>199 params<BR>136 link<BR>96 Referer<BR>95 User-Agent<BR>86 id<BR>79 team<BR>77 redirect<BR>76 comment<BR>73 website<BR>73 return<BR>73 referrer<BR>72 referer<BR>71 ref<BR>71 body<BR>71 helpbox<BR>71 ureferrer<BR>71 refertoyouby<BR>70 bg_image<BR>70 imageFile<BR>70 media_gallery<BR>70 outbound<BR>70 product<BR>70 oaparams<BR>70 loc<BR>70 out<BR>70 filecontent<BR>70 images<BR>69 redirect_to<BR>69 ajaxurl<BR>69 base_url<BR>69 helpurl<BR>69 backurl<BR>69 serverurl<BR>68 refer<BR>68 siteurl<BR>68 introtext<BR>68 Post<BR>68 resource<BR>68 url2send<BR>68 basehref<BR>67 userpicpersonal<BR>67 fck_body<BR>67 attach-url<BR>66 last_msg<BR>66 referredby<BR>66 stories_cat<BR>66 fulltext<BR>66 sUrl<BR>66 thelink<BR>66 HOMEPAGE_URL<BR>66 texty<BR>66 view<BR>66 ATTACHMENTS_URL<BR>66 resource_box<BR>66 fck_brief<BR>66 comments_commentFind<BR>66 altTag<BR>66 pay_list_type<BR>66 areaContent2<BR>66 FULL_URL<BR>66 linkdescr<BR>66 website_link<BR>66 _wp_original_http_referer<BR>66 products_image<BR>66 inc<BR>66 oldmsg<BR>66 templatePath<BR>65 request_url<BR>64 blog_url<BR>64 x_receipt_link_url<BR>64 lk_url<BR>64 clickurl<BR>64 return_link_url<BR>64 config_helpurl<BR>64 install_url</P>
<P>getroot规则变换函数及排名：<BR>262 urlDecode<BR>262 urlDecodeUni<BR>181 lowercase<BR>170 compressWhitespace<BR>135 htmlEntityDecode<BR>110 replaceNulls<BR>106 normalisePath<BR>100 hexDecod<BR>100 base64Decode<BR>21 replaceComments<BR>1 none<BR>1 length</P>
<P>getroot规则关联关系次数统计： <BR>1649 chain</P>
<P>modsecurity变量出现次数统计及排名：<BR>68 REQUEST_HEADERS<BR>30 XML<BR>29 REQUEST_FILENAME<BR>29 ARGS<BR>22 RESPONSE_BODY<BR>22 ARGS_NAMES<BR>21 Referer<BR>8 User-Agent<BR>6 REQUEST_METHOD<BR>5 REQUEST_HEADERS_NAMES<BR>5 REQUEST_HEADERS<BR>5 Content-Length<BR>4 RESPONSE_STATUS<BR>3 REQUEST_COOKIES<BR>3 X-OS-Prefs<BR>3 Host<BR>3 REQUEST_COOKIES_NAMES<BR>3 REQUEST_LINE<BR>3 REQUEST_URI<BR>3 Cookie<BR>2 Content-Type<BR>2 Transfer-Encoding<BR>2 &amp;GLOBAL<BR>2 REMOTE_ADDR<BR>2 Accept<BR>2 Content-Encoding<BR>2 via<BR>2 REQUEST_BODY<BR>2 REQUEST_PROTOCOL</P>
<P>modsecurity规则变换函数出现次数及排名：<BR>123 none<BR>62 lowercase<BR>47 htmlEntityDecode<BR>31 urlDecode<BR>30 urlDecodeUni<BR>24 compressWhitespace<BR>16 replaceComments<BR>2 length</P>
<P>modsecurity规则关联关系统计次数及排名：<BR>19 chain<BR>13 skip <BR>&nbsp;</P>
<P><BR>&nbsp;</P>]]></description>
</item><item>
<title><![CDATA[Web应用防火墙入门]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45218</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:26:04</pubDate>
<description><![CDATA[<P>Web应用防火墙入门</P>
<P>作者：iisutm安全小组</P>
<P>原文：<A href="http://www.iisutm.com">www.iisutm.com</A></P>
<P>转载请注明出处</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>Web应用防火墙正日趋流行，过去这些工具被很少数的大型项目垄断，但是，随着大量的低成本产品的面市以及可供选择的开源试用产品的出现，它们最终能被大多数人所使用。在这篇文章中，先向大家介绍Web应用防火墙能干什么，然后快速的概览一下Web应用防火墙最有用的一些特征。通过这篇文章的阅读，大家能清楚地了解web应用防火墙这个主题，掌握相关知识。<BR>什么是web应用防火墙？</P>
<P>&nbsp;&nbsp;&nbsp; 有趣的是，还没有人能真正知道web应用防火墙究竟是什么，或者确切的说，还没有一个大家认可的精确定义。从广义上来说，Web应用防火墙就是一些增强 Web应用安全性的工具。然而，如果我们要深究它精确的定义，就可能会得到更多的疑问。因为一些Web应用防火墙是硬件设备，一些则是应用软件；一些是基于网络的，另一些则是嵌入WEB服务器的。</P>
<P>国外市场上具有WEB应用防火墙功能的产品名称就有不同的几十种，更不用说是产品的形式和描述了。它难以界定的原因是这个名称包含的东西太多了。较低的网络层（Web应用防火墙被安置在第七层）被许多设备所覆盖，每一种设备都有它们独特的功能，比如路由器，交换机，防火墙，入侵检测系统，入侵防御系统等等。然而，在HTTP的世界里，所有这些功能都被融入在一个设备里：Web应用防火墙。</P>
<P>总体来说，Web应用防火墙的具有以下四个方面的功能：</P>
<P>&nbsp;&nbsp; 1. 审计设备：用来截获所有HTTP数据或者仅仅满足某些规则的会话</P>
<P>&nbsp;&nbsp; 2. 访问控制设备：用来控制对Web应用的访问，既包括主动安全模式也包括被动安全模式</P>
<P>&nbsp;&nbsp; 3. 架构/网络设计工具：当运行在反向代理模式，他们被用来分配职能，集中控制，虚拟基础结构等。</P>
<P>&nbsp;&nbsp; 4. WEB应用加固工具：这些功能增强被保护Web应用的安全性，它不仅能够屏蔽WEB应用固有弱点，而且能够保护WEB应用编程错误导致的安全隐患。</P>
<P>但是，需要指出的是，并非每种被称为Web应用防火墙的设备都同时具有以上四种功能。</P>
<P>由于WEB应用防火墙的多面性，拥有不同知识背景的人往往会关注它不同方面的特点。比如具有网络入侵检测背景的人更倾向于把它看作是运行在HTTP层上的 IDS设备；具有防火墙自身背景的人更趋向与把它看作一种防火墙的功能模块。还有一种理解来自于“深度检测防火墙”这个术语。他们认为深度检测防火墙是一种和Web应用防火墙功能相当的设备。然而，尽管两种设备有些相似之处，但是差异还是很大的。深度检测防火墙通常工作在的网络的第三层以及更高的层次，而 Web应用防火墙则在第七层处理HTTP服务并且很好地支持它。</P>
<P>直接更改WEB代码解决安全问题是否更好？这是毋庸置疑的，但也没那么容易（实现）。</P>
<P>&nbsp;&nbsp;&nbsp; 因为，通过更改WEB应用代码是否一定就能增强系统安全性能，这本身就存在争论。而且现实也更加复杂：</P>
<P>&nbsp;&nbsp;&nbsp; * 不可能确保100%的安全。人的能力有限，会不可避免地犯错误。<BR>&nbsp;&nbsp;&nbsp; * 绝大多数情况下，很少有人力求100%的安全。如今的现实生活中那些引领应用发展的人更多注重功能而不是安全。这种观念正在改变，只是有点缓慢。<BR>&nbsp;&nbsp;&nbsp; * 一个复杂的系统通常包含第三方产品（组件，函数库），它们的安全性能是不为人知的。如果这个产品的源代码是保密的，那么你必须依赖商品的厂商提供补丁。即使有些情况下源代码是公开的，你也不可能有精力去修正它们。<BR>&nbsp;&nbsp;&nbsp; * 我们不得不使用存在安全隐患的业务系统，尽管这些旧系统根本无法改进。</P>
<P>&nbsp;&nbsp;&nbsp; 因此，为了获得最好的效果，我们需要双管齐下：一方面，必须提高管理者和开发者的安全意识；另一方面，尽可能提高应用系统的安全性。</P>
<P>Web应用防火墙的特点</P>
<P>&nbsp;&nbsp;&nbsp; Web应用防火墙的一些常见特点如下。</P>
<P>异常检测协议</P>
<P>&nbsp;&nbsp;&nbsp; 如果阅读过各种RFC，就会发现一个被反复强调的主题。大多数RFC建议应用自己使用协议时要保守，而对于接受其他发送者的协议时可以自由些。Web服务器就是这样做的，但这样的行为也给所有的攻击者打开了大门。几乎所有的WAF对HTTP的请求执行某种异常检测，拒绝不符合Http标准的请求。并且，它也可以只允许HTTP协议的部分选项通过，从而减少攻击的影响范围。甚至，一些WAF还可以严格限定HTTP协议中那些过于松散或未被完全制定的选项。</P>
<P>增强的输入验证</P>
<P>&nbsp;&nbsp;&nbsp; 就频繁发生的Web安全问题而言，有些是源于对Web设计模型的误解，有些则来自于程序师认为浏览器是可信的。很多WEB程序员用JavaScript在浏览器上实现输入验证。而浏览器只是一个用户控制的简单工具，因此攻击者可以非常容易地绕过输入验证，直接将恶意代码输入到WEB应用服务器。</P>
<P>有一个解决上述问题的正确方法，就是在服务端进行输入验证。如果这个方法不能实现，还可以通过在客户和应用服务器之间增加代理，让代理去执行Web页面上嵌入的JavaScript，实现输入验证。</P>
<P><BR>消极的安全模型VS积极的安全模型</P>
<P>&nbsp;&nbsp;&nbsp; 曾经设置过防火墙规则的人，可能会碰到这样的建议：允许已知安全的流量，拒绝其他一切访问。这就是一种很好的积极安全模型。恰恰相反，消极安全模型则是默认允许一切访问，只拒绝一些已知危险的流量模式。</P>
<P>每种安全模型方式都存在各自的问题：</P>
<P>&nbsp;&nbsp;&nbsp; 消极安全模型：什么是危险的？</P>
<P>&nbsp;&nbsp;&nbsp; 积极安全模型：什么是安全的？</P>
<P>&nbsp;&nbsp;&nbsp; 消极安全模式通常使用的更多。识别出一种危险的模式并且配置自己的系统禁止它。这个操作简单而有趣，却不十分安全。它依赖于人们对于危险的认识，如果问题存在，却没有被意识到（这种情况很常见），就会为攻击者留下可趁之机。</P>
<P>积极安全模式（又称为白名单模式）看上去是一种制定策略的更好方式,非常适于配置防火墙策略。在Web应用安全领域中，积极安全模式通常被概括成对应用中的每一个脚本的枚举。对枚举的每一个脚本，需要建立一个相应列表，表中内容如下所示：</P>
<P>&nbsp;&nbsp;&nbsp; * 允许的请求方式（比如，GET/POST或者只POST）<BR>&nbsp;&nbsp;&nbsp; * 允许的Content-Type<BR>&nbsp;&nbsp;&nbsp; * 允许的Content-Length<BR>&nbsp;&nbsp;&nbsp; * 允许的参数<BR>&nbsp;&nbsp;&nbsp; * 指定参数和可选参数<BR>&nbsp;&nbsp;&nbsp; * 参数类型（比如，文本或整数）<BR>&nbsp;&nbsp;&nbsp; * 附加参数限制</P>
<P>&nbsp;&nbsp;&nbsp; 上述列表仅仅是个例子，实际的积极安全模式通常包括更多的要素。它试图从外部完成程序员本应从内部完成的工作：为提交到Web应用的信息验证每一个比特。如果肯花时间的话，使用积极安全模式就是一个比较好的选择。这个模式的难点之一，在于应用模式会随着应用的发展而改变。每当应用中添加新脚本或更改旧脚本，就需要更新模式。但是，它适用于保护那些稳定的、无人维护的旧应用。</P>
<P>&nbsp;&nbsp;&nbsp; 自动开发策略可以解决以上问题：</P>
<P>&nbsp;&nbsp;&nbsp; * 一些WAF能够监视流量，并根据这些流量数据自动配置策略，有些产品可以实时进行这样的工作。<BR>&nbsp;&nbsp;&nbsp; * 通过白名单，可以标识特定的IP地址是可信的，然后，依据观察的流量，配置WAF，更新安全策略。<BR>&nbsp;&nbsp;&nbsp; * 如果通过一个全面的衰减测试，（仿真正确的行为，）来创建一个应用，并且在WAF处于监控状态时执行测试，那么WAF可以自动生成策略。</P>
<P>&nbsp;&nbsp;&nbsp; 可见，没有哪个模式是完全令人满意的。消极安全模式适用于处理已知问题，而积极安全模式则适用于稳定的Web应用。理想的做法是，在现实生活中，将二者结合使用，取长补短。</P>
<P><BR>及时补丁</P>
<P>&nbsp;&nbsp;&nbsp; 积极安全模式理论上更好一些因为浏览器和WEB应用程序之间的通信协议通过HTML规范进行了很好的定义。现在的Web开发语言都可以处理带有多个参数的 HTTP请求。因为这些参数在Web应用防火墙中都是可见的，因此WEB应用防火墙可以分析这些参数判断是否存在允许该请求。，</P>
<P>当一个应用中的漏洞被发现时大多数情况下我们会尽可能在代码中修补它。受诸多因素的影响（如应用的规模，是否有开发人员，法律问题等等 ），开发补丁的过程可能需要几分钟，或者一直到无限长的是时间。这些时间正是攻击者发起攻击的好机会。</P>
<P>如果开发人员能够在非常短的时间内在代码中修补好漏洞，那你就不用担心了。但如果修补这个漏洞需要花费几天，甚至几周来修复呢？Web应用防火墙就是处理这个问题的理想工具：只要给一个安全专家不错的WAF和足够的漏洞信息，他就能在不到一个小时的时间内屏蔽掉这个漏洞。当然，这种屏蔽掉漏洞的方式不是非常完美的，并且没有安装对应的补丁就是一种安全威胁，但我们在没有选择的情况下，任何保护措施都比没有保护措施更好。</P>
<P>及时补丁的原理可以更好的适用于基于XML的应用中，因为这些应用的通信协议都具规范性。</P>
<P><BR>基于规则的保护和基于异常的保护</P>
<P>&nbsp;&nbsp;&nbsp; 现在市场上大多数的产品是基于规则的WAF。其原理是每一个会话都要经过一系列的测试，每一项测试都由一个过多个检测规则组成，如果测试没通过，请求就会被认为非法并拒绝。</P>
<P>基于规则的WAFs很容易构建并且能有效的防范已知安全问题。当我们要制定自定义防御策略时使用它会更加便捷。但是因为它们必须要首先确认每一个威胁的特点，所以要由一个强大的规则数据库支持。WAF生产商维护这个数据库，并且他们要提供自动更新的工具。</P>
<P>&nbsp;&nbsp;&nbsp; 这个方法不能有效保护自己开发的WEB应用或者零日漏洞（攻击者使用的没有公开的漏洞），这些威胁使用基于异常的WAF更加有效。</P>
<P>异常保护的基本观念是建立一个保护层，这个保护层能够根据检测合法应用数据建立统计模型，以此模型为依据判别实际通信数据是否是攻击。理论上，一但构建成功，这个基于异常的系统应该能够探测出任何的异常情况。拥有了它，我们不再需要规则数据库而且零日攻击也不再成问题了。但基于异常保护的系统很难构建，所以并不常见。因为用户不了解它的工作原理也不相信它，所以它也就不如基于规则的WAF应用广范。</P>
<P><BR>状态管理</P>
<P>&nbsp;&nbsp;&nbsp; HTTP的无状态性对Web应用安全有很多负面影响。会话只能够在应用层上实现，但对许多应用来说这个附加的功能只能满足业务的需要而考虑不到安全因素了。Web应用防火墙则将重点放在会话保护上，它的特征包括：</P>
<P>强制登录页面。在大多数站点， 你可以从任何你所知道的URL上访问站点，这通常方便了攻击者而给防御增加了困难。WAF能够判断用户是否是第一次访问并且将请求重定向到默认登录页面并且记录事件。</P>
<P>分别检测每一个用户会话。如果能够区分不同的会话，这就带来了无限的可能。比如，我们能够监视登陆请求的发送频率和用户的页面跳转。通过检测用户的整个操作行为我们可以更容易识别攻击。</P>
<P>对暴力攻击的识别和响应。通常的Web应用网络是没有检测暴力攻击的。有了状态管理模式，WAF能检测出异常事件（比如登陆失败），并且在达到极限值时进行处理。此时它可以增加更多的身份认证请求的时间，这个轻微的变化用户感觉不到，但对于足以对付自动攻击脚本了。如果一个认证脚本需要50毫秒完成，那它可以发出大约每秒20次的请求。如果你增加一点延时，比如说，一秒种的延迟，那会将请求降低至每秒不足一次。与此同时，发出进一步检测的警告，这将构成一个相当好的防御。</P>
<P>实现会话超时。超出默认时间会话将失效，并且用户将被要求重新认证。用户在长时间没有请求时将会自动退出登录。</P>
<P>会话劫持的检测和防御。许多情况下，会话劫持会改变IP地址和一些请求数据（HTTP请求的报头会不同）。状态监控工具能检测出这些异常并防止非法应用的发生。在这种情况下应该终止会话，要求用户重新认证，并且记录一个警告日志信息。</P>
<P>只允许包含在前一请求应答中的链接。一些WAF很严格，只允许用户访问前一次请求返回页面中的链接。这看上去是一个有趣的特点但很难得到实施。一个问题在于它不允许用户使用多个浏览器窗口，另一个问题是它令使用JavaScript自动建立连接的应用失效。</P>
<P><BR>其他防护技术</P>
<P>&nbsp;&nbsp;&nbsp; WAF的另外一些安全增强的功能用来解决WEB程序员过分信任输入数据带来的问题。比如：</P>
<P>&nbsp;&nbsp;&nbsp; 隐藏表单域保护。有时，内部应用数据通过隐藏表单变量实现，而它们并不是真的隐藏的。程序员通常用隐藏表单变量的方式来保存执行状态，给用户发送数据，以确保这些数据返回时未被修改。这是一个复杂繁琐的过程，WAF经常使用密码签名技术来处理。</P>
<P>&nbsp;&nbsp;&nbsp; Cookies保护。和隐藏表单相似的是，cookies经常用来传递用户个人的应用数据，而不一样的是，一些cookies可能含有敏感数据。WAFs 通常会将整个内容加密，或者是将整个cookies机制虚拟化。有了这种设置，终端用户只能够看到cookies令牌（如同会话令牌），从而保证 cookies在WAF中安全地存放</P>
<P>&nbsp;&nbsp;&nbsp; 抗入侵规避技术。基于网络的IDS对付WEB攻击的问题就是攻击规避技术。改写HTTP输入请求数据（攻击数据）的方式太多，并且各种改写的请求能够逃避IDS探测。在这个方面如果能完全理解HTTP就是大幅度的改进。比如，WAF每次可以看到整个HTTP请求，就可以避免所有类型的HTTP请求分片的攻击。因为很好的了解HTTP协议，因此能够将动态请求和静态请求分别对待，就不用花大量时间保护不会被攻击的静态数据。这样WAF可以有足够的计算能力对付各种攻击规避技术， 而这些功能由NIDSs完成是很耗时的。</P>
<P>&nbsp;&nbsp;&nbsp; 响应监视和信息泄露保护。信息泄露防护是我们给监视HTTP输出数据的一个名称。从原理上来说它和请求监视是一样的，目的是监视可疑的输出，并防止可疑的 http输出数据到达用户。最有可能的应用模式是监视信用卡号和社会保险号。另外，这个技术的另一项应用是发现成功入侵的迹象。因为有经验攻击者总会给信息编码来防止监测，所以防止这样有决心并技术熟练的攻击者获取信息是很困难的。但是，在攻击者没有完全掌控服务器而仅仅尝试WEB应用的安全漏洞的情况下，这项技术可以起到防护效果</P>
<P>&nbsp;</P>]]></description>
</item><item>
<title><![CDATA[WEB安全---防范XSS跨站式脚本攻击]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45217</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:25:49</pubDate>
<description><![CDATA[<P>WEB安全---防范XSS跨站式脚本攻击 </P>
<P>原文：<A href="http://www.iisutm.com">www.iisutm.com</A></P>
<P><BR>网站要怎么防范常见的XSS跨站式脚本攻击呢，我们先从XSS跨站式脚本攻击的原理来说起。</P>
<P>&nbsp;</P>
<P>网站遭受XSS跨站式脚本攻击的基本原理</P>
<P>&nbsp;</P>
<P>1.本地利用漏洞，这种漏洞存在于页面中客户端脚本自身。</P>
<P>&nbsp;</P>
<P>其攻击过程如下所示：</P>
<P>A给B发送一个恶意构造了Web的URL。</P>
<P>B点击并查看了这个URL。</P>
<P>恶意页面中的JavaScript打开一个具有漏洞的HTML页面并将其安装在B电脑上。</P>
<P>具有漏洞的HTML页面包含了在B电脑本地域执行的JavaScript。</P>
<P>A的恶意脚本可以在B的电脑上执行B所持有的权限下的命令。</P>
<P>&nbsp;</P>
<P>2反射式漏洞，这种漏洞和本地利用漏洞有些类似，不同的是Web客户端使用Server端脚本生成页面为用户提供数据时，如果未经验证的用户数据被包含在页面中而未经HTML实体编码，客户端代码便能够注入到动态页面中。</P>
<P>&nbsp;</P>
<P>其攻击过程如下：</P>
<P>A经常浏览某个网站，此网站为B所拥有。B的站点运行A使用用户名/密码进行登录，并存储敏感信息（比如银行帐户信息）。 </P>
<P>C发现B的站点包含反射性的XSS漏洞。 </P>
<P>C编写一个利用漏洞的URL，并将其冒充为来自B的邮件发送给A。 </P>
<P>A在登录到B的站点后，浏览C提供的URL。 </P>
<P>嵌入到URL中的恶意脚本在A的浏览器中执行，就像它直接来自B的服务器一样。此脚本盗窃敏感信息（授权、信用卡、帐号信息等）然后在A完全不知情的情况下将这些信息发送到C的Web站点。 </P>
<P>&nbsp;</P>
<P>3存储式漏洞，该类型是应用最为广泛而且有可能影响到Web服务器自身安全的漏洞，骇客将攻击脚本上传到Web服务器上，使得所有访问该页面的用户都面临信息泄漏的可能，其中也包括了Web服务器的管理员。</P>
<P>&nbsp;</P>
<P>其攻击过程如下：</P>
<P>B拥有一个Web站点，该站点允许用户发布信息/浏览已发布的信息。 </P>
<P>C注意到B的站点具有存储式的XXS漏洞。 </P>
<P>C发布一个热点信息，吸引其它用户纷纷阅读。 </P>
<P>B或者是任何的其他人如A浏览该信息，其会话cookies或者其它信息将被C盗走。 </P>
<P>类型A直接威胁用户个体，而类型B和存储式漏洞所威胁的对象都是企业级Web应用。</P>
<P>&nbsp;</P>
<P>网站遭受XSS跨站式脚本攻击的基本方式</P>
<P>&nbsp;</P>
<P>1. DOM-based cross-site scripting</P>
<P>页面本身包含一些DOM对象的操作，如果未对输入的参数进行处理，可能会导致执行恶意脚本。如下面一些DOM操作：</P>
<P>document.URL</P>
<P>document.URLUnencoded</P>
<P>document.location (and many of its properties)</P>
<P>document.referrer</P>
<P>window.location (and many of its properties)</P>
<P><BR>举个例子，假如某个脆弱的页面的代码如下：</P>
<P>&lt;HTML&gt;</P>
<P>&nbsp;&nbsp;&nbsp; &lt;TITLE&gt;Welcome!&lt;/TITLE&gt;</P>
<P>&nbsp;&nbsp;&nbsp; Hi</P>
<P>&nbsp;&nbsp;&nbsp; &lt;SCRIPT&gt;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var pos=document.URL.indexOf("name=")+5;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document.write(document.URL.substring(pos,document.URL.length));</P>
<P>&nbsp;&nbsp;&nbsp; &lt;/SCRIPT&gt;</P>
<P>&nbsp;&nbsp;&nbsp; &lt;BR&gt;</P>
<P>&nbsp;&nbsp;&nbsp; Welcome to our system</P>
<P>&nbsp;&nbsp;&nbsp; …</P>
<P>&lt;/HTML&gt;</P>
<P>攻击者使用如下的URL访问时，则非常危险：</P>
<P><A href="http://www.vulnerable.site/welcome.html?name=<script>alert(document.cookie)</script">http://www.vulnerable.site/welcome.html?name=&lt;script&gt;alert(document.cookie)&lt;/script</A>&gt;</P>
<P>试了一下，貌似IE、FireFox等浏览器默认 对&lt;script&gt;alert(document.cookie)&lt;/script&gt;进行了编码，阻止了脚本的执行。但是对于 DOM操作还是要更加谨慎啊，比如把上面的页面修改一下，安全性就增强了不少：</P>
<P>&lt;SCRIPT&gt;</P>
<P>&nbsp;var pos=document.URL.indexOf("name=")+5;</P>
<P>&nbsp;var name=document.URL.substring(pos,document.URL.length);</P>
<P>&nbsp;if (name.match(/^[a-zA-Z0-9]$/))</P>
<P>&nbsp;{</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document.write(name);</P>
<P>&nbsp;}</P>
<P>&nbsp;else</P>
<P>&nbsp;{</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; window.alert("Security error");</P>
<P>&nbsp;}</P>
<P>&lt;/SCRIPT&gt;</P>
<P>&nbsp;</P>
<P>&nbsp;2. Reflected cross-site scripting</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 也被称为None-Persistent cross-site scripting，即，非持久化的XSS攻击，是我们通常所说的，也是最常用，使用最广的一种方式。它通过给别人发送带有恶意脚本代码参数的URL，当 URL地址被打开时，特有的恶意代码参数被HTML解析、执行。它的特点是非持久化，必须用户点击带有特定参数的链接菜能引起。</P>
<P>&nbsp;3. Persistent cross-site scripting</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 持久化XSS攻击，指的是恶意脚本代码被存储进被攻击的数据库，当其他用户正常浏览网页时，站点从数据库中读取了非法用户存入非法数据，恶意脚本代码被执行。这种攻击类型通常在留言板等地方出现。</P>
<P>实施方式</P>
<P>我们来试一把Reflected cross-site scripting。当我们在某网站输入参数XXX，发现参数XXX原样的出现在了页面源码中：</P>
<P>&lt;input type="text" class="Seach" name="w" value="XXX" /&gt;<BR>OK，可以开始做文章了，我们将XXX替换为：abc"/&gt;&lt;script&gt;alert('haha')&lt;/script&gt;&lt;a href="，返回的HTML代码如下：</P>
<P>&lt;input type="text" class="Seach" name="w" value="abc"/&gt; <BR>&lt;script&gt;alert('haha')&lt;/script&gt;&lt;!--" /&gt;<BR>这样，&lt;script&gt;alert('haha')&lt;/script&gt;被执行了。这里再举例一些XSS攻击行为：</P>
<P>&lt;IMG SRC="javascript:alert('XSS');"&gt; <BR>&lt;IMG SRC=javascript:alert('XSS')&gt; <BR>&lt;IMG SRC="javascript:alert(String.fromCharCode(88,83,83))"&gt; <BR>&lt;IMG SRC="jav ascript:alert('XSS');"&gt; <BR>&lt;SCRIPT/XSS SRC="<A href='http://example.com/xss.js"></SCRIPT'>http://example.com/xss.js"&gt;&lt;/SCRIPT</A>&gt; <BR>&lt;&lt;SCRIPT&gt;alert("XSS");//&lt;&lt;/SCRIPT&gt; <BR>&lt;iframe src=http://example.com/scriptlet.html &lt; <BR>&lt;INPUT TYPE="IMAGE" SRC="javascript:alert('XSS');"&gt; <BR>&lt;BODY BACKGROUND="javascript:alert('XSS')"&gt; <BR>&lt;BODY ONLOAD=alert(document.cookie)&gt; <BR>&lt;BODY onload!#$%&amp;()*~+-_.,:;?@[/|"]^`=alert("XSS")&gt; <BR>&lt;IMG DYNSRC="javascript:alert('XSS')"&gt; <BR>&lt;IMG DYNSRC="javascript:alert('XSS')"&gt; <BR>&lt;BR SIZE="&amp;{alert('XSS')}"&gt; <BR>&lt;IMG SRC='vbscript:msgbox("XSS")'&gt; <BR>&lt;TABLE BACKGROUND="javascript:alert('XSS')"&gt; <BR>&lt;DIV STYLE="width: expression(alert('XSS'));"&gt; <BR>&lt;DIV STYLE="background-image: url(javascript:alert('XSS'))"&gt; <BR>&lt;STYLE TYPE="text/javascript"&gt;alert('XSS');&lt;/STYLE&gt; <BR>&lt;STYLE type="text/css"&gt;BODY{background:url("javascript:alert('XSS')")}&lt;/STYLE&gt; <BR>&lt;?='&lt;SCRIPT&gt;alert("XSS")&lt;/SCRIPT&gt;'?&gt; <BR>&lt;A HREF="javascript:document.location='http://www.example.com/'"&gt;XSS&lt;/A&gt; <BR>&lt;IMG SRC=javascript:alert('XSS')&gt; <BR>&lt;EMBED SRC="<A href="http://ha.ckers.org/xss.swf">http://ha.ckers.org/xss.swf</A>" AllowScriptAccess="always"&gt;&lt;/EMBED&gt; <BR>a="get"; <BR>b="URL("""; <BR>c="javascript:"; <BR>d="alert('XSS');"")"; <BR>eval(a+b+c+d);<BR>总结一下，要防止XSS跨站式脚本攻击主要是要在查询字符串(QueryString)，表单数据（PostData）以及Cookie甚至HTTP报头（Header）中防止掉一些javascript关键字和一些敏感的字符（单引号，分号）以及SQL语言的关键字，以及防止他们使用encode编码。</P>
<P>&nbsp;</P>
<P>用ASP或者PHP脚本来实现上面的这些想起来就很麻烦。下面就来介绍下用一个第三方工具IISUTM来处理上面我们说到的问题。</P>
<P>&nbsp;</P>
<P>准备工作：先去<A href="http://www.iisutm.com">www.iisutm.com</A>下载最新的IISUTM版本。</P>
<P>&nbsp;</P>
<P>根据IISUTM网站防火墙安装及操作手册 中的说明把IISUTM部署到你的服务器上来，这里需要注意的是使用Windows 2003+iis6的服务器，需要开启iis中“以IIS5.0 隔离模式运行 www 服务”选项才能正常使用该软件。</P>
<P>&nbsp;</P>
<P>安装完成，通过浏览器访问IISUTM的配置管理界面默认的是<A href="http://127.0.0.1:8362">http://127.0.0.1:8362</A>，这个是私有地址，只能在该服务器上访问，你需要任何地方都能访问的话，可以在安装的时候IP地址的选项那里填入你服务器的公网IP地址，和你所开放的端口。这样你就可以通过你配置的地址进行访问，或者你可以在iis中直接管理名为IISUTM的站点。</P>
<P>&nbsp;</P>
<P>登陆管理界面后点击上面导航栏中的“基本设置”，然后点击左边菜单的“防XSS攻击”链接。</P>
<P>&nbsp;</P>
<P>开启该链接里所有的选项，选中之后IISUTM会自动保存配置，下面的“使用不允许的发送序列”是该软件提供的XSS攻击关键字的特征库，你可以根据你网站的情况进行更改（最好不要修改）。</P>
<P>&nbsp;</P>
<P>确认以上的配置以后，你可以返回到IISUTM管理界面的首页，这里会列出最近服务器遭受到的攻击以及详细，赶紧去看看你的网站是不是随时有人在进行SQL注入吧，以及哪些攻击被IISUTM处理掉了。<BR>&nbsp;<BR></P>]]></description>
</item><item>
<title><![CDATA[iis安全---防范SQL注入式攻击]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45216</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:25:36</pubDate>
<description><![CDATA[<P>iis安全---防范SQL注入式攻击</P>
<P>原文：<A href="http://www.iisutm.com">www.iisutm.com</A></P>
<P><BR>网站要怎么防范最最常见SQL注入式攻击呢，我们先从SQL注入式攻击的原理来说起。</P>
<P>&nbsp;</P>
<P>网站遭受SQL注入式攻击的基本原理：</P>
<P><BR>1.没有正确过滤特殊字符，例如单引号和分号<BR>如果你的sql语句是这样，又没过滤“’”单引号：<BR>"SELECT * FROM tables WHERE param = '" + RequestString+ "'; "<BR>攻击者将用户名变量(即RequestString)设置为：<BR>a' or 't'='t</P>
<P>此时原始语句发生了变化：<BR>SELECT * FROM tables WHERE param = 'a' OR 't'='t'; </P>
<P>如果这种代码被用于一个认证过程，那么这个例子就能够强迫选择一个合法的用户名，因为赋值't'='t永远是正确的。<BR>这种方式是跳过身份认证的最简单手段</P>
<P>再配合“;”分号可以进行更多的sql注入攻击<BR>";"分号用来执行多个语句。下面语句中的RequestString的值将会导致删除“tables”表，<BR>又可以从“dataTables”表中选择所有的数据(实际上就是透露了每一个用户的信息)。<BR>a'; DROP TABLE tables; SELECT * FROM dataTables WHERE param LIKE '%</P>
<P>这就将最终的SQL语句变成下面这个样子：<BR>SELECT * FROM tables WHERE param = 'a'; DROP TABLE tables; SELECT * FROM dataTables WHERE param LIKE '%'; </P>
<P>通过这种原理可以执行很多很多攻击了。</P>
<P>2.不正确处理变量类型</P>
<P>如果一个用户提供的字段并非一个强类型，或者没有实施类型强制，就会发生这种形式的攻击。当在一个SQL语句中使用一个数字字段时，如果程序员没有检查用户输入的合法性(是否为数字型)就会发生这种攻击。</P>
<P>例如：“SELECT * FROM tables WHERE id = " + RequestID + "; "</P>
<P>从这个语句可以看出，作者希望RequestID是一个数字。<BR>不过，如果终端用户选择一个字符串，就绕过了对转义字符的需要。<BR>例 如，将RequestID设置为<BR>1; DROP TABLE tables <BR>就不需要上面说的“‘”单引号了,照样可以进行攻击:会将“tables”表从数据库中删除，<BR>SQL语句变成：SELECT * FROM DATA WHERE id = 1; DROP TABLE users;</P>
<P>网站遭受SQL注入式攻击的基本方式：</P>
<P>1.最常见的也就是在查询字符串中直接输入SQL攻击字符串。</P>
<P>例如：page.asp?id=Num and exists (select * from [admin])</P>
<P>2.其次就是在FORM表单中提交的SQL注入攻击字段。</P>
<P>3.通过COOKIE绕过一些放注入的脚本程序</P>
<P>例如:javascript:alert(document.cookie="id="+escape("这就是asp? id=xx后面xx代表的数值) and (这里是注入攻击代码)"));</P>
<P>4.还有就是上面几种的攻击通过16进制编码后，绕过SQL注入检测的脚本程序</P>
<P>page.asp?id=Num;DeCLaRE @S NvArCHaR(4000);SeT @S=CaSt(0x4400650063006C0061007200650020004000540020005600610072006300680061007200280032003500350029002C0040004300200056006100720063006800610072002800320035003500290020004400650063006C0061007200650020005400610062006C0065005F0043007500720073006F00720020004300750072007300'</P>
<P>&nbsp;</P>
<P>这种可以跳过敏感字符的判断和SQL关键词的判断。</P>
<P>&nbsp;</P>
<P>总结一下，要防止SQL注入主要是要在查询字符串(QueryString)，表单数据（PostData）以及Cookie甚至HTTP报头（Header）中防止掉一些特殊字符（单引号，分号）以及SQL语言的关键字，以及防止他们使用16进制编码。</P>
<P>&nbsp;</P>
<P>用ASP或者PHP脚本来实现上面的这些想起来就很麻烦。下面就来介绍下用一个第三方工具IISUTM来处理上面我们说到的问题。</P>
<P>&nbsp;</P>
<P>准备工作：先去<A href="http://www.iisutm.com">www.iisutm.com</A>下载最新的IISUTM版本。</P>
<P>&nbsp;</P>
<P>根据IISUTM网站防火墙安装及操作手册 中的说明把IISUTM部署到你的服务器上来，这里需要注意的是使用Windows 2003+iis6的服务器，需要开启iis中“以IIS5.0 隔离模式运行 www 服务”选项才能正常使用该软件。</P>
<P>&nbsp;</P>
<P>安装完成，通过浏览器访问IISUTM的配置管理界面默认的是<A href="http://127.0.0.1:8362">http://127.0.0.1:8362</A>，这个是私有地址，只能在该服务器上访问，你需要任何地方都能访问的话，可以在安装的时候IP地址的选项那里填入你服务器的公网IP地址，和你所开放的端口。这样你就可以通过你配置的地址进行访问，或者你可以在iis中直接管理名为IISUTM的站点。</P>
<P>&nbsp;</P>
<P>登陆管理界面后点击上面导航栏中的“基本设置”，然后点击左边菜单的“防SQL注入”链接。</P>
<P>&nbsp;</P>
<P>开启该链接里所有的选项，选中之后IISUTM会自动保存配置，下面的SQL注入关键字是该软件提供的SQL注入关键字以及特殊符号的特征库，你可以根据你网站的情况进行更改（最好不要修改）。IISUTM会自动拒绝16进制的编码。</P>
<P>&nbsp;</P>
<P>确认以上的配置以后，你可以返回到IISUTM管理界面的首页，这里会列出最近服务器遭受到的攻击以及详细，赶紧去看看你的网站是不是随时有人在进行SQL注入吧，以及哪些攻击被IISUTM处理掉了。<BR>&nbsp;<BR></P>]]></description>
</item><item>
<title><![CDATA[IISUTM网站防火墙免费安全服务活动]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=iisutm2&amp;id=45215</link>
<author>iisutm2</author>
<pubDate>2009/5/6 21:25:01</pubDate>
<description><![CDATA[
<P>IISUTM网站防火墙免费安全服务活动</P>
<P>&nbsp;</P>
<P>IISUTM是windows平台下IIS服务中采用ISAPI Filter这种对付各种WEB服务器危害最为有用的技术。原理很简单，当WEB服务器接受请求的时候，在你的网站程序读取对这些请求之前进行针对性的筛选选过滤，在IIS内核中实现真正意义上的全方位安全防护。</P>
<P>&nbsp;</P>
<P><BR>为了让更多的用户了解我们的产品，使用我们的安全服务，现在推出免费的使用我们产品的活动，并享受到我们提供的WEB安全方面的技术支持服务。</P>
<P>&nbsp;</P>
<P><BR>参加活动要求：</P>
<P>1.拥有独立服务器的个人以及公司组织，要求windowsNT,2000,2003，使用IIS的WEB服务器。</P>
<P>2.该服务器中需要有达到日访问量1000IP的网站，并且需要在该网站上注明“由IISUTM提供网站安全服务”并且加上官方的链接<A href="http://www.iisutm.com/">www.iisutm.com</A>。</P>
<P>&nbsp;</P>
<P>审核过的参与者享受到的权利：</P>
<P>1.免费获得软件注册码，无任何限制的享受软件的所有功能。</P>
<P>2.享受我们提供的全方位的WEB安全服务，有专门的安全团队在使用IISUTM的基础上为您的服务器提供全方位的保护。</P>
<P>3.可以优先使用我们陆续推出的安全产品。</P>
<P>&nbsp;</P>
<P>我们的共享版软件下载地址</P>
<P>&nbsp; 官方下载&nbsp; IISUTM网站防火墙安装及操作手册<BR>&nbsp; 站长站下载&nbsp; 绿色软件联盟&nbsp; 霏凡软件站&nbsp; 华军软件站<BR>&nbsp; 黑客基地&nbsp; 多特软件站</P>
<P>官方网站地址</P>
<P>&nbsp; <A href="http://www.iisutm.com/">http://www.iisutm.com</A></P>
<P>活动报名</P>
<P>&nbsp; 报名邮箱:beyonyang@iisutm.com</P>
<P>&nbsp; 报名QQ群：12773662</P>
<P>&nbsp;</P>]]></description>
</item>
</channel>
</rss>