SCW アイコン
ヒーロー背景(区切りなし)
ブログ

Pythonのtarfileモジュールのパス探索バグを理解する

ローラ・ベルヘイデ
2022年10月03日 掲載
最終更新日: 2026年3月9日

最近、あるセキュリティ研究者チームがPythonのtarファイル抽出機能に15年も放置されていた脆弱性を発見したと発表しました。この脆弱性は2007年に初めて公開され、CVE-2007-4559として追跡されました。公式Pythonドキュメントには注記が追加されましたが、脆弱性自体は修正されていませんでした。

この脆弱性は数千ものソフトウェアプロジェクトに影響を及ぼす可能性がありますが、多くの人々は自身の置かれた状況や対処方法に慣れていません。それがまさにここにある理由です。セキュアコードウォリアーは、この脆弱性の悪用を直接シミュレートし、自ら影響を受ける機会を提供します。この永続的なバグのメカニズムを直接体験できるのです。したがって、アプリケーションをより効果的に保護できるようになります!

シミュレーションを試すミッション今すぐ。

脆弱性: tarファイル抽出時のパス探索

パスまたはディレクトリの探索は、削除されていないユーザー入力がファイルパスを構成するのに役立つ場合に発生します。これにより、攻撃者はファイルにアクセスしてファイルを上書きし、任意のコードを変更することが可能になります。

この脆弱性はPythonのtarファイルモジュールにあります。tarファイル(テープアーカイブ)は、アーカイブと呼ばれる単一のファイルです。メタデータと共に複数のファイルをまとめてパッケージ化し、一般的に次のような拡張子を持つことができます:.tar.gzまたは .tgz。アーカイブの各構成要素は次のようにできます:tar情報ファイルは、ファイル名、最終更新日時、所有権などのメタデータを含むオブジェクトです。

アーカイブを再度抽出できるため、危険性があります。

抽出時にすべてのメンバーに使用する名前が必要です。この位置はデフォルトのファイルパスを指しています。

Pythonのスニペット Tarfile.py


このパスが作成されると、次のパスに渡されます。 tarファイル.extract または スターファイル.完全抽出 抽出を実行する関数:

Pythonのスニペット Tarfile.py

ここでのファイル問題は、ファイル名の衛生状態が不十分であることです。攻撃者は、次のようなパス探索文字を含むようにファイル名を変更できます。ドットドットスラッシュ(../)を使用すると、元のファイルが改ざんされる可能性があります。

脆弱性を特定する方法を知っていれば、他のシナリオでも脆弱性が現れます。Pythonのtarファイル処理における脆弱性はzipファイルの抽出に関連しています。この内容は「ジッパー・スリップ脆弱性」という名称で既にご存知かもしれません。Python以外の言語でもその真価が発揮されました!

ミッションリンク 

どのようにすればリスクを軽減できるでしょうか?

<<이 취약점이 수년간 우리에게 다가왔어요. 파이썬 기능이 제대로 작동하고 있다고 생각해요. 해야 할 일.이 경우 “버그가 기능이야” 라고 말하는 사람이 없는 것입니다.안타깝게도 개발자들이 알 수 없는 곳에서 tar 또는 zip 파일을 추출하는 것을 항상 기억할 수 없습니다.보안 관행의 일환으로 경로 탐색 취약점을 지키기 위해 최선을 다하는 것은 개발자의 몫입니다.

Pythonでセキュリティコードを記述し、リスクを軽減する方法について詳しく知りたいですか?

当社のテスト製品をご覧くださいPython Challenge Free.

より多くの無料コーディングガイドラインにご興味があれば、またお越しください。セキュアコードコーチセキュリティ##プラクティスを最新の状態に保つお手伝いをします。

リソースを見る
リソースを見る

最近、セキュリティ研究チームがPythonのtarファイル抽出機能に15年も前から存在するバグを発見したと発表しました。この脆弱性は2007年に公表され、当初CVE-2007-4559として追跡されました。公式Pythonドキュメントには注記が追加されましたが、バグ情報は修正されないまま残されています。

もっと興味がありますか?

もっと詳しく

セキュアコードウォリアーは、ソフトウェア開発ライフサイクル全体を通じてコードを保護し、サイバーセキュリティを最優先とする文化を組織に根付かせるために存在します。AppSec管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、組織が安全でないコードに関連するリスクを軽減できるよう支援します。

デモ予約
共有対象:
リンクトインのブランドソーシャルx ロゴ
作成者
ローラ・ベルヘイデ
2022年10月03日発行

Laura Verheyde はSecure Code Warrior のソフトウェア開発者で、脆弱性のリサーチとMissions および Coding labs のコンテンツ作成に注力している。

共有対象:
リンクトインのブランドソーシャルx ロゴ

最近、あるセキュリティ研究者チームがPythonのtarファイル抽出機能に15年も放置されていた脆弱性を発見したと発表しました。この脆弱性は2007年に初めて公開され、CVE-2007-4559として追跡されました。公式Pythonドキュメントには注記が追加されましたが、脆弱性自体は修正されていませんでした。

この脆弱性は数千ものソフトウェアプロジェクトに影響を及ぼす可能性がありますが、多くの人々は自身の置かれた状況や対処方法に慣れていません。それがまさにここにある理由です。セキュアコードウォリアーは、この脆弱性の悪用を直接シミュレートし、自ら影響を受ける機会を提供します。この永続的なバグのメカニズムを直接体験できるのです。したがって、アプリケーションをより効果的に保護できるようになります!

シミュレーションを試すミッション今すぐ。

脆弱性: tarファイル抽出時のパス探索

パスまたはディレクトリの探索は、削除されていないユーザー入力がファイルパスを構成するのに役立つ場合に発生します。これにより、攻撃者はファイルにアクセスしてファイルを上書きし、任意のコードを変更することが可能になります。

この脆弱性はPythonのtarファイルモジュールにあります。tarファイル(テープアーカイブ)は、アーカイブと呼ばれる単一のファイルです。メタデータと共に複数のファイルをまとめてパッケージ化し、一般的に次のような拡張子を持つことができます:.tar.gzまたは .tgz。アーカイブの各構成要素は次のようにできます:tar情報ファイルは、ファイル名、最終更新日時、所有権などのメタデータを含むオブジェクトです。

アーカイブを再度抽出できるため、危険性があります。

抽出時にすべてのメンバーに使用する名前が必要です。この位置はデフォルトのファイルパスを指しています。

Pythonのスニペット Tarfile.py


このパスが作成されると、次のパスに渡されます。 tarファイル.extract または スターファイル.完全抽出 抽出を実行する関数:

Pythonのスニペット Tarfile.py

ここでのファイル問題は、ファイル名の衛生状態が不十分であることです。攻撃者は、次のようなパス探索文字を含むようにファイル名を変更できます。ドットドットスラッシュ(../)を使用すると、元のファイルが改ざんされる可能性があります。

脆弱性を特定する方法を知っていれば、他のシナリオでも脆弱性が現れます。Pythonのtarファイル処理における脆弱性はzipファイルの抽出に関連しています。この内容は「ジッパー・スリップ脆弱性」という名称で既にご存知かもしれません。Python以外の言語でもその真価が発揮されました!

ミッションリンク 

どのようにすればリスクを軽減できるでしょうか?

<<이 취약점이 수년간 우리에게 다가왔어요. 파이썬 기능이 제대로 작동하고 있다고 생각해요. 해야 할 일.이 경우 “버그가 기능이야” 라고 말하는 사람이 없는 것입니다.안타깝게도 개발자들이 알 수 없는 곳에서 tar 또는 zip 파일을 추출하는 것을 항상 기억할 수 없습니다.보안 관행의 일환으로 경로 탐색 취약점을 지키기 위해 최선을 다하는 것은 개발자의 몫입니다.

Pythonでセキュリティコードを記述し、リスクを軽減する方法について詳しく知りたいですか?

当社のテスト製品をご覧くださいPython Challenge Free.

より多くの無料コーディングガイドラインにご興味があれば、またお越しください。セキュアコードコーチセキュリティ##プラクティスを最新の状態に保つお手伝いをします。

リソースを見る
リソースを見る

レポートをダウンロードするには、以下のフォームにご記入ください。

当社製品および/または関連するセキュリティコーディングのトピックに関する情報をお送りするため、お客様の同意を求めます。当社は常に、お客様の個人情報を最大限の注意を払って取り扱い、マーケティング目的で他社に販売することは一切ありません。

提出
SCW成功アイコン
SCWエラーアイコン
フォームを送信するには「Analytics」クッキーを有効にしてください。完了後、いつでも再度無効にできます。

最近、あるセキュリティ研究者チームがPythonのtarファイル抽出機能に15年も放置されていた脆弱性を発見したと発表しました。この脆弱性は2007年に初めて公開され、CVE-2007-4559として追跡されました。公式Pythonドキュメントには注記が追加されましたが、脆弱性自体は修正されていませんでした。

この脆弱性は数千ものソフトウェアプロジェクトに影響を及ぼす可能性がありますが、多くの人々は自身の置かれた状況や対処方法に慣れていません。それがまさにここにある理由です。セキュアコードウォリアーは、この脆弱性の悪用を直接シミュレートし、自ら影響を受ける機会を提供します。この永続的なバグのメカニズムを直接体験できるのです。したがって、アプリケーションをより効果的に保護できるようになります!

シミュレーションを試すミッション今すぐ。

脆弱性: tarファイル抽出時のパス探索

パスまたはディレクトリの探索は、削除されていないユーザー入力がファイルパスを構成するのに役立つ場合に発生します。これにより、攻撃者はファイルにアクセスしてファイルを上書きし、任意のコードを変更することが可能になります。

この脆弱性はPythonのtarファイルモジュールにあります。tarファイル(テープアーカイブ)は、アーカイブと呼ばれる単一のファイルです。メタデータと共に複数のファイルをまとめてパッケージ化し、一般的に次のような拡張子を持つことができます:.tar.gzまたは .tgz。アーカイブの各構成要素は次のようにできます:tar情報ファイルは、ファイル名、最終更新日時、所有権などのメタデータを含むオブジェクトです。

アーカイブを再度抽出できるため、危険性があります。

抽出時にすべてのメンバーに使用する名前が必要です。この位置はデフォルトのファイルパスを指しています。

Pythonのスニペット Tarfile.py


このパスが作成されると、次のパスに渡されます。 tarファイル.extract または スターファイル.完全抽出 抽出を実行する関数:

Pythonのスニペット Tarfile.py

ここでのファイル問題は、ファイル名の衛生状態が不十分であることです。攻撃者は、次のようなパス探索文字を含むようにファイル名を変更できます。ドットドットスラッシュ(../)を使用すると、元のファイルが改ざんされる可能性があります。

脆弱性を特定する方法を知っていれば、他のシナリオでも脆弱性が現れます。Pythonのtarファイル処理における脆弱性はzipファイルの抽出に関連しています。この内容は「ジッパー・スリップ脆弱性」という名称で既にご存知かもしれません。Python以外の言語でもその真価が発揮されました!

ミッションリンク 

どのようにすればリスクを軽減できるでしょうか?

<<이 취약점이 수년간 우리에게 다가왔어요. 파이썬 기능이 제대로 작동하고 있다고 생각해요. 해야 할 일.이 경우 “버그가 기능이야” 라고 말하는 사람이 없는 것입니다.안타깝게도 개발자들이 알 수 없는 곳에서 tar 또는 zip 파일을 추출하는 것을 항상 기억할 수 없습니다.보안 관행의 일환으로 경로 탐색 취약점을 지키기 위해 최선을 다하는 것은 개발자의 몫입니다.

Pythonでセキュリティコードを記述し、リスクを軽減する方法について詳しく知りたいですか?

当社のテスト製品をご覧くださいPython Challenge Free.

より多くの無料コーディングガイドラインにご興味があれば、またお越しください。セキュアコードコーチセキュリティ##プラクティスを最新の状態に保つお手伝いをします。

ウェビナーを見る
はじめに
もっと詳しく

以下のリンクをクリックし、このリソースのPDFをダウンロードしてください。

セキュアコードウォリアーは、ソフトウェア開発ライフサイクル全体を通じてコードを保護し、サイバーセキュリティを最優先とする文化を組織に根付かせるために存在します。AppSec管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、組織が安全でないコードに関連するリスクを軽減できるよう支援します。

レポートを見るデモ予約
リソースを見る
共有対象:
リンクトインのブランドソーシャルx ロゴ
もっと興味がありますか?

共有対象:
リンクトインのブランドソーシャルx ロゴ
作成者
ローラ・ベルヘイデ
2022年10月03日発行

Laura Verheyde はSecure Code Warrior のソフトウェア開発者で、脆弱性のリサーチとMissions および Coding labs のコンテンツ作成に注力している。

共有対象:
リンクトインのブランドソーシャルx ロゴ

最近、あるセキュリティ研究者チームがPythonのtarファイル抽出機能に15年も放置されていた脆弱性を発見したと発表しました。この脆弱性は2007年に初めて公開され、CVE-2007-4559として追跡されました。公式Pythonドキュメントには注記が追加されましたが、脆弱性自体は修正されていませんでした。

この脆弱性は数千ものソフトウェアプロジェクトに影響を及ぼす可能性がありますが、多くの人々は自身の置かれた状況や対処方法に慣れていません。それがまさにここにある理由です。セキュアコードウォリアーは、この脆弱性の悪用を直接シミュレートし、自ら影響を受ける機会を提供します。この永続的なバグのメカニズムを直接体験できるのです。したがって、アプリケーションをより効果的に保護できるようになります!

シミュレーションを試すミッション今すぐ。

脆弱性: tarファイル抽出時のパス探索

パスまたはディレクトリの探索は、削除されていないユーザー入力がファイルパスを構成するのに役立つ場合に発生します。これにより、攻撃者はファイルにアクセスしてファイルを上書きし、任意のコードを変更することが可能になります。

この脆弱性はPythonのtarファイルモジュールにあります。tarファイル(テープアーカイブ)は、アーカイブと呼ばれる単一のファイルです。メタデータと共に複数のファイルをまとめてパッケージ化し、一般的に次のような拡張子を持つことができます:.tar.gzまたは .tgz。アーカイブの各構成要素は次のようにできます:tar情報ファイルは、ファイル名、最終更新日時、所有権などのメタデータを含むオブジェクトです。

アーカイブを再度抽出できるため、危険性があります。

抽出時にすべてのメンバーに使用する名前が必要です。この位置はデフォルトのファイルパスを指しています。

Pythonのスニペット Tarfile.py


このパスが作成されると、次のパスに渡されます。 tarファイル.extract または スターファイル.完全抽出 抽出を実行する関数:

Pythonのスニペット Tarfile.py

ここでのファイル問題は、ファイル名の衛生状態が不十分であることです。攻撃者は、次のようなパス探索文字を含むようにファイル名を変更できます。ドットドットスラッシュ(../)を使用すると、元のファイルが改ざんされる可能性があります。

脆弱性を特定する方法を知っていれば、他のシナリオでも脆弱性が現れます。Pythonのtarファイル処理における脆弱性はzipファイルの抽出に関連しています。この内容は「ジッパー・スリップ脆弱性」という名称で既にご存知かもしれません。Python以外の言語でもその真価が発揮されました!

ミッションリンク 

どのようにすればリスクを軽減できるでしょうか?

<<이 취약점이 수년간 우리에게 다가왔어요. 파이썬 기능이 제대로 작동하고 있다고 생각해요. 해야 할 일.이 경우 “버그가 기능이야” 라고 말하는 사람이 없는 것입니다.안타깝게도 개발자들이 알 수 없는 곳에서 tar 또는 zip 파일을 추출하는 것을 항상 기억할 수 없습니다.보안 관행의 일환으로 경로 탐색 취약점을 지키기 위해 최선을 다하는 것은 개발자의 몫입니다.

Pythonでセキュリティコードを記述し、リスクを軽減する方法について詳しく知りたいですか?

当社のテスト製品をご覧くださいPython Challenge Free.

より多くの無料コーディングガイドラインにご興味があれば、またお越しください。セキュアコードコーチセキュリティ##プラクティスを最新の状態に保つお手伝いをします。

目次

PDFダウンロード
リソースを見る
もっと興味がありますか?

もっと詳しく

セキュアコードウォリアーは、ソフトウェア開発ライフサイクル全体を通じてコードを保護し、サイバーセキュリティを最優先とする文化を組織に根付かせるために存在します。AppSec管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、組織が安全でないコードに関連するリスクを軽減できるよう支援します。

デモ予約ダウンロード
共有対象:
リンクトインのブランドソーシャルx ロゴ
リソースハブ

始めるのに役立つリソース

もっと多くの投稿
リソースハブ

始めるのに役立つリソース

もっと多くの投稿