製品・ソフトウェアに関する情報
Apktoolにおけるパストラバーサルの脆弱性
Title Apktoolにおけるパストラバーサルの脆弱性
Summary

ApktoolはAndroidのAPKファイルのリバースエンジニアリングツールです。バージョン3.0.0および3.0.1において、`brut/androlib/res/decoder/ResFileDecoder.java`にパストラバーサルの脆弱性が存在し、悪意のあるAPKを用いることで標準のデコード処理(`apktool d`)中に任意のファイルをファイルシステムに書き込むことが可能でした。この脆弱性は2025年12月12日のコミットe10a045(PR #4041)で導入されたセキュリティ後退によるもので、以前はリソースファイル出力パスのパストラバーサルを防止していた`BrutIO.sanitizePath()`の呼び出しが削除されていました。攻撃者は`resources.arsc`のType String Poolに`../`の連続を埋め込むことで出力ディレクトリから脱出し、`~/.ssh/config`、`~/.bashrc`、またはWindowsのスタートアップフォルダーなど任意の場所にファイルを書き込んでRCE(リモートコード実行)を引き起こす可能性があります。バージョン3.0.2での修正では、ファイル書き込み操作の前に`ResFileDecoder.java`内で`BrutIO.sanitizePath()`が再導入されています。

Possible impacts 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
Solution

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

Publication Date April 21, 2026, midnight
Registration Date April 24, 2026, 11:42 a.m.
Last Update April 24, 2026, 11:42 a.m.
CVSS3.0 : 重要
Score 7.1
Vector CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N
Affected System
Apktool
Apktool 3.0.0 以上 3.0.2 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
Change Log
No Changed Details Date of change
1 [2026年04月24日]
  掲載
April 24, 2026, 11:42 a.m.

NVD Vulnerability Information
CVE-2026-39973
Summary

Apktool is a tool for reverse engineering Android APK files. In versions 3.0.0 and 3.0.1, a path traversal vulnerability in `brut/androlib/res/decoder/ResFileDecoder.java` allows a maliciously crafted APK to write arbitrary files to the filesystem during standard decoding (`apktool d`). This is a security regression introduced in commit e10a045 (PR #4041, December 12, 2025), which removed the `BrutIO.sanitizePath()` call that previously prevented path traversal in resource file output paths. An attacker can embed `../` sequences in the `resources.arsc` Type String Pool to escape the output directory and write files to arbitrary locations, including `~/.ssh/config`, `~/.bashrc`, or Windows Startup folders, escalating to RCE. The fix in version 3.0.2 re-introduces `BrutIO.sanitizePath()` in `ResFileDecoder.java` before file write operations.

Publication Date April 21, 2026, 11:16 a.m.
Registration Date April 25, 2026, 4:02 a.m.
Last Update April 24, 2026, 12:39 a.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:apktool:apktool:*:*:*:*:*:*:*:* 3.0.0 3.0.2
Related information, measures and tools
Common Vulnerabilities List