跨入安全的殿堂-读《Web入侵安全测试与对策》感悟

Gytha ·
更新时间:2024-09-21
· 931 次阅读

  前言   近读完了《Web入侵安全测试与对策》,从中获得了不少灵感。此书介绍了很多Web入侵的思路,以及国外安全站点,使我的眼界开阔了不少。在此,我重新把书中提到的攻击模式整理归纳了一遍,并附上相关的一些参考资料,希望会对各位Web开发人员和安全测试人员有所帮助。   现在Web攻击方式日新月异,但基本思想很多都源于下面的攻击方式,比如,下面提到的“SQL注入”和“命令注入”是注入思想的不同体现。另外,本文的目的不在于“详细介绍每种提到的攻击技术”,而在于“让大家知道要程序安全,我们起码要了解哪些东西”   Web入侵攻击方式   一.客户端试探性攻击   1. 查找敏感信息   (1)HTML代码中的注释,隐藏域,及其他敏感信息。   现在很多工具可以帮助你分析网页,比如:PageSpy,Firebug等等。   (2)服务端出错信息。比如:

  (3)程序出错提示。   经典例子是网站登陆,登陆的时候需要输入账号&密码,如果服务器对于错误账号返回一个错误信息“该账号不存在”,对于错误的密码返回另外一个正确信息“账号密码错误”。那么攻击者可以根据返回值猜测用户名,并继续下一步的攻击。   2.猜测文件与目录   如果你有过把一个论坛的Access数据库下载下来的经历,那你应该会对这种攻击方式记忆犹新。另外,如果访问配置文件没有好好保护,后果也一样严重。   3.绕过客户端的输入限制/验证(客户端的数据不可信)   绕过客户端的验证或者限制有很多方式,直接把Web页面的JavaScript脚本去掉,另外一种方式是,拦截发送包,直接把它改掉。   4.修改Cookie   你在大学图书馆的机器上有发现Cookie文件吗?你是否想过把它的过期时间修改便可继续使用呢?   网上有很多关于Cookie的文章,书中也推荐了一个外国站点:Dutchduck。,有兴趣可以了解一下。二.利用Web漏洞实现攻击   5.第三方库/组件的漏洞   使用第三方资源无可避免,但还是留个心眼吧:>。   6.会话劫持(Session Hijak)   会话劫持除了通过监听实现外,其实还通过其他形式的,比如:直接修改Cookie的会话标识,或者修改HTTP包头的Cookie信息等等。但一般比较简单的劫持方式还是通过监听。   这里稍微说一下,会话劫持曾在我上高中的很流行,因为那时候局域网组建大多数还是使用HUB,监听很方便。但随着交换机的普及,会话劫持也渐渐安静了下来。而现在,会话劫持似乎又随着无线网普及又开始兴起了:>   要在无线网下实施劫持可以使用:hamster   要在交换机环境中实施会话劫持,可以使用:SSCLONE   了解监听的原理:《网络嗅探技术浅析》。   7.跨站式攻击(XSS)   根据不同的使用,XSS可以分为“存储型XSS”和“反射型XSS”。   存储型XSS:攻击者通过在评论/留言等方式输入恶意信息,当其他用户访问该网站时,服务器便会从数据库中取出相关的恶意信息,并回显给用户。这种方式,可以看作是攻击者在网站上挂了一个恶意脚本。   反射型XSS:把脚本信息内嵌到URL的CGI参数上,通过邮件或者其他方式,引诱你去点击该链接。   一般XSS终目的都是:   (1)盗取个人信息。   (2)下载病毒木马。   (3)在真实网站中嵌入欺骗信息。   现在存储型的XSS漏洞网站似乎比较少了,但反射型的还有很多。   8.注入攻击   (1)SQL注入   (2)命令注入   (3)……   其实注入的思想都是一样的,只是应该的地方不同。他们共同的特征是:输入特殊的字符,改变原有的业务流程/欺骗服务器。关于SQL注入,可以参考《Advanced SQL Injection In SQL Server Applications》。   9.缓冲区溢出   在.NET,Java盛行的,缓冲区溢出这类问题基本很少出现了。这里我只是提一下,有兴趣的可以参考《Smashing The Stack For Fun And Profit》和Michael Howard的《The 19 Deadly Sins of Software Security》。   另外,我们可以使用“SPIKE  Proxy”测试Web应用程序的缓冲区溢出问题。   10.非法数据   能否使用编码方式使一些非法字符蒙混过关?Web服务端是否会因为这些数据而异常呢?   11.服务器探测   扫描服务器,看是否存在其他漏洞,0Day永远是hacker的爱!你可以在BUGTraq和Metasploit等类似网站找到漏洞列表。   12.DDOS   老牌的无赖攻击方式了:>。   13.针对认证的攻击   (1)伪装型加密   (2)认证破坏   (3)跨站点跟踪   (4)暴力破解密钥   后记   虽然文章不长,但还是花不少时间。作为安全入门级的文章,本文只列出基础的攻击方式,但这些攻击方式往往有为有效。对安全有兴趣的朋友可以留言交流一下心得,日后我也会继续整理一些安全相关文档:>。



Web 安全测试 测试

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章