JWA安全

编程入门 行业动态 更新时间:2024-10-22 21:45:12

<a href=https://www.elefans.com/category/jswz/34/1722408.html style=JWA安全"/>

JWA安全

JWT安全(失效的身份验证)(越权漏洞的一种)

 

cookie(放在浏览器)

cookie 是一个非常具体的东西,指的就是浏览器里面能永久存储的一种数据,仅仅是浏览器实现的一种数据存储功能。

cookie由服务器生成,发送给浏览器,浏览器把cookie以kv形式保存到某个目录下的文本文件内,下一次请求同一网站时会把该cookie发送给服务器。由于cookie是存在客户端上的,所以浏览器加入了一些限制确保cookie不会被恶意使用,同时不会占据太多磁盘空间,所以每个域的cookie数量是有限的

session(放在服务器)

session 从字面上讲,就是会话。这个就类似于你和一个人交谈,你怎么知道当前和你交谈的是张三而不是李四呢?对方肯定有某种特征(长相等)表明他就是张三。

session 也是类似的道理,服务器要知道当前发请求给自己的是谁。为了做这种区分,服务器就要给每个客户端分配不同的“身份标识”,然后客户端每次向服务器发请求的时候,都带上这个“身份标识”,服务器就知道这个请求来自于谁了。至于客户端怎么保存这个“身份标识”,可以有很多种方式,对于浏览器客户端,大家都默认采用 cookie 的方式。

服务器使用session把用户的信息临时保存在了服务器上,用户离开网站后session会被销毁。这种用户信息存储方式相对cookie来说更安全,可是session有一个缺陷:如果web服务器做了负载均衡,那么下一个操作请求到了另一台服务器的时候session会丢失。

token

在Web领域基于Token的身份验证随处可见。在大多数使用Web API的互联网公司中,tokens 是多用户下处理认证的最佳方式。

以下几点特性会让你在程序中使用基于Token的身份验证

\1. 无状态、可扩展

\2. 支持移动设备

\3. 跨程序调用

\4. 安全

jwt(json web token)

启动靶场

沉浸式翻译

注意大小写

127.0.0.1:8888/WebGoat

 

 

头部

alg

是说明这个JWT的签名使用的算法的参数,常见值用HS256(默认),HS512等,也可以为None。HS256表示HMAC SHA256。

typ

说明这个token的类型为JWT

payload

 

签名

服务器有一个不会发送给客户端的密码(secret),用头部中指定的算法对头部和声明的内容用此密码进行加密,生成的字符串就是JWT的签名

通信流程

 

在此流程中,可看到用户使用用户名和密码登录,服务器将返回成功的身份验证。服务器创建一个新令牌并将该令牌返回给客户端。当客户端对服务器连续调用时,会在“Authorization”报头中附加新的token。服务器读取令牌并在成功验证后首先验证签名,服务器使用令牌中的信息来识别用户

webgoat

4

修改payload数据,admin修改为true,将加密方式修改为none

加密解密

8

爆破秘钥

hashcat -m 16500 jwt.txt -a 3 -w 3 1.txt

-m 16500 这里的16500对应的就是jwt的token爆破;

-a 3 代表蛮力破解

-w 3 可以理解为高速破解,就是会让桌面进程无响应的那种高速

jwt.txt 是我把题目要求破解的token保存到的文件

pass.txt 密码字典

 

更多推荐

JWA安全

本文发布于:2024-03-08 21:19:18,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1722411.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:JWA

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!