webGoat实验

webGoat实验http netsecurity 51cto com art 201108 287651 htmhttp sebug net node t 38

 

WEBGOAT 综述

 webGoat的本质就是搭建的目标网站,webscarab实质就是个代理服务器.

安全风险
应对工具
第一位: 注入式风险
SQL Inject Me
第二位: 跨站点脚本 (简称XSS)
ZAP
第三位: 无效的认证及会话管理功能
HackBar
第四位: 对不安全对象的直接引用
Burp
第五位: 伪造的跨站点请求(简称CSRF)
Tamper Data
第六位: 安全配置错误
Watobo
第七位: 加密存储方面的不安全因素
N/A
第八位: 不限制访问者的URL
Nikto/Wikto
第九位: 传输层面的保护力度不足
Calomel
第十位: 未经验证的重新指向及转发
Watcher

HTTP基础

  HTTP(Hypertext transfer protocol)是一种详细规定了浏览器和万维网服务器(www)之间互相通信的规则,运行于OSI模型的应用层,由请求和响应两部分构成。HTTP协议是无状态的协议。无状态指HTTP协议对于事务处理没有记忆力。缺少事务状态意味着若后续处理需要前面的信息,则必须重传,可能导致每次连接传送的数据量增大。基于事务处理的需要,出现了cookiesession技术。

HTTP拆分攻击的基本原理

许多网络协议,包括HTTP也使用CRLF来表示每一行的结束。这就意味着用户可以通过CRLF注入自定义HTTP header,导致用户可以不经过应用层直接与Server对话。

攻击者控制参数并发送一个将产生两次响应的请求;这两次响应都由攻击者组织,并以服务器为目标。

缓存区中毒——服务器缓存机制。当新的请求过来验证资源的最新资源的日期。缓存原理:

1客户端请求一个页面(A.html)。

 2服务器返回页面A.html,并在给A.html加上一个Last-Modified/ETag

 3客户端展现该页面,并将页面连同Last-Modified/ETag一起缓存。

 4客户再次请求页面A,并将上次请求时服务器返回的Last-Modified/ETag写在If-Modified-Since一起传递给服务器。

服务器检查该Last-ModifiedETag,并判断出该页面自上次客户端请求之后是否未被修改。如果没有修改(If-Modified-Since>=最后一次修改的时间),直接返回响应304和一个空的响应体。如果已经修改,则发送新页面。 

参考文献:http://security.ctocio.com.cn/485/12178985.shtml

AJAX 安全

在同源策略下,在某个服务器下的页面是无法获取到该服务器以外的数据的,但imgiframescript等标签是个例外,这些标签可以通过src属性请求到其他服务器上的数据。

档对象模型(DOM)从安全的角度展现了一个有趣的问题。它允许动态修改网页内容,但是这可以被攻击者用来进行恶意代码注入攻击。XSS,一种恶意代码注入,一般会发生在未经验证的用户的输入直接修改了在客户端的页面内容的情况下。

参考攻击代码如下:







XSS 跨站攻击

1反射型

2存储型

3Dom型

http://www.rising.com.cn/newsletter/news/2012-04-25/11387.html

http://www.2cto.com/Article/201310/250553.html

注入缺陷

参考文献:http://blog.sina.com.cn/s/blog_ae3a14c001015lhe.html

会话管理缺陷

1会话劫持

 

综合参考文献:

http://netsecurity.51cto.com/art/201108/287651.htm

http://sebug.net/node/t-38

http://zhanzhang.anquan.org/vul-detail/517a6f4e6856be5066e43957/

http://www.2cto.com/Article/201212/178668.html    [Web的脆弱性:各种注入、攻击]





版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/199751.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月20日 下午12:17
下一篇 2026年3月20日 下午12:18


相关推荐

  • 绘制UML各种图详解「建议收藏」

    绘制UML各种图详解「建议收藏」来源:http://blog.csdn.net/shift_wwx/article/details/79205187一、前言在软件开发过程中会经常整理文档,不是所有的信息都可以通过文字来表达,而换成图之后会更加的直观、有效,其中频繁使用的就是UML图。结合自己实践总结一下,希望对大家都能有所帮助。本文中的UML图都是用visio绘制,sourcecode展示是Ja…

    2022年8月13日
    8
  • fpga编程语言VHDL_quartus模块

    fpga编程语言VHDL_quartus模块(72)FPGA模块调用(VHDL调用Verilog)1.1目录1)目录2)FPGA简介3)VerilogHDL简介4)FPGA模块调用(VHDL调用Verilog)5)结语1.2FPGA简介FPGA(FieldProgrammableGateArray)是在PAL、GAL等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA设计不是简单的

    2025年11月20日
    6
  • java 泛型 擦除_java 泛型擦除发生在哪个阶段,如何用反编译工具查看泛型擦除后的代码?…

    java 泛型 擦除_java 泛型擦除发生在哪个阶段,如何用反编译工具查看泛型擦除后的代码?…javap c sPairCompile Pair java publicclassP publicPair Signature VCode 0 aload 01 invokespecia 1 Methodjava lang Object V4 aload 05 aconst null6

    2026年3月26日
    2
  • 多个checkbox复选框触发点击事件

    多个checkbox复选框触发点击事件多个checkbox复选框触发点击事件

    2022年4月23日
    144
  • jquery ajax中success中的跳转问题

    jquery ajax中success中的跳转问题注意起来一个情况:ajax+submit+同步—-就是你用ajax请求服务器,而且用的是同步的方式,并且你是通过点击了type类型为submit的按钮来触发这个ajax。这个时候,首先你点击了submit,它会提交表单,但是由于你用了ajax的同步操作,submit的提交被阻塞,ajax先执行,这个时候,如果你在ajax的回调函数(如:success)中写了document.locatio…

    2022年6月13日
    51
  • python可视化图表生成(一)

    python可视化图表生成(一)一 安装拓展包 pipinstallma 二 折线图 importnumpya pyplotaspltx np linspace 0 2 100 创建等差数列 0 2 之间 100 个 plt plot x x label line1 第一个参数为横坐标第二个为纵坐标第三个为曲线名字 plt plot x x2 label line2 plt plot x x3 label line3

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号