CVE-2021-44161
Executive Summary
CVE-2021-44157 is not the correct CVE being analyzed — this report addresses CVE-2021-44161. CVE-2021-44161 is a SQL injection vulnerability in the Changing Information Technology Inc. MOTP (Mobile One Time Password) system. The vulnerability stems from insufficient input validation in a specific function parameter, allowing an unauthenticated attacker on the local network to read, modify, or delete backend database content. With a CVSS score of 8.8 (High) and no authentication requirement, this flaw poses a critical risk to organizations relying on the MOTP system for OTP-based authentication and related identity management workflows. The exact affected versions are not publicly disclosed; the vendor must be contacted directly for patch and version-specific guidance.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Technical Analysis
The NVD description for CVE-2021-44161 identifies a SQL injection vulnerability residing in a specific function parameter of the Changing MOTP system. The core issue is the absence of proper input validation on user-supplied data before its use in a SQL query. This is a classic injection flaw (mapped to CWE-89) where an attacker crafts malicious input that is concatenated into a backend SQL statement, allowing the attacker to alter the query's logic.
The description specifically notes that the attack is feasible from a local area network and does not require prior authentication. This suggests the vulnerable parameter is reachable through a network-facing endpoint (likely an HTTP/HTTPS API or web interface) exposed internally within an enterprise network. The specific function name, exact parameter, and the underlying HTTP endpoint are not disclosed in the NVD description, and the technical details in the public advisory are sparse.
Given the absence of public PoC code or exploit code, the precise mechanics of exploitation cannot be reverse-engineered from official channels. However, the attack mechanism falls squarely within well-documented SQL injection patterns: the application likely constructs a SQL query by directly embedding the value of a request parameter without using parameterized queries, prepared statements, or input sanitization. The attacker-supplied value can include SQL metacharacters like quotes ('), comment markers (--), and stacked query syntax to break out of the intended query context.
The CVSS vector highlights several key attributes: the attack vector is Adjacent (A) (local network), attack complexity is Low (L) — no special conditions required, privileges required is None (N) — no authentication needed, and user interaction is None (N). The impact is High for confidentiality, integrity, and availability (C:H/I:H/A:H). This means a successful exploit can result in full database disclosure, data tampering, and potentially denial of service via destructive SQL statements (e.g., DROP TABLE).
The lack of version enumeration in public databases ("Affected Versions: []") further complicates asset discovery. Security teams must rely on vendor engagement (via support contacts) to determine if their deployed version is affected and to obtain the patch.
Exploitation Scenarios
The NVD description does not provide specific endpoint paths, parameter names, or payload examples. The following attack chain is therefore inferred at the vulnerability-class level and is consistent with typical SQL injection against OTP management platforms.
1. Reconnaissance / Target Identification
Given the attack vector is "Adjacent" (local network), the attacker must already have a foothold or presence on the enterprise LAN. The attacker would enumerate internal services, scanning for the MOTP system's web interface or API. Common internal discovery techniques include:
- Port scanning (e.g., Nmap) to identify web application ports (80, 443, 8080).
- Banner grabbing to identify the MOTP application signature.
- Directory brute-forcing to locate administrative or API endpoints.
2. Triggering the Vulnerability Class
Once the MOTP web interface or API is located, the attacker identifies the specific function parameter that is vulnerable. The description states "specific function parameter has insufficient validation," implying that a particular request handler fails to sanitize its input. The attacker would then submit a crafted HTTP request (GET or POST) that includes SQL metacharacters in that parameter value, designed to manipulate the backend SQL query.
3. Payload / Execution Method
Since no public PoC exists, the exact SQL injection technique (error-based, union-based, blind, boolean-based, time-based) remains unknown. At the class level, the attacker would likely:
- Submit a crafted value such as
' OR '1'='1to bypass authentication logic or enumerate database schema. - Use a UNION SELECT payload to extract data from other tables.
- Use stacked queries to issue
INSERT,UPDATE,DELETE, orDROPstatements if the underlying database driver supports multiple statements per query. - Leverage time-based payloads (e.g.,
WAITFOR DELAY '0:0:5'orpg_sleep(5)) for blind extraction if error messages are suppressed.
4. Post-Exploitation Impact
Successful exploitation yields unauthenticated read/write/delete access to the backend database. In the context of an OTP system, this database likely stores:
- User account credentials and hashes.
- OTP seed values or rolling codes (if stored in plaintext or weak cipher).
- Session tokens, audit logs, and enrollment data.
- Potentially the MOTP server's configuration secrets, which could be leveraged for lateral movement.
An attacker can modify OTP seeds to bypass 2FA, exfiltrate all registered user secrets, or destroy the database entirely (disrupting authentication for all users). Because the application sits within the local network perimeter, the blast radius extends to both the OTP service itself and any downstream systems relying on it for authentication.
Note: No public PoC is available for this CVE; the attack chain above is inferred from the vulnerability class (SQL injection) and the provided NVD description. Specific implementation details remain undisclosed.
Impact Assessment
CVE-2021-44161 presents a critical risk to the integrity and availability of authentication infrastructure.
- Confidentiality (High): The database behind the MOTP system likely contains OTP secrets, user credentials, and transaction logs. A breach exposes these sensitive matters, enabling credential harvesting and identity theft.
- Integrity (High): Attackers can modify OTP seeds, insert rogue users, and tamper with authentication records — enabling persistent account takeover and fraudulent OTP validation.
- Availability (High): DELETE statements or corruption of backend tables can render the OTP service inoperable, causing a denial-of-service for all users relying on MFA/OTP at the enterprise.
Affected entities: Any enterprise using Changing Information Technology's MOTP product for mobile one-time password generation. The scope is typically limited to internal LANs (given the Adjacent attack vector), but a successful breach of any adjacent host (e.g., an unpatched workstation or IoT device) can unlock this path.
Blast radius: High — the MOTP system serves as a centralized authentication gateway. A compromise is a stepping stone to other enterprise systems protected by it. The CVSS 8.8 score reflects the severity, with unmodified availability, confidentiality, and integrity impacts.
EPSS notes: The EPSS score of 0.00495 (39.9% percentile) indicates a relatively low probability of exploitation in the wild among all known CVEs. However, this is a statistical prior and does not reflect the target-specific value; an attacker with LAN access to a vulnerable MOTP instance will likely attempt exploitation purely due to the severity of unauthenticated database control.
Detection Guidance
The following detection rules reference the MOTP application name and the SQL injection class. Since no public exploit exists, these rules are designed as broad indicators of suspicious SQL injection probing against the MOTP service.
Sigma Rule
title: MOTP SQL Injection Attempt
id: 7791f06f-ae35-4a7a-bac3-4a26b7fc33b3
status: experimental
description: Detects potential SQL injection attempts against Changing MOTP system
references:
- https://nvd.nist.gov/vuln/detail/CVE-2021-44161
author: Valters IT Threat Intelligence Team
date: 2025-01-20
logsource:
category: webserver
product: generic
detection:
selection_motp:
cs-host|contains:
- "motp"
- "otp"
selection_payload:
cs-uri-query|contains:
- "' OR '1'='1"
- "UNION SELECT"
- "WAITFOR DELAY"
- "pg_sleep"
- "SQLi"
- "%27%20OR%27"
selection_sql_errors:
sc-status:
- 400
- 500
condition: selection_motp and selection_payload and selection_sql_errors
falsepositives:
- Legitimate security scanning tools
- Internal automated testing
level: high
YARA Rule
rule MOTP_SQL_Injection_Attempt {
meta:
description = "Detects SQL injection payloads in HTTP requests targeting MOTP systems"
author = "Valters IT Threat Intelligence Team"
reference = "CVE-2021-44161"
date = "2025-01-20"
strings:
$motp_ref1 = "motp" ascii nocase
$motp_ref2 = "one time password" ascii nocase
$payload1 = "' OR '1'='1" ascii
$payload2 = "UNION SELECT" ascii nocase
$payload3 = "WAITFOR DELAY" ascii nocase
$payload4 = "pg_sleep" ascii nocase
$payload5 = "or 1=1" ascii nocase
$payload6 = "/*" ascii
$payload7 = "--" ascii
condition:
($motp_ref1 or $motp_ref2) and 2 of ($payload*)
}
Suricata IDS Rule
alert http any any -> any any (msg:"MOTP SQL Injection Attempt (CVE-2021-44161)"; flow:established,to_server; content:"motp"; http_header; pcre:"/('|%27)\s*OR\s+('|%27)|\bUNION\s+SELECT\b|\bWAITFOR\s+DELAY\b|\bpg_sleep\b/i"; sid:202144161; rev:1; metadata:cve CVE-2021-44161;)
Elastic Detection
sequence by host.name with maxspan=30s
[ network where destination.ip == "some.internal.ip" and
http.request.method in ("GET","POST") and
url.path == "*motp*" ]
[ any where
/.*['%27]\s*OR\s+['%27].*/ or
/.*\bUNION\s+SELECT\b.*/ or
/.*\bWAITFOR\s+DELAY\b.*/ or
/.*\bpg_sleep\b.*/
]
Splunk SPL Query
index=web sourcetype=access_combined uri_path="*motp*"
| rex field=uri_query "(?<sql_payload>\'|%27|UNION|WAITFOR|pg_sleep|or\s+1=1)"
| where isnotnull(sql_payload)
| stats count min(_time) as first_seen max(_time) as last_seen by src_ip, uri_path, uri_query
| where count > 3
| table first_seen, last_seen, src_ip, uri_path, uri_query, count
Wazuh OSSEC Rule
<group name="webserver,sql_injection,">
<rule id="601954" level="12">
<decoded_as>json</decoded_as>
<field name="url">\.*motp\.*</field>
<regex>(\'|\%27).*OR.*(\'|\%27)|UNION.*SELECT|WAITFOR.*DELAY|pg_sleep</regex>
<description>MOTP SQL Injection attempt detected (CVE-2021-44161)</description>
<group>attack,</group>
<mitre>
<id>T1190</id>
</mitre>
</rule>
</group>
Mitigation & Patch Guidance
The patch confidence is 2/4 (CLAIMED) — the CNA states a patch exists, but this has not been independently confirmed by a second source. The vendor's official guidance is to "Contact tech support from Changing" for remediation steps.
1. Immediate Mitigations (while awaiting patch):
- Network segmentation: Restrict access to the MOTP system's administrative/API interfaces to only trusted administrative hosts. Enforce strict firewall rules to prevent arbitrary LAN clients from reaching the vulnerable endpoint.
- Input validation (if possible): If any web application firewall (WAF) or reverse proxy sits in front of the MOTP system, enable SQL injection filtering rules.
- Monitor logs: Actively watch web server logs for SQL metacharacter probes and error responses (400/500) from the MOTP interface.
- Disable or restrict remote access if not essential.
2. Patch / Upgrade Steps:
- Contact Changing Information Technology Inc. technical support (telephone/email/portal as directed on their website) to confirm the affected version and request the specific patch download.
- After receiving the patch, validate its cryptographic hash/signature before deployment.
- Apply the patch in a staging environment, verify functionality, and then deploy to production during a change window.
- After patching, re-test the specific function parameter to confirm the injection is blocked.
3. Long-Term Hardening:
- Adopt parameterized queries: The vendor should migrate database access to prepared statements/parameterized queries to prevent future SQL injection.
- Separation of duties: Ensure the MOTP database account runs with least-privilege (e.g., no
DROPorDELETErights, read-only where possible). - Patch management process: Establish a formal process to track vendor security advisories and apply patches within an SLA.
- Monitor vendor advisories: Subscribe to Changing Information Technology's security mailing list or check their website periodically.
- Network hygiene: Since the attack vector is "Adjacent," enforce strict segmentation between untrusted LAN segments and the OTP service. Consider microsegmentation for critical authentication infrastructure.
References
- NVD Entry: https://nvd.nist.gov/vuln/detail/CVE-2021-44161 — Official NVD description and CVSS score.
- CNA Advisory (Changing Information Technology Inc.): Vendor advisory was the source of the CNA title; contact vendor support portal for the advisory: https://www.changing.com (reference based on CNA name in data).
- CWE-89 SQL Injection: https://cwe.mitre.org/data/definitions/89.html — Weakness class reference for scoring and analysis.
- MITRE ATT&CK — T1190 Exploit Public-Facing Application: https://attack.mitre.org/techniques/T1190/ — Common tactic mapping for unauthenticated application-layer exploitation.
- EPSS Data (FIRST.org): https://www.first.org/epss/ — EPSS score reference for CVE-2021-44161 (0.00495, 39.9th percentile).
Note on threat actor activity: There is no evidence of active exploitation in the wild (CISA KEV: NO, no public PoC, no exploit code). This CVE has not been associated with any known threat actor campaigns as of this report. Monitoring for future disclosures is recommended.
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.