WebGoat攻略 for Mac(3)

WebGoat攻略 for Mac(1)
WebGoat攻略 for Mac(2)

一、题目攻略

A2.Broken Authentication(认证中断)

1.Authentication Bypasses(认证绕过)

  1. 认证绕过

认证绕过以多种方式发生,但通常利用配置或逻辑中的一些缺陷。篡改以达到正确的条件。如隐藏输入、移除参数、强制浏览等。

  1. 2FA密码重设

任务是成功获得更改密码的权限。
在这里插入图片描述
首先随便输入一些数,然后点击Submit进行抓包,如图所示。
在这里插入图片描述
上面例子是把密保问题的相关输入删掉(即删掉secQuestion0和secQuestion1),但是我试了一下不行,然后尝试修改参数名,改为secQuestion00与secQuestion11,如图所示。
在这里插入图片描述
然后重发送,显示成功绕过认证,任务完成。
在这里插入图片描述

2.JWT tokens(JWT代币)

  1. JWT令牌的结构

令牌是base64-url编码的,由header.claims.signature三部分组成。下面是示例。

JWT header(头部):

{  "alg":"HS256",  "typ":"JWT"}

JWT payload(声明):

{  	"exp": 1416471934,  "user_name": "user",  
	"scope": [    "read",    "write"  ],  
	"authorities": [    "ROLE_ADMIN",    "ROLE_USER"  ],  
	"jti": "9bc92a44-0b1a-4c5e-be70-da52075b9a84",  
	"client_id": "my-client-with-secret"}

签名(HS256为例):

HMACSHA256(base64UrlEncode(header) + "." + base64UrlEncode(payload),secret)
  1. 认证并获取JWT令牌

会话流程:
1、用户端登陆,用户名和密码发往服务器。
2、服务器验证后生成JSON头部和声明并加密,生成JWT,此时服务器并没有保存登录状态信息。
3、服务器将JWT返回客户端(响应)。
4、客户端将JWT写在HTTP请求头部的Authorization字段中。
5、服务器对JWT验证,若成功确定用户登录状态。
6、服务器返回响应。

Base64 URL编码中,"+“会变成”-","/“会变成”_","="会被去掉。

  1. JWT签约

任务是取得管理员权限并重置投票。
在这里插入图片描述
点击上方的垃圾箱(重置投票),显示只有管理员才有权限操作。抓包抓到重置时的POST:

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值