VYPR
Critical severityNVD Advisory· Published Feb 12, 2020· Updated Aug 6, 2024

CVE-2013-7381

CVE-2013-7381

Description

libnotify before 1.0.4 for Node.js contains a command injection vulnerability allowing remote code execution via crafted characters in the notify function.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

libnotify before 1.0.4 for Node.js contains a command injection vulnerability allowing remote code execution via crafted characters in the notify function.

Vulnerability

CVE-2013-7381 is a command injection vulnerability in the libnotify Node.js module versions prior to 1.0.4. The libnotify.notify() function does not properly sanitize user-supplied input, allowing attackers to inject arbitrary commands through unspecified characters [1][2].

Exploitation

An attacker can exploit this by providing specially crafted input to the notify function, which is typically used to display desktop notifications. No authentication is required, and the vulnerability can be triggered remotely via any application that uses the vulnerable library [2].

Impact

Successful exploitation allows a remote attacker to execute arbitrary commands on the host system, potentially leading to full compromise of the application and underlying server [2].

Mitigation

The vulnerability is fixed in version 1.0.4. Users should update the node-libnotify package immediately. The issue was disclosed in 2014 through the Node Security Project advisories [3][4].

AI Insight generated on May 21, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
libnotifynpm
< 1.0.41.0.4

Affected products

2

Patches

1
dfe7801d73a0

Merge pull request #4 from nealpoole/exec-fix

https://github.com/mytrile/node-libnotifyDimitar KostovMay 14, 2013via ghsa
1 file changed · +4 5
  • lib/libnotify.js+4 5 modified
    @@ -55,18 +55,17 @@ exports.binVersion = function(callback) {
     
     exports.notify = function(msg, options, callback) {
       var image,
    -      args = ['notify-send','"' + msg + '"'],
    +      args = [msg],
           options = options || {}
       this.binVersion(function(err, version){
         if (err) return callback(err)
    -    if (image = options.image) args.push('-i ' + image)
    +    if (image = options.image) args.push('-i', image)
         if (options.time) args.push('-t', options.time)
         if (options.category) args.push('-c', options.category)
         if (options.urgency) args.push('-u', options.urgency)
         if (options.title) {
    -      args.shift()
    -      args.unshift('notify-send', '"'+ options.title +'"')
    +      args.unshift(options.title)
         }
    -    child_process.exec(args.join(' '), callback)
    +    child_process.execFile('notify-send', args, {}, callback)
       })
     }
    

Vulnerability mechanics

Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

7

News mentions

0

No linked articles in our index yet.