Webgoat-CSRF/SSRF

本文详细介绍了CSRF(跨站请求伪造)和SSRF(服务器端请求伪造)的基础知识、攻击原理、漏洞利用条件及防御手段。在CSRF部分,强调了其与XSS的区别,指出其是一种业务逻辑漏洞,并提供了防御策略,如验证码验证和anti-CSRF token。在SSRF部分,阐述了其危害,如内外网扫描和利用,同时提供了SSRF漏洞的寻找和验证方法。
摘要由CSDN通过智能技术生成

CSRF

基础知识

  • 与XSS区别
    从信任的角度来区分
    XSS:利用用户对站点的信任
    CSRF:利用站点对已经身份认证的信任
  • 攻击原理
    在客户端与服务端(如果服务端没有对请求进行二次验证)建立合法请求之后,攻击者通过各种方法向受害者发送一个链接,受害者点击链接后,在受害者非自愿的情况下向服务端发送了指令(诸如修改密码之类的),之后,攻击者就可以通过受害者的账号和攻击者自己设置的新密码登录服务端。
  • CSRF是一种业务逻辑漏洞
    对关键操作缺少确认机制
    自动扫描程序无法发现此类漏洞
  • 漏洞利用条件
    被害用户己经完成身份认证
    新请求的提交不需要重新身份认证或确认机制
    攻击者必须了解Web APP请求的参数构造
    诱使用户触发攻击的指令(社工)
  • 防御手段
    Captcha (验证码验证)
    anti-CSRF token:( 在服务器端生成随机token,浏览器在发起针对数据的修改请求将token提交,由服务器端验证通过够进行操作逻辑,token需要至多一次有效,并具有有限的生命周期
    a. 表单提交修改数据- 可将token生成在表单内使用input:hidden标签进行提交
    b. Ajax提交修改数据-可将token生成在cookie内(cookie不能设置为httponly),ajax请求前通过js读取cookie中的token并添加到request body或者http requestheader中进行提交

    referrer头检验
    降低会话时间

题解

  • 0x03
    构造钓鱼页面发给受害者,诱使受害者(在于服务端建立连接之后)点击
<html>
	<body>
	<form action="http://192.168.80.2:8080/WebGoat/csrf/basic-get-flag" method="POST">
		<input type="hidden" name="csrf" value="false" />
		<input type="hidden" name="submit" value="%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2"/ >
		<input type="submit" value="click"/>
	</form>
	</body>
</html>

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值