针对WEB服务器常用到的攻击和防护方法
1.通过获取目标信息进行攻击:通过HTML代码中的注释(好的习惯在代码被服务器执行时要去掉),敏感信息,服务端出错信息和查询,数据库连接字符串和隐藏的输入域。
攻击方法:第一步通过手工映射链接来了解站点的结构和基本的映射表,
第二步通过自动的方式查找HTML文件中的注释和一些过期不用的代码
第三步检查页面之间的一些传递参数,这些参数能够使应用程序产生出错信息,从而可以从出错信息中得到攻击都想要的信息
第四步通过以上获得的信息再对相应的服务器和站点进行攻击。
防护方式:可以通过在程序发布前去除相应的注释及隐藏页面之前的参数传递的方式来进行防护。
2.猜测文件与目录:通过这种方式可以获得用户文件所存放的目录,从而使得入侵者可以通过绝对路径来访问这个网站的一些文件。
攻击方法:通过一些页面的命名规则,和一些常用的目录和文件名来进行猜测。
防护方式:通过配置WEB服务器,使其不能提供除应用以外的其他任何文件的访问服务。或者通过每次客户端向服务器提出请求均要通过应用程序的用户认证也可以达到一定的防护效果。同时在对重要目录进行命名时要注意不要用太简单的名字来命名,最好要有一定的复杂度从而可以减少被猜测出来的可能性。
3.重用他人类库造成的隐藏BUG。这是因为在程序编写过程中使用了以往别人已经编写和封装好的类库,而且没有对这个的类库的安全性进行评测从而造成了隐藏BUG的存在。更危险的是这类BUG不易被编程人员发现。
攻击方法:实时的关注一些常用编程组件的BUG公告,当得知这些BUG时及时的进行攻击。
防护方式:当程序员要使用他人的共享组件时要对相应的组件进行漏洞扫描,从而不至于使用了一个漏洞百出的组件还一无所知。
除此几种方式以外可以将专业的事交给专业的人做,现在网络安全防护服务商有推出高防IP,高防CDN,立体式防御策略,入侵防御,渗透测试等安全防护,可以详细探讨