Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

FeedsContactPrivacy© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2025-13780 — A comprehensive vulnerability scanner for CVE-2025-13780, a Remote Code Execution (RCE) vulnerability in pgAdmin 4 versions ≤ 8.14. | Kitploit
Tools/GitHubGitHub/themehackers/cve-2025-13780
ReconnaissanceVulnerability ScannersExploitationWeb Application ExploitationInformation GatheringPenetration Testing
GitHubthemehackers/cve-2025-13780

CVE-2025-13780

A comprehensive vulnerability scanner for CVE-2025-13780, a Remote Code Execution (RCE) vulnerability in pgAdmin 4 versions ≤ 8.14.

View Repository
31010 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2025-13780: pgAdmin 4 <= 8.14 RCE Scanner

Python License

A comprehensive vulnerability scanner for CVE-2025-13780, a Remote Code Execution (RCE) vulnerability in pgAdmin 4 versions ≤ 8.14.

🔍 Vulnerability Details

The vulnerability exists in the Restore feature of pgAdmin 4. The application attempts to block dangerous shell commands (starting with \) using a regular expression. However, this check can be bypassed.

  • Vulnerable Regex: (^|\n)[ \t]*\\
  • Bypass Methods:
    1. UTF-8 BOM: Prepending \xef\xbb\xbf makes the regex fail to match
    2. CRLF Injection: Using \n\r instead of \n before the backslash

📦 Installation

# Clone the repository
git clone https://github.com/ThemeHackers/CVE-2025-13780.git
cd CVE-2025-13780

# Install dependencies
pip install -r requirements.txt

Dependencies

  • requests - HTTP library for API requests
  • rich (optional) - Enhanced terminal output with colors and progress bars
  • python-socketio & websocket-client (optional) - WebSocket support for exploit mode

🚀 Usage

Single Target Scan

# Basic scan
python3 scanner.py http://localhost:5050

# With authentication
python3 scanner.py http://localhost:5050 --email [email protected] --password admin

# Verbose mode
python3 scanner.py http://localhost:5050 -v

Multi-Target Scan

# Scan from file
python3 scanner.py -f targets.txt

# With multi-threading (default: 5 threads)
python3 scanner.py -f targets.txt --threads 10

# Export results to JSON
python3 scanner.py -f targets.txt -o results.json --json

Command Line Options

OptionDescription
targetTarget URL (e.g., http://localhost:5050)
-f, --fileFile containing list of targets (one per line)
-e, --emailpgAdmin email for authentication
-p, --passwordpgAdmin password for authentication
-o, --outputOutput file for results
--jsonOutput results in JSON format
-q, --quietSuppress banner and info messages
-v, --verboseEnable verbose/debug output
-t, --timeoutRequest timeout in seconds (default: 10)
--threadsNumber of threads for multi-target scanning (default: 5)
--exploit-demoRun exploit demonstration mode
--exploitExecute real exploit (requires --lhost)
--lhostAttacker IP for reverse shell callback
--lportAttacker port for reverse shell (default: 4444)
--cmdCustom command to execute (optional)

🎯 Scanner Features

  • Version Detection: Automatically detects pgAdmin version from multiple sources
  • Regex Bypass Testing: Tests both BOM and CRLF bypass methods
  • Confidence Scoring: Provides vulnerability assessment with confidence levels
  • Multi-Target Support: Scan multiple targets with threading support
  • JSON Export: Export results for integration with other tools
  • Rich Terminal Output: Beautiful formatted output with progress bars

📊 Confidence Scoring

The scanner calculates a confidence score (0-100) based on multiple factors:

FactorMax PointsDetails
Version in vulnerable range (≤ 8.14)40Version detected as ≤ 8.14
Version unknown15When version cannot be determined
Restore endpoint accessible25Restore API accessible without auth
Restore endpoint (requires auth)15Restore API exists but requires authentication
Both BOM and CRLF bypasses work25Both regex bypass methods succeed
One bypass method works20Either BOM or CRLF bypass succeeds
Browser endpoint accessible10Main pgAdmin interface accessible

Vulnerability Status Determination

For versions ≤ 8.14:

  • VULNERABLE (≥55): High confidence - immediate action required
  • LIKELY VULNERABLE (≥40): Medium confidence - prioritize patching
  • POSSIBLY VULNERABLE (<40): Low confidence - investigate further

For versions > 8.14:

  • NOT VULNERABLE: Patched version detected

For unknown versions:

  • Status determined by confidence score:
    • LIKELY VULNERABLE (≥70): Medium confidence
    • POSSIBLY VULNERABLE (≥50): Low confidence
    • NOT VULNERABLE (<50): Likely secure

🧪 Testing Environment

Use Docker Compose to set up a vulnerable pgAdmin 4 instance:

docker-compose up -d
  • pgAdmin URL: http://localhost:5050
  • Email: [email protected]
  • Password: admin

🔧 Exit Codes

CodeMeaning
0No vulnerabilities found
1One or more vulnerable targets found
2Scan errors occurred

📝 Sample Output

╔═══════════════════════════════════════════════════════════════╗
║           CVE-2025-13780 pgAdmin 4 Scanner                    ║
║         Regex Bypass Remote Code Execution                    ║
║                                                               ║
║  Affected: pgAdmin 4 <= 8.14                                  ║
╚═══════════════════════════════════════════════════════════════╝

[*] Checking connectivity to http://localhost:5050
[+] Target appears to be pgAdmin
[+] Detected version: 8.14
[+] CSRF token obtained
[!] Version 8.14 is in vulnerable range (<= 8.14)
[*] Testing regex bypass patterns
  [+] BOM bypass: BYPASSED
  [+] CRLF bypass: BYPASSED

⚠️  VULNERABILITY DETECTED  ⚠️

⚠️ Disclaimer

This tool is provided for educational and authorized security testing purposes only.

  • Only use on systems you own or have explicit permission to test
  • Unauthorized access to computer systems is illegal
  • The authors are not responsible for any misuse of this tool

📚 References

  • pgAdmin Official Website
  • PostgreSQL psql Meta-Commands
  • OWASP Command Injection

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.


Download Tool