篇一 : 企业级Web服务器安全主动防御措施

Web服务器现在已经成为了病毒、木马的重灾区。不但企业的门户网站被篡改、资料被窃取,而且还成为了病毒与木马的传播者。有些Web管理员采取了一些措施,虽然可以保证门户网站的主页不被篡改,但是却很难避免自己的网站被当作肉鸡,来传播病毒、恶意插件、木马等等。笔者认为,这很大一部分原因是管理员在Web安全防护上太被动。他们只是被动的防御。为了彻底提高Web服务器的安全,笔者认为,Web安全要主动出击。具体的来说,需要做到如下几点。

一、在代码编写时就要进行漏洞测试

现在的企业网站做的越来越复杂、功能越来越强。不过这些都不是凭空而来的,是通过代码堆积起来的。如果这个代码只供企业内部使用,那么不会带来多大的安全隐患。但是如果放在互联网上使用的话,则这些为实现特定功能的代码就有可能成为攻击者的目标。笔者举一个简单的例子。在网页中可以嵌入SQL代码。而攻击者就可以利用这些SQL代码来发动攻击,来获取管理员的密码等等破坏性的动作。有时候访问某些网站还需要有某些特定的控件。用户在安装这些控件时,其实就有可能在安装一个木马(这可能访问者与被访问者都没有意识到)。

为此在为网站某个特定功能编写代码时,就要主动出击。从编码的设计到编写、到测试,都需要认识到是否存在着安全的漏洞。笔者在日常过程中,在这方面对于员工提出了很高的要求。各个员工必须对自己所开发的功能负责。至少现在已知的病毒、木马不能够在你所开发的插件中有机可乘。通过这层层把关,就可以提高代码编写的安全性。

二、对Web服务器进行持续的监控

冰冻三尺、非一日之寒。这就好像人生病一样,都有一个过程。病毒、木马等等在攻击Web服务器时,也需要一个过程。或者说,在攻击取得成功之前,他们会有一些试探性的动作。如对于一个采取了一定安全措施的Web服务器,从攻击开始到取得成果,至少要有半天的时间。如果Web管理员对服务器进行了全天候的监控。在发现有异常行为时,及早的采取措施,将病毒与木马阻挡在门户之外。这种主动出击的方式,就可以大大的提高Web服务器的安全性。

笔者现在维护的Web服务器有好几十个。现在专门有一个小组,来全天候的监控服务器的访问。平均每分钟都可以监测到一些试探性的攻击行为。其中99% 以上的攻击行为,由于服务器已经采取了对应的安全措施,都无功而返。不过每天仍然会遇到一些攻击行为。这些攻击行为可能是针对新的漏洞,或者采取了新的攻击方式。在服务器上原先没有采取对应的安全措施。如果没有及时的发现这种行为,那么他们就很有可能最终实现他们的非法目的。相反,现在及早的发现了他们的攻击手段,那么我们就可以在他们采取进一步行动之前,就在服务器上关掉这扇门,补上这个漏洞。

笔者在这里也建议,企业用户在选择互联网Web服务器提供商的时候,除了考虑性能等因素之外,还要评估服务提供商能否提供全天候的监控机制。在Web安全上主动出击,及时发现攻击者的攻击行为。在他们采取进一步攻击措施之前,就他们消除在萌芽状态。

三、设置蜜罐,将攻击者引向错误的方向

在军队中,有时候会给军人一些“伪装”,让敌人分不清真伪。其实在跟病毒、木马打交道时,本身就是一场无硝烟的战争。为此对于Web服务器采取一些伪装,也能够将攻击者引向错误的方向。等到供给者发现自己的目标错误时,管理员已经锁定了攻击者,从而可以及早的采取相应的措施。笔者有时候将这种主动出击的行为叫做蜜罐效应。简单的说,就是设置两个服务器。其中一个是真正的服务器,另外一个是蜜罐。现在需要做的是,如何将真正的服务器伪装起来,而将蜜罐推向公众。让攻击者认为蜜罐服务器才是真正的服务器。要做到这一点的话,可能需要从如下几个方面出发。

一是有真有假,难以区分。如果要瞒过攻击者的眼睛,那么蜜罐服务器就不能够做的太假。笔者在做蜜罐服务器的时候,80%以上的内容都是跟真的服务器相同的。只有一些比较机密的信息没有防治在蜜罐服务器上。而且蜜罐服务器所采取的安全措施跟真的服务器事完全相同的。这不但可以提高蜜罐服务器的真实性,而且也可以用来评估真实服务器的安全性。一举两得。

二是需要有意无意的将攻击者引向蜜罐服务器。攻击者在判断一个Web服务器是否值得攻击时,会进行评估。如评估这个网站的流量是否比较高。如果网站的流量不高,那么即使被攻破了,也没有多大的实用价值。攻击者如果没有有利可图的话,不会花这么大的精力在这个网站服务器上面。如果要将攻击者引向这个蜜罐服务器的话,那么就需要提高这个蜜罐服务器的访问量。其实要做到这一点也非常的容易。现在有很多用来交互流量的团队。只要花一点比较小的投资就可以做到这一点。

三是可以故意开一些后门让攻击者来钻。作为Web服务器的管理者,不仅关心自己的服务器是否安全,还要知道自己的服务器有没有被人家盯上。或者说,有没有被攻击的价值。此时管理者就需要知道,自己的服务器一天被攻击了多少次。如果攻击的频率比较高,管理者就高兴、又忧虑。高兴的是自己的服务器价值还蛮大的,被这么多人惦记着。忧虑的是自己的服务器成为了众人攻击的目标。就应该抽取更多的力量来关注服务器的安全。

四、专人对Web服务器的安全性进行测试

俗话说,靠人不如靠自己。在Web服务器的攻防战上,这一个原则也适用。笔者建议,如果企业对于Web服务的安全比较高,如网站服务器上有电子商务交易平台,此时最好设置一个专业的团队。他们充当攻击者的角色,对服务器进行安全性的测试。这个专业团队主要执行如下几个任务。

一是测试Web管理团队对攻击行为的反应速度。如可以采用一些现在比较流行的攻击手段,对自己的Web服务器发动攻击。当然这个时间是随机的。预先 Web管理团队并不知道。现在要评估的是,Web管理团队在多少时间之内能够发现这种攻击的行为。这也是考验管理团队全天候跟踪的能力。一般来说,这个时间越短越好。应该将这个时间控制在可控的范围之内。即使攻击最后没有成功,Web管理团队也应该及早的发现攻击的行为。毕竟有没有发现、与最终有没有取得成功,是两个不同的概念。

二是要测试服务器的漏洞是否有补上。毕竟大部分的攻击行为,都是针对服务器现有的漏洞所产生的。现在这个专业团队要做的就是,这些已发现的漏洞是否都已经打上了安全补丁或者采取了对应的安全措施。有时候我们都没有发现的漏洞是无能为力,但是对于这些已经存在的漏洞不能够放过。否则的话,也太便宜那些攻击者了。

篇二 : 80安全-WEB服务器安全浅淡

蓝色粗体:人名(]

红色字体:加粗重点(或者作者PS)

----------------------------------

煮酒品茶:为什么要叫80安全了,其实也是因为喜欢80sec,紧跟时尚嘛。写的也就是那些道道。因为这方面文章不多,所以故有此文。在这里我希望申明一下我个人的观点,有人谈“黑客”色变,你说黑客都是坏家伙,请你上乌云看看。其实这是观点的理解错误,主要是因为工具化的普及,然后服务器管理的失误或者是更多的人为因素。安全这方面出在人身上的失误往往比出在技术上面的失误要多的多。安全意识不可失。

煮酒品茶:另外我也就是个小菜鸟,这只是一些经验之谈。也希望高手们来指点指点。让小菜我跟着进步哈。

思路:怎么防如何防?想这个问题还不如反过来白盒,怎么攻击?如何攻击?一台WEB服务器摆这里。让你攻,怎么攻。不知你们如何想。反正我是这么想。

设定假想攻击:

--------------------------------------------------------------------

一、我的想法是第一零日呗,这货比较难求,像“白帽子讲web安全”中讲的信任,我们应该相信我们的系统是没有漏洞的,不然我们的防无法做下去。还有服务器上面的软件,如果是连这也不相信那么没有继续看下去的必要了。我们对此做的只是用最稳定的,多注意漏洞厂商的官方以及漏洞库的查看。看看你是不是中了刀。出了漏洞尽快补以及查看日志是否中标。所以攻击第一步应该是收集信息。

二、既然排除了系统与软件的零日漏洞,那么我又如何攻呢?让我想想吧,扫描服务器开放端口,然后再针对端口进行相应的攻击,比如开了80,那么我又多了一条路,web,然后对web进行攻击。如果开了ftp,那么我又对ftp进行攻击,当然前面我讲过,信任。如果你连web服务器与ftp程序都无法信任,那无从谈起。开了22那么暴破,不管有没有结果,字典一挂,先在机器上跑着再说。

三、首先我们是web服务器,那么80端口是必要的,所以我们可以对其它服务进行关闭或者有偿连接。比如限制IP,VPN登陆。完了,我只有一条路可走,那就是80了。80怎么整?还是信息收集, 程序是asp?php?jsp?python? 动态还是静态?信息收集一般收集后台吖,上传地址啊,编辑器地址(ewe,fck这些都是赤果果的)啊。以及有人会把网站整站打包到根目录,以及rebort信息啊。有人喜欢把后台地址放到rebort上,这样就爽了。

四、找着后台就为我们暴破提供的场地,因为大家都爱用admin嘛,正合我意,不管出不出来,先破着再说。那么上传地址了,这货可以无验证上传哇,牛,扎包,发包哇。好事。如果后台没出来,也无上传组件,编辑器组件啊,那如何办?头疼啊,我xss和sql注入吧。与是拼命的找xss,一般体现在两方面,肯定是程序与用户的交互地。比如url比如程序内的文本输入框。精心构造呗。得xss就有了cookies有了cookies就有了数据和权限。有了权限就可以进一步获取更大的权限。sql注入,老生常谈啊。注入这东西真的危害,你屏了常用的 ' and union order...等等,他就可以给用gb2312你转个码,没屏蔽?那我就直接上,当然还有各种方法,主要是构造思路。

五、那么如果以上都没有,我旁站?哈米你机器上只有一个站?那怎么办呢?暴库?这货基本上现在都没有用对了,网站是会员的,那会员肯定会有一些权限,比如说上传图片哇?试试能不能突破。还不行?那就C段。C段不行?那么最终 核武器。

六、社工,也叫社会工程学。这名字取的好啊,凯文干的活儿,较多的是社工,而且还出了本书叫斯骗的艺术,是叫艺术哦,他是最牛黑客喔。哈哈,社工指啥,利用人的问题,比如说钓鱼,dns劫持、站内发信息带连接啊、站外QQ传毒啊,邮箱传毒啊。拿你运维电脑的权限啊,然后挂个键盘记录器啊。电话你人员说我是机房的,你们机器出现问题,然后我这边DDOS,你那边急哇,趁运维急想尽办法套权限哇。等等等。。。。只有想不到的没有做不到的。

七、没有七了,因为我也就知道这么点了,或许忘了些。但是思路要在这里就成。你可以扩散。

------------------------------------------------------------------

针对攻击设防御(请你扩散思维):、

煮酒品茶:没有攻击的假想你如何防?所以肯定是先设想再防御。一点一点来吧。

---------------------------------------------------------------------

一、针对零日,应该是没有任何办法。你自己做个系统?所以第一只我们只能退而求其次,首先保证服务器上只要可以运行业务的功能就行。其它软件能不装就不装。装了也定时查看官网看有没有出漏洞以及系统出漏洞,所以我们要尽可能的少装软件,更新倒没必要,主要是一个稳定,然后更新的话查看更新的内容,如果有漏洞那必须更。

二、端口,ftp,22 21等都没必要开放,连VPN吧,VPN才能访问,所以只开放一个端口:80。

三、只余80了,这里是最难防的。信息隐葳,后台这货一定的保证好,不行就后台指定IP连接。还有其它编辑器,这货无法隐藏,你必须得供用户使用,所以能不要的组件就尽量不要。rebort别太傻太天真。

四、针对后台

后台被找着了?想暴破?那我给你设定个次数,就三次吧,超过三次那么你三小时后再来连接吧。ssh也可以设,但还有一层也就是VPN、你vpn都被干了那就没法了

针对上传。我们做如下设定。首先上传肯定要屏蔽好,只允许上传哪些,以及不允许上传哪些,为什么要写两个?万事无绝对,细心点好。可写不可读,可读不可写。这种境界一定要发挥好。有人就要说了缓存。缓存请分离,别放web上占着地方。缓存是静态的。那这个问题也解决了,不行上传也分离到别的服务器上,但是权限要把握手,可写不可读,你可以上传,但我不让你读取。就不存在webshell的问题了。定期查杀呗。

针对xss,这个自己一定得测,这个是靠经验,如<a hert"http:// www.2cto.com /"></a>我们构造一下<a hert""><script>alert (/XSS/)</script>// "></a> 这个"><script>alert (/XSS/)</script>// 直接窗口跳出来,所以这个靠经验,事后可以自己测,注意两个方向,一个url一个文本输入框。

针对sql刚也说了屏蔽掉一切可以屏蔽的,并且保证每个连接数据的文件必须引用。是必须。还有一个无验证权限的,或者说在url上验证权限的,这种是程序的问题。只能写程序时注意。什么构造个UID就直接通过验证进行帐户了,而且这种漏洞最多啦。新浪手机的昨天就出个这样的,QQ空间也有。当然是我师傅发现的啦。

五、旁站,这个隔离吧,虚拟空间用户较多,这个依托与服务提供商。C段也是依托与别的服务器,但尽量做到只用可用的,而且你要用可用的那你还必须指定的IP来用我的。

六、社工,这个真没法说,只能自己加强安全意识,遇事不急。切记不可急。你急全完了。还有定期给同事客服进行培训。讲啥,讲你们别乱搞,乱搞出问题了我们都负不起责,然后再讲其它的。

七、未知的一切才最可怕,如果你自己都不知道还有哪里可以攻击到自己,那没办法,这就是失败的!这时你可以请专业人员来测试,什么像游戏一样,技术测试,技术一测技术二测技术三测,内部测试,第一次内测,第二次内测。。所以说游戏都是蛋疼的。无聊的。也可以找一些在线的安全测试,比如360啊,这类的。都有免费提供这样的服务的。

八、忘说一点,比如说web运行指定用户,数据库指定用户。但他们都不可以登陆系统,只能读访问。等等。。这个靠思维扩散。

九、漏了一点,测试,包括程序服务器的攻击测试,最后直接上传webshell进行提权测试。

十、有条件的可以考虑硬件防火墙,IPS等安全产品。毕竟人家是专业的。能挡则挡。

------------------------------------------------------------------

煮酒品茶:写到这里我已经无语了,脑力透之了。光打字和想就花了一个多小时。但你看看我们的成果,还是很烂。为啥发散不够彻底,第八点,我其实已经忘记写在攻击预想中了,没像我的马甲一样跳出这个思维。为什么会出现这种情况?我们想想,我们都是针对自己的攻击方案来防,但攻击方案丫根就没有放他到这一步来,理论上是他不可能得到WEB服务器权限,但我们看看第七点,未知的,如果你自己的假设攻击都有错误。那么安全就是失败的。此文就当一篇自我反省的文章,以及记录我想到的攻击方法。以及实际经验。根据白帽子一书上写的两点

Secure By Default】以及【Defense in depth】

去做。真可怕,我又想起一点,密码安全,密码规则。我的天啊。所以这一项工作是长期的坚持的努力的,群策群力的。

煮酒品茶:希望有下期吧,下期下点具体实施方案出来。

最后我还是得感谢我的朋友们对我的帮助,特别是我的师傅,名字还没经过他的同意不方便透露。还有很多思想取自“白帽子讲web安全”虽然我还没看完。

更新:

2012-4-27 23:50 增加内容

-------------------------------------------------------------------

九、漏了一点,测试,包括程序服务器的攻击测试,最后直接上传webshell进行提权测试。

朋友(Demos)觉着遗漏,特补上来,也就是第十条

十、有条件的可以考虑硬件防火墙,IPS等安全产品。毕竟人家是专业的。能挡则挡。

---------------------

安全-Demos 23:38:12

比如防火墙,IPS,waf

---------------------

---------------------------------------------------------------------

参考书名:

白帽子讲Web安全(阿里巴巴集团首席架构师、阿里云总裁王坚力荐) 作者:吴翰清

帮助文章成长的朋友:Demos

原文:http://cwtea.blog.51cto.com/4500217/846231

篇三 : web服务器安全加固策略

系统安全的加固一般都是通过权限来控制的,系统盘的权限给予administrator和system所有控制权限,其他的盘给予administrator所有权限外,其他的用户都删掉,不过对于放web文件的盘可以另行添加用户,设置相应的权限,这个要严格设定,确保权限的最小访问权限

其他的设置有

一、关闭文件共享

将Microsoft和Microsoft网络的文件和打印机共享的选项取消掉

二、禁用NetBlos(关闭139端口)

好多的黑客可以利用利用NetBIOS漏洞攻击服务器

点击高级

禁用Tcp/ip上的NetBIOS选上即可

三、关闭共享

共享主要是对于局域网使用的,互联网上就没必要了,直接关闭掉就可以了

四、浏览器的安全设置

这个浏览器包括服务器端浏览器和终端机器的浏览器

利用浏览器的漏洞进行攻击已经是现在最普遍的手段了,攻击者可以利用每次的漏洞发布去知道这些漏洞,从而在你的浏览器上放置木马,获取权限,篡改首页,恶意修改代码,所以建议最好不要再服务器上直接打开浏览器进行浏览,编程,这样是很不安全的,如果特别需要的话,那么就升级浏览器到最高版本,并安装相关的防御软件进行维护

终端浏览器也要注意安全防护,现在的web欺骗很多,就是所谓的'钓鱼网站",这些网站都是木马网站,篡改你的首页,打开浏览器后显示的就是他们设置的页面,从而提高他们网站的知名度和流量,还有的就是做一个和真实的网站一样的网站,有些人没注意就会在上面进行交易,输入自己的密码,账号等,然后直接提交到了黑客的服务器数据库中

终端客户机要注意电脑的安全,一些机密的问题,比如密码,账号等不要保存到里面,放置黑客通过木马进入到你的服务器里获取这些信息,现在的大马很厉害,直接可以获取服务器操作的权限,是非常危险的,可以利用相关的木马查杀工具进行查杀,如果不及时删除这些木马,对服务器是非常不利的

企业级Web服务器安全主动防御措施的更多相关文章

  1. Web服务器安全设置

    Web服务器安全方面一直重视程度不够,是各种网站经常被黑的主要原因.下面笔者总结了一下关于怎样保证Web服务器安全的措施,希望能给那些服务器尚存在漏洞的用户提供一些帮助. 本文主要以Windows s ...

  2. C# web服务器被webbench攻击及目现采用的防御措施

    web服务器连续两次出现CPU达到100%的情况,第一次还想着是升级时,哪个地方写错了,有死循环,最后重启了三次服务器才好. 但事后分析代码,没有死循环的可能,于是在第二次又出现CPU达100%时,仔 ...

  3. 基于OWin的Web服务器Katana发布版本3

    当 ASP.NET 首次在 2002 年发布时,时代有所不同. 那时,Internet 仍处于起步阶段,大约有 5.69 亿用户,每个用户平均每天访问 Internet 的时间为 46 分钟,大约有 ...

  4. JSP之WEB服务器:Apache与Tomcat的区别 ,几种常见的web/应用服务器

    注意:此为2009年的blog,注意时效性(针对常见服务器)     APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页 如(asp,php,cgi,jsp)等 ...

  5. Web服务器的工作原理

    Web服务器的工作原理 Web服务器工作原理概述 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它们是怎样处理来自全世界的http请求的?它们在幕后做了 ...

  6. web服务器工作原理

    Web服务器工作原理概述 转载自http://www.importnew.com/15020.html 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它 ...

  7. WEB服务器、应用程序服务器、HTTP服务器区别

    很清晰的解释了WEB服务器.应用程序服务器.HTTP服务器区别 转载自 http://www.cnblogs.com/zhaoyl/archive/2012/10/10/2718575.html WE ...

  8. web服务器 应用 服务器

    WEB服务器.应用程序服务器.HTTP服务器有何区别?IIS.Apache.Tomcat.Weblogic.WebSphere都各属于哪种服务器,这些问题困惑了很久,今天终于梳理清楚了: Web服务器 ...

  9. 什么是WEB服务器?

    简单的理解:  一个公用的服务器,你可以放置网站文件,让全世界浏览,可以放文件,全世界下载.web服务器一般指网站服务器.  web服务器是基于网站架设的服务器,我们平时可以浏览的网页都是在别人的服务 ...

随机推荐

  1. Ehcache配置项及持久化到硬盘

    EhCache 常见的配置项: cache元素的属性 name:缓存名称 maxElementsInMemory:内存中最大缓存对象数 maxElementsOnDisk:硬盘中最大缓存对象数,若是0 ...

  2. Bootstrap 学习笔记11 按钮和折叠插件

     复选框: <div class="btn-group" data-toggle="buttons"> <label for="se ...

  3. Django csrf,xss,sql注入

    一.csrf跨站请求伪造(Cross-site request forgery) CSRF的攻击原理:简单说就是利用了高权限帐号(如管理员)的登录状态或者授权状态去做一些后台操作,但实际这些状态并没有 ...

  4. 《JAVA设计模式》之责任链模式(Chain of Responsibility)

    在阎宏博士的<JAVA与模式>一书中开头是这样描述责任链(Chain of Responsibility)模式的: 责任链模式是一种对象的行为模式.在责任链模式里,很多对象由每一个对象对其 ...

  5. [Linux] 020 RPM 包的命名原则与其依赖性

    1. RPM 包命名原则 例如:httpd-2.2.15-15.e16.centos.1.i686.rpm 字符 释义 httpd 软件包名 2.2.15 软件版本 15 软件发布的次数 e16.ce ...

  6. dfs(最长路径)

    http://poj.org/problem?id=1154 LETTERS Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: ...

  7. [Codeforces 1178D]Prime Graph (思维+数学)

    Codeforces 1178D (思维+数学) 题面 给出正整数n(不一定是质数),构造一个边数为质数的无向连通图(无自环重边),且图的每个节点的度数为质数 分析 我们先构造一个环,每个点的度数都是 ...

  8. Django文件上传下载与富文本编辑框

    django文件上传下载 上传 配置settings.py # 设定文件的访问路径,如:访问http://127.0.0.1:8000/media/就可以获取文件 MEDIA_URL = '/medi ...

  9. Pandas的基础使用

    Pandas的数据结构 # 导入pandas与numpy import pandas as pd from pandas import Series, DataFrame import numpy a ...

  10. python最新字符串学习总结

    names="hello word" len() title() formate 格式化 split join find() replace() startswith() ends ...