Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1310 CNY

100%

CWE-77 (在命令中使用的特殊元素转义处理不恰当(命令注入)) — Vulnerability Class 1253

1253 vulnerabilities classified as CWE-77 (在命令中使用的特殊元素转义处理不恰当(命令注入)). AI Chinese analysis included.

CWE-77 represents a critical input validation weakness where software constructs commands using untrusted data without properly sanitizing special characters. Attackers typically exploit this by injecting malicious payloads, such as semicolons or pipe operators, into user-supplied fields to alter the intended command structure. This allows them to execute arbitrary system commands, potentially leading to full system compromise, data exfiltration, or denial of service. To prevent such vulnerabilities, developers must strictly validate and sanitize all external inputs, ensuring that only expected data formats are processed. Utilizing parameterized APIs or safe command execution libraries instead of direct string concatenation significantly reduces risk. Additionally, implementing the principle of least privilege for application processes limits the potential impact of successful injection attempts, thereby enhancing overall system security against command injection attacks.

MITRE CWE Description
The product constructs all or part of a command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended command when it is sent to a downstream component. Many protocols and products have their own custom command language. While OS or shell command strings are frequently discovered and targeted, developers may not realize that these other command languages might also be vulnerable to attacks.
Common Consequences (1)
Integrity, Confidentiality, AvailabilityExecute Unauthorized Code or Commands
If a malicious user injects a character (such as a semi-colon) that delimits the end of one command and the beginning of another, it may be possible to then insert an entirely new and unrelated command that was not intended to be executed. This gives an attacker a privilege or capability that they w…
Mitigations (5)
Architecture and DesignIf at all possible, use library calls rather than external processes to recreate the desired functionality.
ImplementationIf possible, ensure that all external commands called from the program are statically created.
ImplementationAssume all input is malicious. Use an "accept known good" input validation strategy, i.e., use a list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does. When performing input validation, consider all potentially relevant properties, including length, type of input, the full range…
OperationRun time: Run time policy enforcement may be used in an allowlist fashion to prevent use of any non-sanctioned commands.
System ConfigurationAssign permissions that prevent the user from accessing/opening privileged files.
Examples (2)
Consider a "CWE Differentiator" application that uses an an LLM generative AI based "chatbot" to explain the difference between two weaknesses. As input, it accepts two CWE IDs, constructs a prompt string, sends the prompt to the chatbot, and prints the results. The prompt string effectively acts as a command to the chatbot component. Assume that invokeChatbot() calls the chatbot and returns the …
prompt = "Explain the difference between {} and {}".format(arg1, arg2) result = invokeChatbot(prompt) resultHTML = encodeForHTML(result) print resultHTML
Bad · Python
Explain the difference between CWE-77 and CWE-78
Informative
Consider the following program. It intends to perform an "ls -l" on an input filename. The validate_name() subroutine performs validation on the input to make sure that only alphanumeric and "-" characters are allowed, which avoids path traversal (CWE-22) and OS command injection (CWE-78) weaknesses. Only filenames like "abc" or "d-e-f" are intended to be allowed.
my $arg = GetArgument("filename"); do_listing($arg); sub do_listing { my($fname) = @_; if (! validate_name($fname)) { print "Error: name is not well-formed!\n"; return; } # build command my $cmd = "/bin/ls -l $fname"; system($cmd); } sub validate_name { my($name) = @_; if ($name =~ /^[\w\-]+$/) { return(1); } else { return(0); } }
Bad · Perl
if ($name =~ /^\w[\w\-]+$/) ...
Good · Perl
CVE IDTitleCVSSSeverityPublished
CVE-2026-42850 Kitty has a shell command injection — kitty--2026-06-12
CVE-2026-46529 PDF /GoToR action argv injection enables single-click RCE via --gtk-module dlopen — atril--2026-06-10
CVE-2026-11487 Neovim View Branch secure.lua M.read command injection — Neovim 5.3 Medium2026-06-08
CVE-2026-11455 FoundationAgents MetaGPT common.py check_cmd_exists command injection — MetaGPT 5.0 Medium2026-06-07
CVE-2026-11452 GL.iNet GL-MT3000 SET_USER_PWD glc FUN_0042e200 command injection — GL-MT3000 7.3 High2026-06-07
CVE-2026-11451 GL.iNet GL-MT3000 FTP Protocol glc snprintf command injection — GL-MT3000 7.3 High2026-06-07
CVE-2026-11450 GL.iNet GL-MT3000 Path Normalization dlopen command injection — GL-MT3000 7.3 High2026-06-07
CVE-2026-11449 GL.iNet GL-MT3000 LuCI JSON-RPC rpc rpc_sys command injection — GL-MT3000 6.3 Medium2026-06-07
CVE-2026-11448 GL.iNet GL-MT3000 Minidlna Service rpc realpath command injection — GL-MT3000 4.7 Medium2026-06-07
CVE-2026-11447 GL.iNet GL-MT3000 MTK Backend iwinfo.so iwinfo_backend command injection — GL-MT3000 6.3 Medium2026-06-07
CVE-2026-11406 GL.iNet MT3000 OpenVPN Client Import Workflow ovpnclient.sh command injection — MT3000 6.3 Medium2026-06-06
CVE-2026-11339 D-Link DWR-M920 formUSSDSetup sub_41CF20 command injection — DWR-M920 6.3 Medium2026-06-05
CVE-2026-10878 D-Link DWR-M920 formSmsManage sub_41C8E8 command injection — DWR-M920 6.3 Medium2026-06-05
CVE-2026-45497 Microsoft M365 Copilot Remote Code Execution Vulnerability — Microsoft 365 Copilot 7.7 High2026-06-04
CVE-2026-42824 M365 Copilot Information Disclosure Vulnerability — Microsoft 365 Copilot 6.5 Medium2026-06-04
CVE-2026-8037 OS Command Injection Remote Code Execution Vulnerability in Progress LoadMaster, ECS Connection Manager, Object Scale Connection Manager & MOVEit WAF — LoadMaster 9.6 Critical2026-06-04
CVE-2026-10550 elunez eladmin Application Deployment App.java command injection — eladmin 6.3 Medium2026-06-02
CVE-2024-52011 launch-editor vulnerable to command injection via the crafted request on Windows — launch-editor--2026-06-01
CVE-2026-10182 TRENDnet TEW-432BRP formWlanSetup command injection — TEW-432BRP 6.3 Medium2026-05-31
CVE-2026-10180 TRENDnet TEW-432BRP formSysCmd command injection — TEW-432BRP 6.3 Medium2026-05-31
CVE-2026-10166 Edimax BR-6478AC POST Request formWlbasic command injection — BR-6478AC 6.3 Medium2026-05-31
CVE-2026-10127 Edimax BR-6478AC POST Request formStaDrvSetup command injection — BR-6478AC 6.3 Medium2026-05-30
CVE-2026-45663 Dokploy: Remote Code Execution via destinationPath in Container File Upload — dokploy 9.9 Critical2026-05-29
CVE-2026-10061 TRENDnet TEW-432BRP formWPS command injection — TEW-432BRP 6.3 Medium2026-05-29
CVE-2026-10060 TRENDnet TEW-432BRP formSetRoute command injection — TEW-432BRP 6.3 Medium2026-05-29
CVE-2026-49199 Predator Connect W6x: RCE via MQTT — Predator Connect W6x--2026-05-29
CVE-2026-49196 Predator Connect W6x: Web Interface Command Injection — Predator Connect W6x--2026-05-29
CVE-2026-48116 AnythingLLM: RCE via ripgrep --pre argument injection in filesystem-search-files agent skill — anything-llm 7.5 High2026-05-28
CVE-2026-46368 luci-app-https-dns-proxy Authenticated Command Injection via setInitAction — luci-app-https-dns-proxy 8.8 High2026-05-26
CVE-2026-40034 gitoxide - Command Injection via Partial .gitmodules Override in gix-submodule — gitoxide 7.8 High2026-05-26

Vulnerabilities classified as CWE-77 (在命令中使用的特殊元素转义处理不恰当(命令注入)) represent 1253 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.