服务器端扫描器的恶意软件,间谍软件,病毒和保护我的访问者

我有一个论坛/组网站,其中包含大量的外部URL,有时直接下载链接。 我想保护我的访问者免受来自恶意软件网站的攻击,因为他们很可能点击这些链接。 不过,我实施DBL(垃圾邮件),但那还不够。 我想运行一个后台任务来首先检查出站链接。 我在StackOverflow(错误地张贴在那里)看到类似的问题,在这里,但没有find一个问题相同,我的或一个很好的答案。

人们build议ClamAV,我不相信它可以检测到Web托pipe的恶意软件网站,并有很多漏检。 我已经看了谷歌安全浏览服务( http://code.google.com/apis/safebrowsing/developers_guide_v2.html非常复杂的实施或保持中途我迷路:S)

我可以去商业解决scheme,任何保护访问者和我的网站品牌。 但我想听听服务器pipe理员的意见,如果有人已经实施了这样的服务。

我的服务器是基本的CentOS LAMP堆栈。

非常感谢你提前。

我使用3或4个外部站点检查服务,在一个crontab脚本。 这是写在我的郎(tcsh),但很容易转换为bash / sh

我每天运行一次。

可能是一个困难的部分可能是汇编你链接到外部网站的列表。

#!/bin/tcsh -f # simplistic after the fact check/test of our sites,being possible malware related. #Mon Sep 20 18:52:15 GMT 2010,dianevm at gmail.com # happened once when some bogus advert networks were used for 48 hours :-( setenv TZ CST6CDT set LINKS="links -no-references -no-numbering -dump-width 120 -dump " set TMPF=/tmp/.malware.dmp.$$ #alias DBG 'echo -n DEBUG:; set PAUSE=$<' alias DBG 'echo -n " "' set NOW=`date +%T` alias OKOUT 'set NOW=`date +%T`;printf %-8s \!*;echo " $NOW"' set SITES2CHECK="toplevel.com external2.com varioussite3.com etc.com" foreach i ( $SITES2CHECK ) echo ___ $i ___ printf %-20s GOOGLE $LINKS "http://www.google.com/safebrowsing/diagnostic?site=$i" >! $TMPF set GOOGLEOK=`grep 'This site is not currently listed as suspicious' $TMPF |wc -l` if ( "$GOOGLEOK" == "1" )then OKOUT ok else tcsh ~/malwarefail $i GOOGLE $TMPF endif printf %-20s SiteAdvisor $LINKS http://www.siteadvisor.com/sites/$i >! $TMPF set SITEADVOK=`grep 'tested this site and didn.t find any significant problems.' $TMPF|wc -l` set SITEADVUNKNOWN=`grep 'we haven.t tested this one yet.' $TMPF|wc -l` if ($SITEADVOK == "1" || "$SITEADVUNKNOWN" == "1") then OKOUT ok else tcsh ~/malwarefail $i SITEADV $TMPF endif printf %-20s Norton $LINKS "http://safeweb.norton.com/report/show?url=$i" >! $TMPF set NORTONOK=`grep 'Norton Safe Web found no issues with this site' $TMPF|wc -l` set NORTONUNKNOWN=`grep ' This site has not been tested yet' $TMPF|wc -l` if ($NORTONOK == "1" ||$NORTONUNKNOWN == "1" ) then OKOUT ok else tcsh ~/malwarefail $i NORTON $TMPF endif printf %-20s BRWSDEFNDR $LINKS "http://www.browserdefender.com/site/$i/">! $TMPF set BRWSDEFNDROK=`grep 'Our testing of this site found no dangerous downloads' $TMPF|wc -l` set BRWSDEFNDRUNKNOWN=`grep 'Not yet rated' $TMPF|head -1|wc -l` #note head added,2 instances if ($BRWSDEFNDROK == "1" ||$BRWSDEFNDRUNKNOWN == "1" ) then OKOUT ok else tcsh ~/malwarefail $i BRWSDEFNDR $TMPF endif end ~ ## note malwarefail just emails people the output of the dump files