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

鄂州网站建设公司网站建设与案例管理的心得体会

鄂州网站建设公司,网站建设与案例管理的心得体会,什么样的网站需要icp经营性备案,他达拉非的副作用和危害01 漏洞背景 发现该漏洞的起因是在分析 CVE-2021-30181 的脚本注入补丁的时候#xff0c;意外发现了几个已被修复的 yaml 反序列化漏洞#xff0c;还以为是未公开的Nday#xff0c;查询后发现其实对应的是 CVE-2021-30180 漏洞的修复代码。通过查看补丁可以知道#xff0c…01 漏洞背景 发现该漏洞的起因是在分析 CVE-2021-30181 的脚本注入补丁的时候意外发现了几个已被修复的 yaml 反序列化漏洞还以为是未公开的Nday查询后发现其实对应的是 CVE-2021-30180 漏洞的修复代码。通过查看补丁可以知道Router 模块中所有yaml.load的调用中都使用了SafeConstructor白名单过滤无法正常利用。 “关于本文中出现的 SnakeYaml 反序列化相关知识可以参考公众号之前发送的推文——《Java SnakeYaml反序列化分析》”。 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7FScAdFj-1690358271307)(https://image.3001.net/images/20220415/1649992906_6258e4caa0ed5214712f1.png!small?1649992909028)] 在代码中搜索yaml.load的调用发现还有另外一个模块存在调用并且没有使用SafeConstructor等修复措施漏洞代码位置如下所示public class MigrationRule {private static final String DUBBO_SERVICEDISCOVERY_MIGRATION_KEY “dubbo.application.service-discovery.migration”;public static final String DUBBO_SERVICEDISCOVERY_MIGRATION_GROUP “MIGRATION”;public static final String RULE_KEY ApplicationModel.getName() “.migration”;private static DynamicConfiguration configuration null;private String key;private MigrationStep step;…public static MigrationRule parse(String rawRule) {if (null configuration) {return getMigrationRule((String)null);} else if (!StringUtils.isBlank(rawRule) !“INIT”.equals(rawRule)) {Constructor constructor new Constructor(MigrationRule.class);Yaml yaml new Yaml(constructor);return (MigrationRule)yaml.load(rawRule);} else {String step (String)configuration.getInternalProperty(“dubbo.application.service-discovery.migration”);return getMigrationRule(step);}}…} 因此CVE-2021-30180的 PoC 也是可以在这里进行利用的具体的反序列化利用链 Github 安全实验室已公布感兴趣的同学可以自行参照其改造 CVE-2021-36162 漏洞的利用链。 ##02 漏洞触发 有了 yaml 反序列化利用链接下来就是看看如何触发这个漏洞。参照之前的漏洞触发方式需要通过在 ZooKeeper下文简写为 ZK 上增加节点存入恶意数据来完成触发因此有两个问题需要解决 1. 在 ZK 哪个节点中添加恶意 yaml 数据 2. 如何让消费者读取并解析这个 yaml 数据 问题一 通过搜索 Migation 功能可以找到下面的文档Dubbo 利用该功能来控制消费者执行不同的选址策略根据内容可以大致确定可以通过全局的配置中心 ZK 来控制恶意的数据。 正常的运行消费者和服务端并进行抓包可以发现其中包含与 migration 相关的 ZK Path尝试在其中创建相关节点并在下列路径中插入任意数据 问题二 完成任意数据的插入以后再次运行消费者可以发现有如下 解析异常的报错信息 证明插入的数据已经生效成功进入到了漏洞代码当中。 尝试将构造好的 PoC 插入到上述的路径当中这里会发现由于 PoC 中有很多的空格、特殊符号之类的字符存在直接通过 ZKCli.sh 插入 PoC 会出现各种问题导致漏洞无法正常触发因此需要通过 Java 调用第三方包的方式来向 ZK 中添加数据具体代码如下所示 • 使用下列代码插入恶意 Yaml 数据// 在看到 github 官方插入代码前自行实现的插入逻辑public class RegisterYaml {public static void main(String[] args) throws Exception {String path “/dubbo/config/MIGRATION/consumer-of-helloworld-app.migration”;String poc “…”;RetryPolicy retryPolicy new ExponentialBackoffRetry(1000,3);CuratorFramework client CuratorFrameworkFactory.newClient(“127.0.0.1:2181”, retryPolicy);client.start();Stat stat client.checkExists().forPath(path);if (stat ! null) {client.delete().forPath(path);}client.create().forPath(path, poc.getBytes());}} 准备好漏洞触发所需的 SPI 配置文件以及待执行的 Class 字节码文件即可具体的文件目录结构如下所示├── META-INF│ └── services│ └── javax.script.ScriptEngineFactory└── cc└── m01n└── SnakeYaml└── AwesomeScriptEngineFactory.class 在 META-INF 同级目录下使用 Python 启动 HTTP Server。 • python3 -m http.server 8000 先启动服务端代码再运行消费者代码即可触发漏洞 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6uUpwYcf-1690358271309)(https://image.3001.net/images/20220415/1649993058_6258e562e93d68aeeff06.png!small?1649993060762)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CXiC7wLf-1690358271309)(https://image.3001.net/images/20220415/1649993066_6258e56a40b553f9e1629.png!small?1649993068623)] ##03 漏洞分析 在MigrationRuleListener 类中打下断点其中会调用 this.configuration.getConfig 从 ZK 中获取 yaml 数据到rawRule属性中可以看到取出来的就是我们写入的恶意 yaml 数据。 继续跟进发现MigrationRuleListener实例是通过自定义的 SPI ExtensionLoader#createExtension 创建完成。 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zdwBAnWl-1690358271310)(https://image.3001.net/images/20220415/1649993089_6258e58188c3902dfb023.png!small?1649993091407)] 后面会对MigrationRuleListener实例调用onRefer方法触发到后续的 yaml 数据解析操作。 进去断点跟进可以看到rawRule中的 yaml 数据会被传入到 yaml.load 方法中导致反序列化漏洞。 ##04 漏洞修复 该漏洞在 2.7.13 版本完成了修复修复思路 CVE-2021-30180 方式一致采用了SafeConstructor进行修复具体修复补丁如下所示 https://github.com/apache/dubbo/commit/bfa4b3bb6660d404c0715f54f8743dda45b46909 b3bb6660d404c0715f54f8743dda45b46909 [外链图片转存中…(img-NbK0tKMS-1690358271310)] 网络安全工程师企业级学习路线 这时候你当然需要一份系统性的学习路线 如图片过大被平台压缩导致看不清的话可以在文末下载无偿的大家也可以一起学习交流一下。 一些我收集的网络安全自学入门书籍 一些我白嫖到的不错的视频教程 上述资料【点下方卡片】就可以领取了无偿分享
http://www.dnsts.com.cn/news/87581.html

相关文章:

  • 在线教育网站开发简述建设网站的基本流程
  • 网科创想网站管理做博客网站
  • 廊坊企业做网站做画册的网站
  • 网站建设方案企业电子商务网站建设方案目录
  • 网站如何制作网站建设购买
  • 河北省住房及城乡建设部网站宣城建设网站
  • 云主机 怎么做网站坪山做网站公司
  • 怎么做优惠网站昆明参差网站
  • 网站建设策划书网站发布与推广sinaapp wordpress 固定链接
  • 上海网站如何制作单页网站有哪些
  • 广州市官网网站建设报价百度网盘官网网页版
  • 做电影网站哪个系统好外贸公司网站
  • 物业公司名字免费起名大全系统优化工具是什么软件
  • 聊城网站托管sql可以做网站吗
  • 零基础学习做网站wordpress 添加文章
  • 园区网互联及网站建设怎样做网络推广渠道
  • 网站优化图片链接怎么做网站备案域名证书
  • wordpress创建多站点如何在拼多多开网店
  • 贵州建筑网站谷歌收录提交入口
  • 免费做电子章网站网站空间选择的主要原则有哪些
  • 什么网站做h5没有广告江西省赣州市地图
  • 新乡seo网站推广工具人工智能和网站开发
  • cctv军事报道百度seo优化规则
  • 赤峰市做网站深圳注册公司代理简介
  • 网站紧急维护宁波网站建设优化技术
  • 泉州效率网络网站建设网站角色权限
  • 太原专业做网站企业所得税如何征收
  • 申请域名建立网站巢湖路桥建设集团有限公司网站
  • 专业做衬衫哪个网站专业网站建设联系电话
  • 深圳有什么好的企业网站嵌入式软件开发基础实训总结