論文の概要: PickleFuzzer: A Case Study in Fuzzing for Discrepancies Between Python Pickle Implementations
- arxiv url: http://arxiv.org/abs/2605.15084v1
- Date: Thu, 14 May 2026 17:07:29 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-05-15 21:45:34.968989
- Title: PickleFuzzer: A Case Study in Fuzzing for Discrepancies Between Python Pickle Implementations
- Title(参考訳): PickleFuzzer: Python Pickle実装の相違点に対するファジングのケーススタディ
- Authors: Justin Applegate, Andreas Kellas,
- Abstract要約: Pythonのネイティブシリアライゼーションプロトコルである pickle は、信頼できないデータを転送するための強力だが安全でないフォーマットである。
そこで,PickleFuzzerを提案する。
ピクルオブジェクトを生成し、それらを各実装に渡し、スローされた例外の違いや主要な内部状態の変更を検出する。
- 参考スコア(独自算出の注目度): 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Python's native serialization protocol, pickle, is a powerful but insecure format for transferring untrusted data. It is frequently used, especially for saving machine learning models, despite known security challenges. While developers sometimes mitigate this risk by restricting imports during unpickling or using static and dynamic analysis tools, these approaches are error-prone and depend heavily on accurate interpretations of the Pickle Virtual Machine (PVM) opcodes. Discrepancies across Python's three native PVM modules can lead to incorrect detection of malicious payloads and undermine existing defenses. To efficiently and scalably identify discrepancies, we present PickleFuzzer, a custom generation-based fuzzer that identifies inconsistencies across pickle implementations. PickleFuzzer generates pickle objects, passes them to each implementation, and detects differences in thrown exceptions or changes to key internal states. It generates pickle objects using a grammar, which we developed to account for the missing pickle specification. It determines discrepancies by comparing the execution behaviors of each test implementation, rather than requiring a specification-derived oracle. PickleFuzzer detected 14 new discrepancies between the pickle implementations. Four discrepancies are critical and can be used to bypass security-critical scanning tools like those deployed on the popular model hosting platform, Hugging Face. We disclosed all findings to the Python Software Foundation for remediation, and additionally disclosed the security issues to a bug bounty platform and were awarded a $750 bounty. We demonstrate that differential testing is a viable approach for identifying security-relevant discrepancies in important pickle implementations, and our work can lead to promising future directions for finding deeper pickle bugs with more directed fuzzing.
- Abstract(参考訳): Pythonのネイティブシリアライゼーションプロトコルである pickle は、信頼できないデータを転送するための強力だが安全でないフォーマットである。
既知のセキュリティ上の問題にもかかわらず、特に機械学習モデルの保存に頻繁に使用される。
開発者は、アンピッキングや静的および動的解析ツールの使用中にインポートを制限することで、このリスクを軽減することもあるが、これらのアプローチはエラーを起こしやすく、Pickle Virtual Machine(PVM)の正確な解釈に大きく依存している。
Pythonの3つのネイティブPVMモジュール間の相違は、悪意のあるペイロードの誤った検出と既存の防御の弱体化につながる可能性がある。
そこで我々は,PickleFuzzerを提案する。PickleFuzzerは,Pickle実装間の不整合を識別するカスタムジェネレータである。
PickleFuzzerはピクルオブジェクトを生成し、それらをそれぞれの実装に渡す。
欠落したピクルス仕様を考慮に入れた文法を用いてピクルスオブジェクトを生成する。
仕様から派生したオラクルではなく、各テスト実装の実行動作を比較することで、違いを判断する。
PickleFuzzerは、ピクルス実装間で14の新たな相違を検知した。
一般的なモデルホスティングプラットフォームであるHugging Faceにデプロイされているような、セキュリティクリティカルなスキャンツールを回避するために使用できる。
我々はすべての発見を修正のためにPython Software Foundationに公開し、さらにセキュリティ上の問題をバグ報奨金プラットフォームに公開し、750ドルの報奨金を受け取った。
我々は、重要なピクルス実装におけるセキュリティ関連不一致を特定するための、差分テストが実行可能なアプローチであることを示し、我々の研究により、より深いピクルスバグを見つけるための将来的な方向性が期待できることを示した。
関連論文リスト
- Correct Code, Vulnerable Dependencies: A Large Scale Measurement Study of LLM-Specified Library Versions [52.50730821321986]
大規模言語モデル(LLM)におけるバージョンレベルのリスクの大規模評価を初めて行った。
我々は1000のStack OverflowプログラミングタスクのベンチマークであるPinTrace上で10のLLMを評価した。
LLM バージョン選択は LLM ベース開発における第1級, 以前は見落とされたリスクサーフェスとして確認された。
論文 参考訳(メタデータ) (2026-05-07T13:52:59Z) - LLM-Powered Silent Bug Fuzzing in Deep Learning Libraries via Versatile and Controlled Bug Transfer [15.118579443741659]
我々は、歴史的バグレポートには、サイレントバグに関する情報が豊富に活用されていないという観察に基づいて構築する。
我々は大規模言語モデル(LLM)を活用して、サイレントバグファジィのための多目的かつ制御されたバグ転送を行う。
これにより、既知のバグギーから機能的に類似したターゲットへ、リスクの高いコンテキストやオラクルの設計を移すことで、サイレントバグを積極的に検出することができる。
論文 参考訳(メタデータ) (2026-02-26T14:53:26Z) - SafePickle: Robust and Generic ML Detection of Malicious Pickle-based ML Models [6.365889364810239]
Hugging Faceのようなモデルリポジトリは、Pythonのピクルスフォーマットでシリアライズされた機械学習アーティファクトを配布する傾向にある。
PickleBallのような最近の防衛は、複雑なシステムセットアップと検証された良性モデルを必要とするライブラリごとのポリシー合成に依存している。
ポリシー生成やコードインスツルメンテーションなしに悪意のあるPickleベースのファイルを検出する軽量な機械学習ベースのスキャナを提案する。
論文 参考訳(メタデータ) (2026-02-23T13:19:43Z) - Cutting the Gordian Knot: Detecting Malicious PyPI Packages via a Knowledge-Mining Framework [14.0015860172317]
Python Package Index(PyPI)は悪意のあるアクターのターゲットとなっている。
現在の検出ツールは偽陽性率15~30%を生成し、不正に正規パッケージの3分の1を悪意のあるものとフラグ付けしている。
我々は,検出障害を有用な行動知識に変換する知識駆動型フレームワークであるPyGuardを提案する。
論文 参考訳(メタデータ) (2026-01-23T05:49:09Z) - Hey, That's My Data! Label-Only Dataset Inference in Large Language Models [63.35066172530291]
CatShiftはラベルのみのデータセット推論フレームワークである。
LLMは、新しいデータに晒されたとき、学習した知識を上書きする傾向にある。
論文 参考訳(メタデータ) (2025-06-06T13:02:59Z) - UncTrack: Reliable Visual Object Tracking with Uncertainty-Aware Prototype Memory Network [75.9933952886197]
UncTrackは、標的位置の不確実性を予測する新しい不確実性対応トランスフォーマーである。
本手法は実験における他の最先端手法よりも優れる。
論文 参考訳(メタデータ) (2025-03-17T07:33:16Z) - PyPulse: A Python Library for Biosignal Imputation [58.35269251730328]
PyPulseは,臨床およびウェアラブルの両方のセンサ設定において生体信号の計算を行うPythonパッケージである。
PyPulseのフレームワークは、非機械学習バイオリサーバーを含む幅広いユーザーベースに対して、使い勝手の良いモジュラーで拡張可能なフレームワークを提供する。
PyPulseはMITライセンスでGithubとPyPIでリリースしました。
論文 参考訳(メタデータ) (2024-12-09T11:00:55Z) - Model Equality Testing: Which Model Is This API Serving? [59.005869726179455]
APIプロバイダは、基本モデルの定量化、透かし、微調整を行い、出力分布を変更することができる。
モデル平等テスト(Model Equality Testing)は,2サンプルテスト問題である。
単純な文字列カーネル上に構築されたテストは、歪みの範囲に対して77.4%の中央値を達成する。
論文 参考訳(メタデータ) (2024-10-26T18:34:53Z) - D2A: A Dataset Built for AI-Based Vulnerability Detection Methods Using
Differential Analysis [55.15995704119158]
静的解析ツールによって報告されたラベル問題に対する差分解析に基づくアプローチであるD2Aを提案する。
D2Aを使用して大きなラベル付きデータセットを生成し、脆弱性識別のためのモデルをトレーニングします。
論文 参考訳(メタデータ) (2021-02-16T07:46:53Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。