码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 如何利用CodeQL挖掘CVE-2020-10199


    前言

    挖掘Java漏洞时候存在一个痛点在已知漏洞点的情况下,如何找到可控点,以及确定一条具体的数据流.

    前几天看到@Alvaro Muñoz 利用codeql挖掘到[CVE-2020-10199]Nexus Repository Manager远程代码执行漏洞.于是就对codeql产生强烈的好奇心,怼了几天codeql语法和CVE案例。抠出挖掘该CVE的Ql代码

    Codeql

    对Codeql具体介绍可以参考:https://help.semmle.com/

    使用codeql能够很明确搜索出方法调用的数据流, QL代码编写思路相当于在一个代码数据库中利用编写的逻辑搜索出可能的调用点。重点是确定Souce和Sink搜索逻辑.

    漏洞原理简要分析

    该漏洞是由于未做过滤造成表达式注入,作者确定漏洞点执行函数 buildConstraintViolationWithTemplate, 其该方法中 bean.getMessage() 返回结果 message 并未使用 stripJavaEl 方法过滤造成表达式注入

    最后调用 org.hibernate.validator.internal.engine.messageinterpolation#interpolate ,执行插入操作并解析恶意字符串,造成表达式注入.

  • 相关阅读:
    微信小程序项目实例停车场车辆登记+后台
    VScode(Python)使用ssh远程开发(Linux系统树莓派)时,配置falke8和yapf总结避坑!最详细,一步到位!
    智源社区AI周刊No.108:Meta发布玩外交游戏的Cicero,登Science;Neuralink实现猴子意念打字...
    linux基础以及APUE学习总结
    Revel框架基本使用实践教程
    【附源码】Python计算机毕业设计社区住户信息管理系统
    MySQL InnoDB 是怎么使用 B+ 树存数据的?
    Java操作Influxdb2.x
    Leecode刷题 1342. 将数字变成 0 的操作次数
    缓存一致性
  • 原文地址:https://blog.csdn.net/band_mmbx/article/details/126406631
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号