<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Panda&apos;s Blog</title>
    <link>https://www.cnpanda.net/en/</link>
    <description>Security research and technical writing by Panda.</description>
    <language>en</language>
    <lastBuildDate>Wed, 02 Sep 2026 10:46:11 GMT</lastBuildDate>
    <atom:link href="https://www.cnpanda.net/en/feed.xml" rel="self" type="application/rss+xml"/>
    <item>
      <title>After Transformer, What Exactly Is AI Improving?</title>
      <link>https://www.cnpanda.net/en/talksafe/transformer-after-ai-progress.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/talksafe/transformer-after-ai-progress.html</guid>
      <pubDate>Wed, 02 Sep 2026 10:46:11 GMT</pubDate>
      <description>Starting from Transformer&apos;s enduring dominance, this article examines where AI has actually advanced in recent years: scaling, data, training, MoE, FlashAttention, test-time compute, Mamba, and more.</description>
    </item>
    <item>
      <title>Twenty Years of Java Security: Reading the Trend Through Two Decades of Black Hat Talks</title>
      <link>https://www.cnpanda.net/en/sec/java-security-blackhat-2002-2026.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/java-security-blackhat-2002-2026.html</guid>
      <pubDate>Thu, 27 Aug 2026 15:51:05 GMT</pubDate>
      <description>Using representative Black Hat talks from 2002–2026 as a thread, this piece revisits how Java security research moved from the JVM sandbox and client-side exploitation to deserialization, JNDI, middleware, parsing differentials and runtime defense.</description>
    </item>
    <item>
      <title>When Security Research Enters the AI Era</title>
      <link>https://www.cnpanda.net/en/life/1324.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/life/1324.html</guid>
      <pubDate>Tue, 04 Aug 2026 03:06:00 GMT</pubDate>
      <description>Several recent events made me realize just how decisively the security field has entered the AI era. They prompted this essay and some reflection on the future. The first was the shutdown of PSRC. On July 23, PSRC announced that, because of business changes, the platform would cease operations on July 30. The news left me reflective: over the past year, the pace of vulnerability discovery has accelerated dramatically. In the past, one person finding a…</description>
    </item>
    <item>
      <title>React2Shell Analysis</title>
      <link>https://www.cnpanda.net/en/sec/react2shell-cve-2025-55182.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/react2shell-cve-2025-55182.html</guid>
      <pubDate>Mon, 08 Dec 2025 02:22:42 GMT</pubDate>
      <description>A deep analysis of React2Shell (CVE-2025-55182): its root cause in the React Server Components Flight Reply deserializer, prototype-chain path traversal, the RCE gadget chain, and the patch.</description>
    </item>
    <item>
      <title>Behind the Design of ByteCTF&apos;s Guess Cookie Challenge</title>
      <link>https://www.cnpanda.net/en/ctf/1301.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/ctf/1301.html</guid>
      <pubDate>Mon, 28 Oct 2024 05:44:00 GMT</pubDate>
      <description>0x01 Introduction A while ago I created a misc challenge for the ByteCTF Masters competition. It grew out of my recent research into a middleware product, and I found the idea interesting enough to share the challenge-design process here. 0x02 A Small Joke Message-oriented middleware has become a key component of distributed systems and microservice architectures. Common products include ActiveMQ, Kafka, RabbitMQ, and RocketMQ…</description>
    </item>
    <item>
      <title>Common Tricks for Auditing Spring Applications</title>
      <link>https://www.cnpanda.net/en/talksafe/1277.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/talksafe/1277.html</guid>
      <pubDate>Mon, 28 Oct 2024 05:34:00 GMT</pubDate>
      <description>Figure 1 uses MurphySec&apos;s JAR scanner to identify vulnerable components. Figures 2 and 3 cover unusual servlets and services worth checking in web.xml or xxxService.xml. Figure 4 is a shortcut for locating related classes, Figure 5 covers batch decompilation, and Figure 6 shows how to find route lists with keyword searches…</description>
    </item>
    <item>
      <title>MyBatis: From SQL Injection to OGNL Injection</title>
      <link>https://www.cnpanda.net/en/sec/1227.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/1227.html</guid>
      <pubDate>Wed, 01 Mar 2023 02:20:00 GMT</pubDate>
      <description>Dynamic SQL is one of MyBatis&apos;s most powerful features. Constructing SQL manually is painful: spaces must be preserved and the trailing comma after the final column must be removed. Dynamic SQL eliminates that work. MyBatis is generally configured in one of two ways: XML files or annotations…</description>
    </item>
    <item>
      <title>Analyzing Spring Framework RCE from the Ground Up</title>
      <link>https://www.cnpanda.net/en/sec/1196.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/1196.html</guid>
      <pubDate>Sat, 16 Apr 2022 13:43:00 GMT</pubDate>
      <description>First published on Tiaotiaotang: http://tttang.com/archive/1532/ This blog is a backup. 0x01 Preface If asked to assess a CMS, where would you begin? Perhaps with the familiar body of code-auditing knowledge. But if asked to assess the Spring Framework itself, where would you begin? More broadly…</description>
    </item>
    <item>
      <title>From SSRF to RCE: Analyzing the Spring Cloud Gateway RCE Vulnerability</title>
      <link>https://www.cnpanda.net/en/sec/1159.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/1159.html</guid>
      <pubDate>Sat, 05 Mar 2022 17:16:00 GMT</pubDate>
      <description>0x01 Preface On Tuesday, March 1, Spring published its Spring Cloud Gateway CVE report. CVE-2022-22947 was rated Critical. Analyses appeared Wednesday and Thursday, but work and thesis writing delayed my review. I reproduced and analyzed it over the weekend…</description>
    </item>
    <item>
      <title>Vulnerability Analysis of fastjson 1.2.68 and Earlier</title>
      <link>https://www.cnpanda.net/en/sec/1183.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/1183.html</guid>
      <pubDate>Sat, 05 Mar 2022 17:05:25 GMT</pubDate>
      <description>An article written last year but never published, now shared as both WeChat content and personal notes. Preface Since Fastjson 1.2.24&apos;s deserialization vulnerability was disclosed on March 15, 2017, it has been a major research target. Even checkAutoType did not fully stop new vulnerabilities. This article examines one through Xuanwu Lab&apos;s Black Hat talk…</description>
    </item>
    <item>
      <title>A Discussion of Configuration-File RCE</title>
      <link>https://www.cnpanda.net/en/talksafe/1157.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/talksafe/1157.html</guid>
      <pubDate>Wed, 29 Dec 2021 06:38:00 GMT</pubDate>
      <description>Preface A tweet last night attracted considerable attention in the security community. Log4j 2.17.0 has RCE!! Yet the community mostly scoffed: RCE after modifying a configuration file—is that all? So how did configuration-file RCE become fashionable? The story begins…</description>
    </item>
    <item>
      <title>A Discussion of Limited RCE in log4j 1.x and Logback</title>
      <link>https://www.cnpanda.net/en/sec/1131.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/1131.html</guid>
      <pubDate>Sun, 12 Dec 2021 18:57:00 GMT</pubDate>
      <description>0x01 Preface While following up on Log4j 2, I found several interesting details and recorded them here. 0x02 Is Log4j Never Vulnerable to JNDI Injection? First, a question: is Log4j never vulnerable to JNDI injection? No. I found an interesting exchange in a Log4j 2 pull request. Someone argued that Log4j is vulnerable…</description>
    </item>
    <item>
      <title>Analysis of the log4j2 JNDI Injection Vulnerability</title>
      <link>https://www.cnpanda.net/en/sec/1114.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/1114.html</guid>
      <pubDate>Sat, 11 Dec 2021 13:21:06 GMT</pubDate>
      <description>0x01 Preface. December 9, 2021 became a sleepless night when Apache Log4j was found vulnerable to a simple, high-impact RCE. Countless components depend on Log4j2, apart from the risks in applications themselves. A Maven Repository search for projects using log4j-core 2.14…</description>
    </item>
    <item>
      <title>Analyzing Thymeleaf SSTI and Bypassing the Latest Fix</title>
      <link>https://www.cnpanda.net/en/sec/1063.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/1063.html</guid>
      <pubDate>Sat, 20 Nov 2021 03:15:00 GMT</pubDate>
      <description>0x01 Preface Some time ago I finally wrote Principles and Case Study of File Inclusion, which mentioned Thymeleaf SSTI. Yesterday Sanmeng shared a newly discovered Thymeleaf SSTI bypass CVE. Since my project code was still available, I analyzed it. 0x02 Thymeleaf SSTI Thymeleaf…</description>
    </item>
    <item>
      <title>Java Code Auditing for Beginners 06: File Inclusion Vulnerabilities and Real-World Cases</title>
      <link>https://www.cnpanda.net/en/codeaudit/1037.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/codeaudit/1037.html</guid>
      <pubDate>Sat, 13 Nov 2021 06:49:14 GMT</pubDate>
      <description>0x00 Preface. I created this series because online Java code-audit material is usually fragmented and unfriendly to beginners. I am also learning Java auditing, so the series records and summarizes that process. It is intended for readers with basic Java syntax knowledge and will cover…</description>
    </item>
    <item>
      <title>JVM Bytecode Notes: The Class File Structure</title>
      <link>https://www.cnpanda.net/en/talksafe/1023.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/talksafe/1023.html</guid>
      <pubDate>Tue, 28 Sep 2021 01:09:00 GMT</pubDate>
      <description>0x01 Preface Every note in this series is based on Understanding JVM Bytecode in Depth by Zhang Ya and is intended only as a personal study summary. Readers studying Java security or JVM bytecode are strongly encouraged to purchase and read the official book. 0x02 Class-File Structure Java is cross-platform, although the JVM itself is platform-specific. JVM implementations hide those platform differences by compiling source code into platform-independent bytecode, so…</description>
    </item>
    <item>
      <title>My New Book: Java Code Auditing for Beginners</title>
      <link>https://www.cnpanda.net/en/life/995.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/life/995.html</guid>
      <pubDate>Thu, 15 Jul 2021 05:54:00 GMT</pubDate>
      <description>About this book. I finished writing it last December. The seven months from revision to publication were a long and demanding journey. The book is well suited to beginners and expands both the breadth and depth of my Java Code Auditing for Beginners article series—which is also why that series had not been updated for so long. If you want to learn Java code auditing, consider picking up a copy. Purchase link: https://item.jd.…</description>
    </item>
    <item>
      <title>Understanding the Native JDK 8u20 Deserialization Vulnerability Through a Case Study</title>
      <link>https://www.cnpanda.net/en/sec/974.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/974.html</guid>
      <pubDate>Wed, 30 Jun 2021 04:42:00 GMT</pubDate>
      <description>0x01 Preface The native JDK 8u20 deserialization vulnerability is a classic and one of the most complex vulnerabilities I have analyzed. It uses substantial low-level knowledge and assumes familiarity with the deserialization process and serialized-data structure. This article reflects my own understanding; please point out any inaccuracies. 0x02 JDK 8u20 Vulnerability Principles JDK…</description>
    </item>
    <item>
      <title>The Fundamentals of JEP 290</title>
      <link>https://www.cnpanda.net/en/sec/968.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/968.html</guid>
      <pubDate>Fri, 25 Jun 2021 11:49:24 GMT</pubDate>
      <description>JEP 290 0x01 What Is a JEP? JDK Enhancement Proposal, abbreviated JEP, is the process for proposing JDK enhancements. The index has reached JEP 415. This article focuses on JEP 290: what it is, what it does, and known bypass approaches. 0x02 What Is JEP 290? JEP 290 is described as Filter Incoming…</description>
    </item>
    <item>
      <title>A Study of the Deserialization Process</title>
      <link>https://www.cnpanda.net/en/sec/928.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/928.html</guid>
      <pubDate>Sun, 13 Jun 2021 14:48:04 GMT</pubDate>
      <description>0x01 Preface As with the previous article, copy the demo and follow this analysis in a debugger. 0x02 Flow Analysis In Analysis of the Serialization Process, I noted that serialization writes an object to an I/O stream. It usually begins by creating an ObjectOutputStream…</description>
    </item>
    <item>
      <title>Follow My WeChat Official Account</title>
      <link>https://www.cnpanda.net/en/sec/927.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/927.html</guid>
      <pubDate>Sun, 13 Jun 2021 08:48:19 GMT</pubDate>
      <description>Why did I start this official account? Traditional blogs no longer fully meet the needs of mobile readers. People increasingly prefer to use spare moments to read on their phones, which gave me the idea of creating a mobile platform. Blogging has been a habit of mine for nearly ten years, although my earlier writing appeared under another handle. When I was learning, I was deeply grateful to the people who willingly shared their knowledge, so once I became able to share what I had learned, I did not want to hold back…</description>
    </item>
    <item>
      <title>A Study of the Serialization Process</title>
      <link>https://www.cnpanda.net/en/sec/893.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/893.html</guid>
      <pubDate>Sun, 13 Jun 2021 08:16:00 GMT</pubDate>
      <description>0x01 Preface This article is detailed; copy the demo and follow in a debugger. 0x02 Flow Analysis Serialization writes an object to an I/O stream. It usually begins by creating ObjectOutputStream and calling its write…</description>
    </item>
    <item>
      <title>Notes on the Object Serialization Stream Protocol</title>
      <link>https://www.cnpanda.net/en/talksafe/892.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/talksafe/892.html</guid>
      <pubDate>Thu, 10 Jun 2021 15:53:00 GMT</pubDate>
      <description>0. Preface This article mainly translates the Object Serialization Stream Protocol and summarizes the serialization format. 1. Overview The stream format has the following design goals: a compact structure for efficient reading; the ability to use the stream structure and format without detailed knowledge of the stream or invoking class code; and access and manipulation only through the stream…</description>
    </item>
    <item>
      <title>Notes on the JDK 7u21 Deserialization Vulnerability</title>
      <link>https://www.cnpanda.net/en/sec/876.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/876.html</guid>
      <pubDate>Thu, 10 Jun 2021 15:06:00 GMT</pubDate>
      <description>0x01 Preface The construction of the native JDK 7u21 gadget chain is a classic. After studying its structure and underlying ideas, I wrote this article as a set of notes. 0x02 Prerequisites The JDK 7u21 chain uses many fundamental Java concepts, principally Java reflection, dynamic class modification with Javassist, Java static class loading, Java dynamic proxies, and hash collisions. To make the article easier to follow, I will…</description>
    </item>
    <item>
      <title>WeEngine CMS: From SQL Injection to RCE</title>
      <link>https://www.cnpanda.net/en/codeaudit/863.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/codeaudit/863.html</guid>
      <pubDate>Sun, 30 May 2021 16:59:00 GMT</pubDate>
      <description>0x01 Preface. WeEngine CMS quietly fixed an SQL injection vulnerability in version 2.0. No analysis of the injection point could be found online, so this article examines its exploitation. 0x02 Affected versions. Testing shows the vulnerability in v1.5.2 from the official GitLee repository and a fix in 2.0, so at least v1.5.2 is affected…</description>
    </item>
    <item>
      <title>Analyzing Remote Code Execution in Qishi CMS</title>
      <link>https://www.cnpanda.net/en/codeaudit/827.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/codeaudit/827.html</guid>
      <pubDate>Wed, 18 Nov 2020 08:29:00 GMT</pubDate>
      <description>0x00 Preface. Xu recently told me Qishi CMS had patched a problem in the global assign_resume_tpl function and asked whether it was exploitable. The official advisory points to /Application/Common/Controller/BaseController…</description>
    </item>
    <item>
      <title>Notes on PHP&apos;s register_argc_argv Configuration</title>
      <link>https://www.cnpanda.net/en/sec/787.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/sec/787.html</guid>
      <pubDate>Mon, 19 Oct 2020 02:18:00 GMT</pubDate>
      <description>0x01 Preface During a recent Dianfeng Geek CTF, I encountered a web challenge hinting at register_argc_argv but could not solve it. I later asked yzddmr6 and searched Chinese security research, finding little. This PHP setting seemed worth documenting. My practical experience is limited, so additions are welcome…</description>
    </item>
    <item>
      <title>Getting a Shell from a Low-Privilege FastAdmin Admin Account</title>
      <link>https://www.cnpanda.net/en/codeaudit/825.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/codeaudit/825.html</guid>
      <pubDate>Thu, 15 Oct 2020 02:36:00 GMT</pubDate>
      <description>0x01 Preface. Xu recently pointed out a path from a low-privilege FastAdmin backend account to a shell. This article analyzes it. Affected versions: V1.0.0.20191212 beta and earlier. 0x02 Authorization. The main difficulty is that low-privilege users cannot access shell-related features…</description>
    </item>
    <item>
      <title>Analyzing a Front-End Shell Upload Vulnerability in the Latest FastAdmin</title>
      <link>https://www.cnpanda.net/en/codeaudit/777.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/codeaudit/777.html</guid>
      <pubDate>Sun, 20 Sep 2020 08:51:00 GMT</pubDate>
      <description>Affected version: V1.0.0.20200506 beta, the latest release. Requirement: the member center must be enabled in /application/config.php. Vulnerability analysis: lines 58–67 of /application/index/User.php. user_request_empty is a developer hook and can be ignored; the important part is return $thi…</description>
    </item>
    <item>
      <title>Java Code Auditing for Beginners 05: RCE Vulnerabilities and Real-World Cases</title>
      <link>https://www.cnpanda.net/en/codeaudit/759.html</link>
      <guid isPermaLink="true">https://www.cnpanda.net/en/codeaudit/759.html</guid>
      <pubDate>Wed, 15 Jul 2020 02:43:00 GMT</pubDate>
      <description>0x00 Preface. I created this series because online Java code-audit material is usually fragmented and unfriendly to beginners. I am also learning Java auditing, so the series records and summarizes that process. It is intended for readers with basic Java syntax knowledge and will cover…</description>
    </item>
  </channel>
</rss>
