Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Tarmageddon-CVE-2025-62518- — CVE-2025-62518のPoC。tokio-tarのPAXヘッダー解析を介したtarアーカイブの密輸を示し、悪意のあるペイロードと脆弱な抽出ツールを作成してサプライチェーンインジェクションを実証します。 | Kitploit
ツール/GitHubGitHub/airineiandrei/tarmageddon-cve-2025-62518-
脆弱性分析エクスプロイトマルウェア分析サプライチェーンセキュリティ論文と研究学習と教育
GitHubairineiandrei/tarmageddon-cve-2025-62518-

Tarmageddon-CVE-2025-62518-

CVE-2025-62518のPoC。tokio-tarのPAXヘッダー解析を介したtarアーカイブの密輸を示し、悪意のあるペイロードと脆弱な抽出ツールを作成してサプライチェーンインジェクションを実証します。

リポジトリを見る
108ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Tarmageddon CVE-2025-62518

Video: https://youtu.be/EYBB4BHsp9E

リポジトリのディレクトリ

  • vulnerable-extract 最小限の再現可能な例、引数としてパスを受け取り、そのファイルを ./output に抽出します
  • malicious-payload 簡単な malicious.tar アーカイブを作成し、密輸されたコンテンツの例を示します。コメントでステップごと、ブロックごとの動作を説明しています

再現方法

提供されている 再現スクリプト を使用するか、手動で行います

malicious-payload を実行してペイロード malicious.tar を生成します

このファイルを vulnerable-extract アプリに渡すと次の結果が得られます:

/vulnerable-extract$ ll output/
total 12
drwxrwxr-x 2 airinei airinei 4096 Jan 19 22:40 ./
drwxrwxr-x 5 airinei airinei 4096 Jan 19 22:40 ../
-rw-rw-r-- 1 airinei airinei    0 Jan  1  1970 benign_file.txt
-rw-rw-r-- 1 airinei airinei   18 Jan  1  1970 sh_profile_hijack

一方、OS付属の tar(この例では (GNU tar) 1.35)を実行すると次の結果が得られます:

malicious-payload$ tar -tvf malicious.tar
---------- 0/0            1024 1970-01-01 02:00 benign_file.txt

ファイルサイズが 1024 であることに注意してください

あるいは、放棄された tokio-tar 0.3.1 の代わりに astral-tokio-tar 0.5.6 を使用すると、アーカイブは正しく抽出されます。

解説

CVE-2025-62518(TARmageddon)は、tokio-tar Rust ライブラリで発見されたセキュリティ脆弱性です(Rust の脆弱性 😮)。これは tar 形式のヘッダーの解析方法における論理エラーであり、攻撃者がファイルを密輸することを可能にします。

この欠陥は PAX 拡張ヘッダーを処理するロジックに存在します。TAR アーカイブには異なるヘッダータイプがあります:

  • USTAR: ファイル名、パーミッション、サイズを含む標準ヘッダー。
  • PAX (Type x): アーカイブ内の次のファイルにメタデータ(非常に大きなファイルサイズなど)を提供するために使用される拡張ヘッダー。

PAX ヘッダーが存在する場合、パーサーは標準の USTAR ヘッダーよりも PAX メタデータを優先してファイルの実際のサイズを解決する必要があります。

しかし、なぜ同じように見えるものに優先順位を持つ 2 種類のヘッダーが存在するのでしょうか?TAR 形式は古く(1988 年に標準化)、USTAR には制限があるためです(サイズは最大 8GB、ファイル名は最大 256 文字)。それが問題だったので、2001 年に PAX ヘッダーが追加され、より大きなファイルと長いファイル名を許可しました。

脆弱なバージョンの tokio-tar では、パーサーはファイルコンテンツリーダーに対して PAX ヘッダーのサイズを正しく採用しますが、次のファイルヘッダーの開始位置を決定するために USTAR ヘッダーのサイズを誤って使用します。

問題の核心はポインタの不一致です。脆弱なライブラリがファイルを処理するとき、ストリームを読み取るために2つの異なる内部「ヘッド」を使用します:

  1. コンテンツヘッド: ファイルの実際のバイトを読み取り、ディスクに書き込む責任があります。
  2. パーサーヘッド: ファイルデータをスキップして次のファイルヘッダーを見つける責任があります。

通常のアーカイブでは、これら2つのヘッドは一致します。TARmageddon では、それらを不一致に強制します。PAX サイズを 1024 に、USTAR サイズを 0 に設定することで、パラドックスを作成します:

  • コンテンツヘッドは1024バイトを読み取り、それらを benign_file.txt に格納します。
  • パーサーヘッドはUSTARヘッダーの0を見て、「すでにファイルの末尾にいる」と考えます。その場にとどまります。

その結果、パーサーヘッドは1024バイトブロック内のデータを次の一連の命令として扱います。そのデータが有効なTARヘッダーのように見える場合、ライブラリはアーカイブの全体的な構造によれば技術的には存在しない2番目のファイルを「発見」して抽出します。

密輸ペイロード:

ペイロードは512バイトブロックのシーケンスとして作成されます。以下は malicious-payload ジェネレーターで使用されるレイアウトです:

ブロック役割説明
1 & 2PAX メタデータ次のファイルが1024バイトであると主張します。
3ベースヘッダーbenign.txt。サイズを0に設定することが重要です。
4密輸ヘッダーbackdoor.sh。「データ」領域内に隠されています。
5密輸データ悪意のあるコンテンツ(例: シェルエイリアス)。
6 & 7EOF標準のヌルブロック終端。

標準ツール(GNU tar など)は PAX サイズを正しく追跡するため、ブロック4と5を benign_file.txt に属する無害なバイナリデータとして認識します。ブロック4のヘッダーを「実行」することはありません。

これはどのように脆弱性であり、CVSS 8.1なのか?

このクレートの脆弱性はどのように悪用され得るのか、なぜアーカイブ内でファイルが密輸されることが重要なのでしょうか?

サプライチェーンインジェクション:

攻撃者は悪意のあるファイルをビルドシステムに密輸します。開発中またはCIマシン上でこれを展開すると、正当なビルドファイルを上書きし、そのマシンを侵害し、ビルドシステムを騙して悪意のあるファイルに署名させる可能性があります。

セキュリティ回避(WAF/AV):

スキャナーが .tar を検査し、正しいモードでのみスキャンする場合、抽出時に望ましくないファイルが存在する可能性がありますが、スキャンされませんでした。

この 解説 に触発されました

ツールをダウンロード