Skip to content
Agentmart
Submit a tool

xpath-injection-testing

XPath/XQuery注入深度攻防专业技能:认证绕过、盲注高效提取(二分/字符集二分/位运算/超时外带/OAST)、任意节点读取完整攻击链、XPath 1.0/2.0/3.1差异、XQuery注入面(BaseX/eXist/MarkLogic)、XML安全联动(XXE/XInclude/XSLT…

Skill by langbyyi

IndexedApache-2.0★ 131
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/langbyyi-xpath-injection-testing

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

XPath/XQuery注入深度攻防专业技能:认证绕过、盲注高效提取(二分/字符集二分/位运算/超时外带/OAST)、任意节点读取完整攻击链、XPath 1.0/2.0/3.1差异、XQuery注入面(BaseX/eXist/MarkLogic)、XML安全联动(XXE/XInclude/XSLT RCE)、现代语言库差异(Python lxml/Java XPathFactory/PHP DOMXPath/.NET XPathNavigator)、WAF绕过、SAML/SSO认证滥用(XSW签名包装)、信息泄露→敏感数据提取攻击链(CVE-2026-53582/CVE-2026-44962)、AI大模型辅助攻防

Use cases: testing, security

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/xpath-injection-testing

What's inside

Skill name
xpath-injection-testing
Description
XPath/XQuery注入深度攻防专业技能:认证绕过、盲注高效提取(二分/字符集二分/位运算/超时外带/OAST)、任意节点读取完整攻击链、XPath 1.0/2.0/3.1差异、XQuery注入面(BaseX/eXist/MarkLogic)、XML安全联动(XXE/XInclude/XSLT RCE)、现代语言库差异(Python lxml/Java XPathFactory/PHP DOMXPath/.NET XPathNavigator)、WAF绕过、SAML/SSO认证滥用(XSW签名包装)、信息泄露→敏感数据提取攻击链(CVE-2026-53582/CVE-2026-44962)、AI大模型辅助攻防
License
Apache-2.0
Metadata
version: 3.0.0
Instructions
846 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Agent Skills spec issues

  • body: 846 lines (spec recommends under 500)

Files (1)

  • SKILL.md

SKILL.md (first lines)

# XPath/XQuery注入深度攻防技能

> **AI LOAD INSTRUCTION**: XPath/XQuery 注入深度测试(v3.0 深攻防版)。覆盖认证绕过、高效盲注提取(二分/字符集二分/位运算/超时外带/OAST)、XPath 1.0/2.0/3.1 与 XQuery 注入面差异、XSLT RCE 联动、SAML XSW 签名包装滥用及现代语言库差异。基础注入语法按已知前提,聚焦高阶提取、绕过与联动利用链。

## 概述

XPath注入(CWE-643)与SQL注入同源:应用将用户输入直接拼接进XPath表达式,攻击者通过注入XPath语法修改查询逻辑,导致认证绕过、越权读取XML文档任意节点。XPath是W3C标准语言、无方言差异、无权限模型——一旦注入成功即可读取整个XML文档(无GRANT/REVOKE),危害面远超SQL注入。XPath 2.0/3.1与XQuery(CWE-652)支持文件读取、集合访问、高阶函数,原生XML数据库(BaseX/eXist/MarkLogic)风险更高;叠加XSLT可实现服务器端RCE。本技能系统化覆盖**注入点发现→认证绕过→结构枚举→盲注高效提取→任意节点读取→SAML/SSO滥用→XML联动(XXE/XInclude/XSLT)→WAF绕过→AI辅助**完整攻防链路,并纳入2025-2026年最新实战案例(CVE-2026-44962 Plesk、CVE-2026-53582 OPNsense、CVE-2026-49289 simplesamlphp等)。

### 核心概念
- `//user[username='INPUT' and password='INPUT']`:XPath注入的典型脆弱形态——字符串拼接
- 注入本质:将"数据"提升为"代码",闭合字符串定界符后改写表达式结构
- 永真条件(Tautology):`' or '1'='1` 使谓词恒真,实现认证绕过
- 盲注(Blind XPath):无回显时通过布尔差异/时间差异逐字符推断数据
- XPath版本:1.0(最广泛,无参数化标准机制)→ 2.0(类型系统+doc()文件读取)→ 3.0/3.1(maps/arrays/高阶函数/JSON)
- XQuery:XPath超集,可执行FLWOR循环、外部变量绑定,是原生XML数据库的查询语言
- XSLT:用户可控样式表时可触发扩展函数RCE

### 与SQL注入的核心差异(决定打法)
| 维度 | SQL注入 | XPath注入 |
|------|--------|----------|
| 权限模型 | 有用户/GRANT/REVOKE隔离 | **无权限模型,一次注入=全文档泄露** |
| 联合查询 | UNION关键字 | **无UNION**,用`\|`运算符组合多路径 |
| 注释符号 | `--`/`#`/`/* */` | **标准无注释语法**(`/**/`对XPath无效,与SQL不同) |
| 字符串定界 | 通常单引号 | 单引号或双引号均可,需两者都测 |
| 参数化支持 | PreparedStatement成熟 | XPath 1.0多数实现无参数化,靠转义或变量解析器 |
| 方言差异 | 有(MySQL/Oracle/...) | **标准语言零方言**,Payload可自动化复用 |
| 回显机制 | 有UNION回显/报错注入 | 多为布尔型盲注,报错信息常被吞 |
| 数据范围 | 受限于表/库权限 | 整个XML文档树(含属性、注释、处理指令) |

## 一、攻击面与注入点

### 1.1 注入点全景
| 场景 | 示例查询 | 危害等级 |
|------|---------|---------|
| 用户登录(XML用户库) | `//user[username/text()='INPUT' and password/text()='INPUT']` | 严重(认证绕过) |
| 用户/商品搜索 | `//user[contains(name,'INPUT')]` | 高(数据泄露) |
| 数据查询 | `/products/category[@name='INPUT']/item` | 高 |
| 权限检查 | `//user[@id='INPUT']/isAdmin/text()` | 严重(越权) |
| XML配置解析 | 动态XPath读取配置值 | 高(配置含密钥/凭据) |
| SOAP/XML Web Service | Web Service中XPath查询 | 高 |
| SAML断言解析 | XPath提取NameID/Attribute | 严重(SSO认证绕过) |
| XSLT转换参数 | 用户输入嵌入XSLT | 严重(可能RCE) |
| XML数据库(BaseX/eXist/MarkLogic) | XQuery/XPath查询 | 严重(CWE-652) |
| 文档管理系统 | XPath检索XML文档 | 中高 |
| APT/防火墙管理面(OPNsense等) | XPath操作config.xml | 严重(CVE-2026-53582) |
| 低代码/SaaS目录(Plesk APS等) | XPath搜索应用目录 | 严重(CVE-2026-44962,XPath→RCE) |

### 1.2 XPath特殊字符
```
'        字符串定界
"        字符串定界
/        路径分隔
//       任意深度后代
*        通配符(任意节点)
@        属性前缀
[]       谓词(条件)
|        多路径(XPath的"UNION")
()       分组
.        当前节点
..       父节点
and or   逻辑运算(=为比较,AND优先级高于OR)
= !=     比较
< > <= >= 比较(XML文档中需转义&lt; &gt;)
+ - * div mod 算术(除法用div,*为通配符/乘法需上下文)
:        命名空间
comment() 注释节点
text()   文本节点
node()   任意节点
```

### 1.3 注入点识别要点
- **参数扫描**:所有进入XPath求值函数的参数(`xpath()`/`evaluate()`/`selectNodes()`/`query()`/`SelectSingleNode()`)
- **输入法**:`'` 触发语法错误/空响应 → 候选注入点;`' or '1'='1` 返回异常多数据 → 确认
- **盲注判定**:构造真/假条件观察响应差异(登录成功/失败、页面长度、状态码)
- **注意**:XPath字符串比较区分大小写;XML属性值中`<`、`>`、`&`需实体编码

## 二、XPath语言基础

### 2.1 常用轴
```
/              根节点
//             任意深度
.              当前节点
..             父节点
@attr          属性
node()         任意节点
text()         文本节点
*              任意元素节点
@*             任意属性
ancestor::     祖先(可用于读上层数据)
parent::       父节点
child::        子节点
following-sibling::  后面的兄弟
preceding-sibling::  前面的兄弟
ancestor-or-self::   祖先及自身
```

### 2.2 运算符和函数(XPath 1.0/2.0)
```
and or not()    逻辑
= != < > <= >=  比较
+ - * div mod   算术
contains(), starts-with(), ends-with(), matches()(2.0)
substring(), string-length(), concat(), normalize-space()
translate()     字符串替换(1.0即可构造任意字符串)
count(), sum(), position(), last()
name(), local-name(), namespace-uri()
string(), number(), boolean()
doc(), doc-available()(2.0 文件/URL读取)
unparsed-text() (2.0 读取外部文本文件)
collection()    (2.0 集合访问)
true() false()  布尔
```

### 2.3 XPath 3.0/3.1 新特性与攻击价值(W3C Rec 2014/2017)
```
# 数据类型:maps 与 arrays(支持JSON数据模型)
map{'k': 'v'} 或 map:merge(...)      # map构造
[1, 2, 3]                            # array构造

From langbyyi/CyberStrikeAI-SRC, Apache-2.0.

More from langbyyi/CyberStrikeAI-SRC

Signals

Stars
131
Forks
11
Open issues
0
Last commit (this folder)
Sep 9, 2026 (1 month ago)
Last release
Oct 16, 2026 (13 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Version
3.0.0
License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from langbyyi

Cite this page

xpath-injection-testing skill. Agent Mart. https://agentmart.dev/skills/langbyyi-xpath-injection-testing (last updated 2026-10-24)