学习Web应用漏洞最好的教程----WebGoat
2012-12-24 08:46
295 查看
学习Web应用漏洞最好的教程----WebGoat
分类:Web应用安全 2009-03-19 13:15
6110人阅读 评论(2)
收藏
举报
WebGoat是一个用于讲解典型web漏洞的基于J2EE架构的web应用,他由著名的WEB应用安全研究组织OWASP精心设计并不断更新,目前的版本已经到了5.0。WebGoat本身是一系列教程,其中设计了大量的web缺陷,一步步的指导用户如何去利用这些漏洞进行攻击,同时也指出了如何在程序设计和编码时避免这些漏洞。Web应用程序的设计者和测试者都可以在WebGoat中找到自己感兴趣的部分。
虽然WebGoat中对于如何利用漏洞给出了大量的解释,但是还是比较有限,尤其是对于初学者来说,但觉得这正是其特色之处:WebGoat的每个教程都明确告诉你存在什么漏洞,但是如何去攻破要你自己去查阅资料,了解该漏洞的原理、特征和攻击方法,甚至要自己去找攻击辅助工具,当你成功时,WebGoat会给出一个红色的Congratulation,让你很有成就感!(咱号称搞技术的不就需要这个吗?)
WebGoat甚至支持在其中加入自己的教程,具体方法可以查看其说明文档;
WebGoat中包括的漏洞教程主要有
Cross-site Scripting (XSS)
Access Control
Thread Safety
Hidden Form Field Manipulation
Parameter Manipulation
Weak Session Cookies
Blind SQL Injection
Numeric SQL Injection
String SQL Injection
Web Services
Fail Open Authentication
Dangers of HTML Comments
建议在使用WebGoat时对照OWASP的文档来看,比较有用的是下面三个:
OWASP Testing Guide 3.0
OWASP Code Review Guide 1.1
OWASP Development Guide 2.0
如果你以前没有接触过OWASP,当你看到这些文档时,应该会有一种感觉叫做兴奋。
下面简单说一下安装方法(windows下):
先下载webscarab-current.zip(这个自带tomcat,还有一个下载方式是war文件,需要自己安装tomcat,建议使用第一个),地址为http://www.owasp.org/index.php/Category:OWASP_WebGoat_Project,解压到一个文件夹,运行webgoat.bat即可启动其自带的tomcat,通过访问http://localhost/WebGoat/attack,输入用户名guest,密码guest即可进入。如下图所示:
有一点值得注意的是默认Tomcat只开放在127.0.0.1的80端口,其他的机器没有办法访问,这也是为了安全考虑,因为WebGoat中的漏洞实在太多了。如果是拿来学习,建议还是将其开在0.0.0.0上,修改tomcat下conf中server-80.xml,将其中的所有127.0.0.1改为0.0.0.0并重新运行webgoat.bat即可。server-8080.xml也可以改,但是要运行webgoat_8080.bat才有效果,
知道有WebGoat这个好东东得益于一次和Fortify厂商的接触,Fortify也是OWASP的主要资助者,他们的程序跟踪分析器(PTA)和静态代码分析器(SCA)常常拿WebGoat来做演示。但是很可惜,没有保存Fortify的分析结果,Fortify也不提供个demo版,只好先拿IBM(收购自WatchFire)的AppScan来看看WebGoat中是否有那么多漏洞,下面是扫描结果:
的确漏洞无数!好了,开始学习吧!
相关文章推荐
- 学习Web应用漏洞最好的教程----WebGoat(转载)
- 学习Web应用漏洞最好的教程----WebGoat
- 学习Web应用漏洞最好的教程----WebGoat
- JSP和JSF双剑合并 打造完美Web应用-JSP实例学习教程
- ASP.NET Web Page应用深入探讨(强烈建议开发web的人学习)
- 【andriod应用开发入门教程】学习笔记一
- 渐进式Web应用(PWA)入门教程(下)
- 2011斯坦福大学iOS应用开发教程学习笔记(第七课)Pad和iPhone的通用程序
- Vaadin Web应用开发教程(32):UI布局-Panel
- PHP学习笔记四(PhpStorm调试 PHP Web 应用)
- 2011斯坦福大学iOS应用开发教程学习笔记(第三课)Objective-C
- 从零开始学习 webservice第一集,java webservice简单实例入门教程
- CUBRID学习笔记 29 web管理中文语言文件 CUBRID教程
- EJB学习笔记-4-web应用访问EJB(remote)
- Vaadin Web应用开发教程(37):可视化界面编辑插件
- Spring 注解学习手札(一) 构建简单Web应用GOOD
- Web应用里的HTTP参数污染(HPP漏洞)
- 学习Swift的IOS应用的代码教程-5:让应用变的美观
- 有效防入侵 常见Web应用安全漏洞识别
- 使用Ruby实现简单的事物驱动的web应用的教程