# CVE-2020-36379: aaptjs arbitrary code execution in remove function

Source: https://junglewise.ai/threats/cve-2020-36379-aaptjs-arbitrary-code-execution-in-remove-function  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2021-11-02. Updated: 2026-09-25  
License: CC BY 4.0 with a link back

CVE-2020-36379 · Severity: low · CVSS 3.1 · Published 2021-11-02

aaptjs is a Node.js wrapper for the Android APK packaging tool (aapt). The remove function fails to validate filePath parameters, allowing an attacker to inject arbitrary shell commands that execute with the privileges of the application process. This could lead to complete system compromise, data theft, or denial of service depending on how the application is deployed.

Technologies: [aaptjs (npm)](https://junglewise.ai/threats/technologies/aaptjs). Vendors: [npm](https://junglewise.ai/threats/vendors/npm).

## Quick answers

**Is CVE-2020-36379 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2020-36379 being exploited in the wild.

**How severe is CVE-2020-36379?** Low severity, with a CVSS score of 3.1, published 2 November 2021.

**Which products and versions are affected?** aaptjs (npm) SEMVER:introduced=0,last_affected=1.3.1.

**Is there a fix for CVE-2020-36379?** No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.

**How is CVE-2020-36379 attacked?** It is attacked over the network.

**Am I affected by CVE-2020-36379?** Check whether you run aaptjs (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

The vulnerability is a command injection flaw (CWE-77, CWE-78) in the remove function where user-supplied filePath parameters are directly concatenated into shell commands executed via the Node.js exec() function without proper sanitization or escaping. An attacker who can control the filePath input to the remove function can inject arbitrary shell metacharacters and commands. No authentication is required—this depends on whether the affected application exposes this function to untrusted input. The vulnerability affects aaptjs version 1.3.1 and likely all earlier versions. Patches or mitigations have not been publicly documented in the available advisory data.

## Affected products

- shenzhim aaptjs 1.3.1 and earlier

## Identifiers

- CVE-2020-36379
- GHSA-9cq3-fj2h-ggj5

## Timeline

- 2020-10-02: disclosed: Issue reported on GitHub
- 2021-11-02: advisory: GitHub Security Advisory GHSA-9cq3-fj2h-ggj5 published

## References

- [https://github.com/shenzhim/aaptjs/issues/2](https://github.com/shenzhim/aaptjs/issues/2)

## Related threats

- [aaptjs packageCmd arbitrary code execution via filePath](https://junglewise.ai/threats/cve-2020-36378-aaptjs-packagecmd-arbitrary-code-execution-via-filepath)
- [aaptjs arbitrary code execution in dump function](https://junglewise.ai/threats/cve-2020-36377-aaptjs-arbitrary-code-execution-in-dump-function)
- [aaptjs command injection in list function](https://junglewise.ai/threats/cve-2020-36376-aaptjs-command-injection-in-list-function)
- [aaptjs arbitrary code execution via filePath parameter](https://junglewise.ai/threats/cve-2020-36381-aaptjs-arbitrary-code-execution-via-filepath-parameter)
- [aaptjs crunch function arbitrary code execution via filePath](https://junglewise.ai/threats/cve-2020-36380-aaptjs-crunch-function-arbitrary-code-execution-via-filepath)
