L

LoRexxar's Blog | 信息技术分享

LoRexxar's Blog

Ghost Bits,Java WAF之殇?

<p>在前两天的BlacksetHat Asia 2026上,@浅蓝和@1ue分享一个非常有趣的议题,Java中的GhostBits漏洞</p> <ul> <li><a href="https://i.blackhat.com/Asia-26/Presentations/Asia-26-Bai-Cast-Attack-Ghost-Bits-4.23.pdf" target="_blank" rel="noopener">https://i.blackhat.com/Asia-26/Presentations/Asia-26-Bai-Cast-Attack-Ghost-Bits-4.23.pdf</a></li> </ul> <p>探究深度非常深,影响范围非常之广,内容非常有意思</p>

2026/4/29
阅读更多

AI.Re.(3) - AI到底变了什么?为什么突然井喷?

<p>继续接着之前的内容来写,从通用大模型诞生到后续的几年里,除了大模型本身的能力一直在提升,使用大模型的方法论也在不停的变化。</p> <p>这篇文章讲到的这些概念不是第一天诞生,我相信很多朋友也实打实的在使用这些方法论,那这篇文章让我们重新回顾一下这些概念,也伴随的感受一些,<strong>为什么这些方法论使得AI突然变得强力可靠?为什么在2025年年底I应用大量井喷?</strong></p>

2026/4/7
阅读更多

AI.Re.(2) - OpenClaw到底为什么爆火?

<p>上篇博客中,我分享了最近关于AI的见闻和感受。本来按照流程,我应该用几篇博客的时间介绍一下最近接触和学习到的东西。</p> <p><strong>但最主要的是,感觉如果不先聊聊OpenClaw,这东西很可能就要过气了。</strong></p>

2026/3/11
阅读更多

AI.Re.(1) - AI变革的时代来了吗?

<p>许久没有起笔写博客和公众号了,忽然一下起笔,似乎一下子找不到下笔的方式和由头,其实我想恢复写博客的习惯很久了,最近几年博客写的很少,原因有很多,一个这几年工作内容涉及到的公司内容比较多,不好去密,另一个是人真的是很懒惰的,放下笔很容易但是提起笔需要很多理由。</p> <p>今天这篇博客,没有技术,只想和大家分享分享最近的想法。</p>

2026/3/10
阅读更多

不容错过的2025年度漏洞:React2Shell(CVE-2025-55182)分析

<p>2025年12月3日,时隔4年,安全圈又一个通杀环境的核弹漏洞被公开,CVSS评分10.0,影响范围React 19+全版本,Next.js 15/16,无条件默认环境RCE漏洞,史称React2shell。</p> <p>该漏洞由安全研究员 Lachlan Davidson 于 2025 年 11 月 29 日发现,在3号被公开</p> <ul> <li><a href="https://www.tenable.com/blog/react2shell-cve-2025-55182-react-server-components-rce" target="_blank" rel="noopener">https://www.tenable.com/blog/react2shell-cve-2025-55182-react-server-components-rce</a></li> </ul> <p>最早的版本大家讨论的结论是,只有使用rsc作为后端的环境才会受到漏洞的利用,主要原因还是受到了最早版本poc的影响,也就是ejpir专门构造的漏洞环境和poc。</p> <p>但是很快maple3142在12月5日发布了真正的poc</p> <ul> <li><a href="https://gist.github.com/maple3142/48bc9393f45e068cf8c90ab865c0f5f3" target="_blank" rel="noopener">https://gist.github.com/maple3142/48bc9393f45e068cf8c90ab865c0f5f3</a></li> </ul> <p>在更快的时间内,next.js默认环境全版本通杀直接影响了以dify为代表的许多平台,一下子引爆了漏洞的影响范围,漏洞正式进入2阶段,大范围利用以及企业内部自查阶段。</p>

2025/12/31
阅读更多

PHP CGI Windows平台远程代码执行漏洞(CVE-2024-4577)分析与复现

<p>在2024.6.6今天,@Orange在他的博客发布了他即将在2024年8月Black Hat USA公开的议题《<strong>Confusion Attacks: Exploiting Hidden Semantic Ambiguity in Apache HTTP Server!</strong>》</p> <ul> <li><a href="https://www.blackhat.com/us-24/briefings/schedule/index.html#confusion-attacks-exploiting-hidden-semantic-ambiguity-in-apache-http-server-40227" target="_blank" rel="noopener">https://www.blackhat.com/us-24/briefings/schedule/index.html#confusion-attacks-exploiting-hidden-semantic-ambiguity-in-apache-http-server-40227</a></li> </ul> <p>伴随着议题的发布,今天在DEVCORE的官方博客发布了一个漏洞通报,也就是存在于<strong>windows特殊场景下的PHP CGI远程代码执行漏洞</strong></p> <ul> <li><a href="https://devco.re/blog/2024/06/06/security-alert-cve-2024-4577-php-cgi-argument-injection-vulnerability/" target="_blank" rel="noopener">https://devco.re/blog/2024/06/06/security-alert-cve-2024-4577-php-cgi-argument-injection-vulnerability/</a></li> </ul> <p>接下来看看漏洞的详情</p>

2024/6/11
阅读更多

人与代码的桥梁-聊聊SAST

<p>自从人类发明了工具开始,人类就在不断为探索如何更方便快捷的做任何事情,在科技发展的过程中,人类不断地试错,不断地思考,于是才有了<strong>现代伟大的科技时代。</strong></p> <p>在安全领域里,每个安全研究人员在研究的过程中,也同样的不断地探索着如何能够自动化的解决各个领域的安全问题。其中<strong>自动化代码审计</strong>就是<strong>安全自动化</strong>绕不过去的坎。</p> <p>而SAST作为<strong>自动化代码分析</strong>的一种,有着其特有的定位以及作用,这篇文章我们就来聊聊静态分析的一些发展历程和思路。</p> <p>本篇文章其实在2年前曾经写过一次,在2年后的今天处于偶然的契机正好要写一篇相关的文章,所以<strong>重写了这部分内容</strong>,其中修正了不少在这期间内探索获取的新理念和思路,希望有价值。</p>

2023/12/18
阅读更多

Joern In RealWorld (3) - 致远OA A8 SSRF2RCE

<p><strong>致远OA是国内最有名的OA系统之一</strong>,这个OA封闭商业售卖再加上纷繁复杂的版本号加持下,致远OA拥有大量无法准确判断的版本。</p> <p>这篇文章的漏洞源于下面这篇文章,文章中提到<strong>该漏洞影响A8, A8+, A6等多个版本</strong>,但很多版本我都找不到对应的源码,光A8就有一万个版本,下面我们尽可能的复现漏洞和探索Joern的可能性</p> <ul> <li><a href="https://mp.weixin.qq.com/s/QWHHdYxUew_yhlnAQUvmRA" target="_blank" rel="noopener">https://mp.weixin.qq.com/s/QWHHdYxUew_yhlnAQUvmRA</a></li> </ul>

2023/11/21
阅读更多

Joern In RealWorld (2) - Jumpserver随机数种子泄露导致账户劫持漏洞(CVE-2023-42820)

<p>Jumpserver是一个开源的django架构的堡垒机系统,由<strong>lawliet &amp; zhiniang peng(@edwardzpeng) with Sangfor</strong>在上个月报送了这个漏洞</p> <ul> <li><a href="https://github.com/jumpserver/jumpserver/security/advisories/GHSA-7prv-g565-82qp" target="_blank" rel="noopener">https://github.com/jumpserver/jumpserver/security/advisories/GHSA-7prv-g565-82qp</a></li> </ul> <p>漏洞原理其实比较神奇,一个常用的第三方组件库<a href="https://github.com/mbi/django-simple-captcha" target="_blank" rel="noopener">django-simple-captcha</a>有<strong>泄露随机数种子</strong>的问题,再配合Jumpserver<strong>使用了错误的随机数方案</strong>导致了最终的漏洞。</p>

2023/10/26
阅读更多

深入浅出Joern(四)不常用语法大全

<p>在深入了解Joern的源码以及设计的时候发现Joern其实实现了很多不常用语法,很多文档中没提到的东西,其实都有比较简洁实用的方式,但也从源码的设计中发现,其实Joern的设计理念也有很多问题,这个我们以后再写到。</p> <p>本篇内容可以结合<a href="https://cpg.joern.io/食用" target="_blank" rel="noopener">https://cpg.joern.io/食用</a></p>

2023/10/20
阅读更多

Joern In RealWorld (1) - Acutators + CVE-2022-21724

<p>这个系列会记录我用Joern复现真实漏洞的一些过程,同样也是对Joern的深入探索。</p> <p>这里我选用<strong>Java-sec-code的范例代码</strong>做第一部分,这篇文章记录了两个比较经典的漏洞</p> <ul> <li><strong>Springboot Acutators导致命令执行</strong></li> <li><strong>postgreSQL jdbc反序列化漏洞(CVE-2022-21724)</strong></li> </ul> <p>Joern分析Java代码可以选择用代码文件夹也可以选择直接分析jar包</p> <figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">importCode(&quot;..&#x2F;..&#x2F;java-sec-code&#x2F;target&#x2F;java-sec-code-1.0.0.jar&quot;)</span><br></pre></td></tr></table></figure>

2023/8/31
阅读更多

深入浅出Joern(三)Joern和Neo4j常用语法大全

<p>前两篇文章主要讲了Joern相关技术的设计原理,以及CPG的实际表现</p> <ul> <li><a href="https://lorexxar.cn/2023/08/21/joern-and-cpg/">https://lorexxar.cn/2023/08/21/joern-and-cpg/</a></li> <li><a href="https://lorexxar.cn/2023/08/22/joern2/">https://lorexxar.cn/2023/08/22/joern2/</a></li> </ul> <p>在研究Joern和Neo4j的过程中,我遇到了一个相当大的问题,就是由于我对<strong>OverflowDB包括scala和cypher语言</strong>都不熟。Joern和Neo4j分别支持这几种冷门语言,而相应的文档其实没有解决我的问题。</p> <p>所以在继续研究Joern之前,先花时间简单记录<strong>一些Joern和Neo4j实用的语法和范例</strong>,给自己当个字典随时可以查阅。</p>

2023/8/24
阅读更多

深入浅出Joern(二)CPG与图数据库

<p>在上篇文章里,我们从Joern入手大致介绍了<strong>CPG(Code Property Graph)</strong>的设计理念和简单逻辑</p> <ul> <li><a href="https://lorexxar.cn/2023/08/21/joern-and-cpg/">https://lorexxar.cn/2023/08/21/joern-and-cpg/</a></li> </ul> <p>但实际上来说,如果想要更深入的了解Joern,<strong>CPG和图数据库</strong>是绕不开的一个话题。CPG作为一种<strong>代码属性图</strong>,就必须寻找一种图数据库作为载体,就像我们常用的数据和SQL数据库的关系一样。</p> <p>旧版本的Joern使用的<strong>Gremlin</strong>,但后来的开发中换成了<strong>OverflowDB</strong>,在joern中也完全支持使用<strong>OverflowDB的查询语法</strong>。</p> <ul> <li><a href="https://github.com/ShiftLeftSecurity/overflowdb" target="_blank" rel="noopener">https://github.com/ShiftLeftSecurity/overflowdb</a></li> </ul> <p>但属性图本身没有什么特异性,比较常见的比如<strong>Neo4J,OrientDB</strong>或者<strong>JanesGraph</strong>都支持CPG的表现形式。</p> <p>但,在这之前,我们首先需要知道,<strong>为什么是图?</strong></p>

2023/8/22
阅读更多

深入浅出Joern(一)Joern与CPG是什么?

<p>从人们开始探索代码扫描这件事情开始,市面上就在不断地诞生着各种各样的工具,经过了几年的演变以及发展,对于<strong>白盒代码扫描</strong>这件事情来说,大家的观念也在逐渐趋同。</p> <p>无论是基于<strong>IR(Intermediate Representation)</strong>、<strong>AST(abstract syntax trees)</strong>、<strong>CFG(control flow graphs)</strong>、<strong>PFG(program dependence graphs)</strong>,又或者是其他的什么中间态。白盒代码扫描工具都在这个基础上做<strong>模拟执行、污点传播</strong>等等方案来分析挖掘漏洞。</p> <p>而随着<strong>CodeQL的概念</strong>逐渐被大家接受之后,现在的代码扫描工具越来越趋近于将<strong>底层和上层拆解开来</strong>,由底层的引擎将代码统一化处理,然后使用者在上层通过编写规则或者语句就可以。主流的<strong>CodeQL、Checkmarx</strong>其实都使用了类似的方案。今天要说的<strong>Joern</strong>也是如此。</p> <p><strong>今天介绍的Joern有什么特殊的呢?</strong></p> <p>首先CodeQL本身不开源只能使用,偏偏微软还做了商业化限制,以微软喜欢秋后算账的风格来讲,实在无法确定深入研究CodeQL是否值得。</p> <p>除此之外,市面上的很多白盒扫描工具其实是<strong>非静态的</strong>,扫描的时候不但需要配置复杂的运行环境,而且<strong>本身可能依赖编译过程</strong>,无论是自己使用还是商业化这都非常不实用。</p> <p>个人认为白盒工具有着几个很重要的点</p> <ul> <li><strong>静态扫描</strong>,<strong>静态扫描的优势和便利程度</strong>才是白盒比较优势的一环,毕竟白盒不是灰盒,如果对编译环境和运行环境有依赖那为什么不使用更准确的灰盒</li> <li><strong>扫描速度</strong>,虽然这点是很多商业化白盒软件的通病,但无论在哪家公司的DevSecOps中,最终目标肯定是把安全检测加载上线前,那么无论是1分钟、3分钟还是5分钟,<strong>扫描速度会是第一优先级</strong>,比如CheckMarx动辄几小时的扫描肯定是不现实的</li> <li><strong>可diy性</strong>,当然对于大部分人来说这点其实并不是很重要,但能对引擎进行深入改造会是优化开发非常重要的一点,<strong>joern是开源的</strong>,在这方面他有很大的优势</li> <li><strong>可拓展性</strong>,市面上大部分的白盒扫描工具动辄支持几十种语言,比如说snoarqube这种,但实际上大部分拓展语言只支持非常简单的正则拓展,<strong>我一直觉得现代白盒软件很重要的一条路就是走通用性</strong>,这也是比较有名的一些白盒工具都选择的路,在白盒扫描过程中会刻意将统一结构拆分出去再做分析扫描。</li> </ul> <p>今天介绍的joern的其实就是这类工具的一员,他最大的特点其实就是开源。</p>

2023/8/21
阅读更多

打造自己的AIGC应用(一)入门篇

<p>其实细数AI的发展历程非常之久,而让AI的应用一下子出现在人们眼前的其实就是<strong>ChatGPT的出现</strong>,这意味着AIGC应用已经从概念为王变的非常实用了。伴随着ChatGPT的出现,大量的开源大模型也如雨后春笋一样出现。就现在而言,<strong>打造一个自己的AIGC应用已经非常简单了</strong>。</p>

2023/7/19
阅读更多

赛博偶像速成指南(三)- Midjourney

<p>之前的几篇关于AI生成图片的文章讲的都是<strong>stable diffusion</strong>,虽然SD<strong>出现的更早而且开源免费</strong>,但其实在设计圈使用更广泛的是<strong>Midjourney</strong>,<strong>Midjourney最大的优点就是使用的便利性,任何一个不懂技术的设计都可以通Midjourney来快速完成设计,而且Midjourney的底层基础模型成熟度相当高,生成的图质量都很高。</strong></p>

2023/6/21
阅读更多

赛博偶像速成指南(二)- SD进阶篇

<p>在第一篇关于AI绘图的文章中,我主要介绍了stable diffusion的各种使用方法</p> <ul> <li><a href="https://lorexxar.cn/2023/02/21/cyber-girl/">https://lorexxar.cn/2023/02/21/cyber-girl/</a></li> </ul> <p><strong>在midjounry收费之后,除非你对AI绘图这个操作本身有强需求,否则在免费自建的stable diffusion上做拓展就成了现在最好的解决方案。</strong></p> <p>这篇文章就聊一些stable diffusion的一些进阶操作和关键点。其中有不少还是很有意思的。</p>

2023/6/2
阅读更多

从0到1的ChatGPT - 进阶篇(五)- Embeddings

<p>在前面的文章中,无论是各种prompt技巧,又或者是对话技巧,更或者是各种数据集训练,都逃不开两个致命的问题。</p> <p><strong>1、ChatGPT只能处理文字</strong></p> <p><strong>2、无论是上下文参考,还是单条对话都有token限制</strong></p> <p>所以在ChatGPT中,很多应用方向遇到的第一个问题就是如何把问题<strong>用文字的方式描述</strong>出来,其中<strong>最典型的场景就是代码分析。</strong></p> <p>所以ChatGPT也鼓励使用<strong>Embeddings来做类似搜索、分类或者异常检测的分析</strong>,这篇文章就讲讲这个。</p>

2023/5/25
阅读更多

从0到1的ChatGPT - 进阶篇(四)- 训练自己的ChatGPT

<p>在之前的文章中曾经提到过,ChatGPT其实是不接受来自互联网的知识的,他的所有内容都是来自于至少3年前各种来源的知识库。<strong>但这并不意味着ChatGPT没有能力学习你的回答</strong>。</p> <p>首先ChatGPT一般会根据你和他的问答内容进行一定的上下文参考,其次,由于ChatGPT学习的内容之庞大,你通过一种直白的方式问不到的答案不一定是他不会,有可能是你问的方式不对。</p> <p>在ChatGPT的官方文档中,<strong>他首先鼓励你通过提供多个示例来让ChatGPT更准确的寻找答案,他把这个方案称之为**</strong>“few-shot learning.”**</p> <p>除此之外,当然他也允许你通过<strong>微调功能来对ChatGPT进行一定的训练</strong>,来获得一个更符合自己要求的ChatGPT,当然,这个功能是收费的。</p> <p><img src="https://lorexxar-blog.oss-cn-shanghai.aliyuncs.com/blog/202305191612484.png" alt="img"></p> <p>但Fine-tuning这个功能目前只能应用于<strong>GPT3的基础模型</strong>,就目前而言,<strong>这个功能其实还不如很多市面上的其他大模型,openai并没有给出特别好的自定义方案给大家。但这篇文章还是先聊聊这个。</strong></p>

2023/5/19
阅读更多

看上去不起眼的微信机器人以及公众号爬虫

<p>互联网发展零零散散都要20多年了,技术发展的重心也一直在演变。今天这篇文章很特别,起因是最近有一些关于微信机器人以及公众号爬虫的需求,本以为这种老透了需求其实现在根本不需要花什么时间精力去搞,结果没想到这个东西在过去的十几年里经过了很多次变化,于是决定记录下这篇文章,一方面是留个技术存档,另一方面也是想看看10年之前的技术相比现在和10年之后发生过又或者会发生什么的变化?</p>

2023/5/8
阅读更多