論文の概要: Fuzzing the PHP Interpreter via Dataflow Fusion
- arxiv url: http://arxiv.org/abs/2410.21713v1
- Date: Tue, 29 Oct 2024 03:54:59 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-10-30 13:38:37.964300
- Title: Fuzzing the PHP Interpreter via Dataflow Fusion
- Title(参考訳): Dataflow FusionによるPHPインタープリタのファジング
- Authors: Yuancheng Jiang, Chuqi Zhang, Bonan Ruan, Jiahao Liu, Manuel Rigger, Roland Yap, Zhenkai Liang,
- Abstract要約: 本稿では,PHPインタプリタにおけるメモリエラーの検出に特化して設計された,最初の自動ファジリングフレームワークであるFlowFusionを紹介する。
評価では、FlowFusionは、PHPインタプリタで56の未知のメモリエラーを特定し、38の修正と4の確認を行った。
FlowFusionは最先端のファズーであるAFL++とPolyglotより優れており、24時間のファズー後に24%のコードをカバーする。
- 参考スコア(独自算出の注目度): 13.303933700280343
- License:
- Abstract: PHP, a dominant scripting language in web development, powers a vast range of websites, from personal blogs to major platforms. While existing research primarily focuses on PHP application-level security issues like code injection, memory errors within the PHP interpreter have been largely overlooked. These memory errors, prevalent due to the PHP interpreter's extensive C codebase, pose significant risks to the confidentiality, integrity, and availability of PHP servers. This paper introduces FlowFusion, the first automatic fuzzing framework specifically designed to detect memory errors in the PHP interpreter. FlowFusion leverages dataflow as an efficient representation of test cases maintained by PHP developers, merging two or more test cases to produce fused test cases with more complex code semantics. Moreover, FlowFusion employs strategies such as test mutation, interface fuzzing, and environment crossover to further facilitate memory error detection. In our evaluation, FlowFusion identified 56 unknown memory errors in the PHP interpreter, with 38 fixed and 4 confirmed. We compared FlowFusion against the official test suite and a naive test concatenation approach, demonstrating that FlowFusion can detect new bugs that these methods miss, while also achieving greater code coverage. Furthermore, FlowFusion outperformed state-of-the-art fuzzers AFL++ and Polyglot, covering 24% more lines of code after 24 hours of fuzzing under identical execution environments. FlowFusion has been acknowledged by PHP developers, and we believe our approach offers a practical tool for enhancing the security of the PHP interpreter.
- Abstract(参考訳): Web開発における主要なスクリプト言語であるPHPは、個人ブログから主要なプラットフォームまで、幅広いWebサイトを動かしている。
既存の研究は、主にコードインジェクションのようなPHPアプリケーションレベルのセキュリティ問題に焦点を当てているが、PHPインタプリタ内のメモリエラーはほとんど見過ごされてきた。
これらのメモリエラーは、PHPインタプリタの広範なCコードベースのために発生し、PHPサーバの機密性、完全性、可用性に重大なリスクをもたらす。
本稿では,PHPインタプリタにおけるメモリエラーの検出に特化して設計された,最初の自動ファジリングフレームワークであるFlowFusionを紹介する。
FlowFusionは、PHP開発者が管理するテストケースの効率的な表現としてデータフローを活用し、より複雑なコードセマンティクスで融合したテストケースを生成するために、2つ以上のテストケースを統合する。
さらに、FlowFusionでは、テスト突然変異、インターフェイスファジィング、環境横断といった戦略を採用して、メモリエラーの検出をさらに容易にしている。
評価では、FlowFusionは、PHPインタプリタで56の未知のメモリエラーを特定し、38の修正と4の確認を行った。
FlowFusionは、これらのメソッドが見逃す新しいバグを検出できると同時に、コードカバレッジも向上できることを示した。
さらに、FlowFusionは最先端のファズーであるAFL++とPolyglotより優れており、同じ実行環境下で24時間ファズした後に24%のコードをカバーする。
FlowFusionはPHP開発者によって承認されており、当社のアプローチはPHPインタプリタのセキュリティを強化するための実用的なツールであると考えています。
関連論文リスト
- Pipe-Cleaner: Flexible Fuzzing Using Security Policies [0.07499722271664144]
Pipe-CleanerはCコードの脆弱性を検出し解析するシステムである。
これは、タグベースのランタイムリファレンスモニターによって強制されるフレキシブルな開発者設計のセキュリティポリシーに基づいている。
いくつかのヒープ関連のセキュリティ脆弱性に対して、このアプローチの可能性を実証する。
論文 参考訳(メタデータ) (2024-10-31T23:35:22Z) - Yama: Precise Opcode-based Data Flow Analysis for Detecting PHP Applications Vulnerabilities [4.262259005587605]
Yama は、PHP のための文脈に敏感で経路に敏感な相互言語間データフロー解析手法である。
我々は,PHPオペコードの正確なセマンティクスと明確な制御フローにより,データフロー解析をより正確かつ効率的に行えることを発見した。
我々は,基本データフロー解析機能,複雑な意味解析機能,実世界のアプリケーションにおける脆弱性発見機能という3つの側面からヤマを評価した。
論文 参考訳(メタデータ) (2024-10-16T08:14:37Z) - CRUXEval-X: A Benchmark for Multilingual Code Reasoning, Understanding and Execution [50.7413285637879]
CRUXEVAL-Xコード推論ベンチマークには19のプログラミング言語が含まれている。
各言語に対して少なくとも600人の被験者で構成され、合計19Kのコンテンツ一貫性テストがある。
Pythonでのみトレーニングされたモデルでさえ、他の言語で34.4%のPass@1を達成することができる。
論文 参考訳(メタデータ) (2024-08-23T11:43:00Z) - KGym: A Platform and Dataset to Benchmark Large Language Models on Linux Kernel Crash Resolution [59.20933707301566]
大規模言語モデル(LLM)は、ますます現実的なソフトウェア工学(SE)タスクにおいて一貫して改善されている。
現実世界のソフトウェアスタックでは、Linuxカーネルのような基本的なシステムソフトウェアの開発にSEの取り組みが費やされています。
このような大規模システムレベルのソフトウェアを開発する際にMLモデルが有用かどうかを評価するため、kGymとkBenchを紹介する。
論文 参考訳(メタデータ) (2024-07-02T21:44:22Z) - What All the PHUZZ Is About: A Coverage-guided Fuzzer for Finding Vulnerabilities in PHP Web Applications [5.169724825219126]
本稿では,PHP WebアプリケーションのためのファジングフレームワークPHUZZを紹介する。
PHUZZは、最先端関連の作業よりもクライアントサイドとサーバサイドの脆弱性クラスを検出するために、新しいアプローチを使用している。
私たちは115のWordPressプラグインの1000以上のAPIエンドポイントをファズして、20以上のセキュリティ問題と2つの新しいCVE-IDを生み出しました。
論文 参考訳(メタデータ) (2024-06-10T13:43:07Z) - FV8: A Forced Execution JavaScript Engine for Detecting Evasive Techniques [53.288368877654705]
FV8はJavaScriptコードの回避テクニックを特定するために設計された修正V8 JavaScriptエンジンである。
動的コードを条件付きで注入するAPI上でのコード実行を選択的に実施する。
1,443のnpmパッケージと、少なくとも1つのタイプのエスケープを含む164の(82%)拡張を識別する。
論文 参考訳(メタデータ) (2024-05-21T19:54:19Z) - BUGSPHP: A dataset for Automated Program Repair in PHP [2.236957801565796]
本稿では,BUGSPHPと呼ばれる実世界のアプリケーションに対するバグのベンチマークデータセットを提案する。
トレーニングデータセットには600,000以上のバグ修正コミットが含まれている。
テストデータセットには、開発者が提供するテストケースを備えた手作業によるバグ修正コミット513が含まれている。
論文 参考訳(メタデータ) (2024-01-14T19:41:46Z) - WhiteFox: White-Box Compiler Fuzzing Empowered by Large Language Models [11.33856613057612]
提案するWhiteFoxは,ソースコード情報付きLarge Language Modelを用いた,最初のホワイトボックスコンパイラファザである。
WhiteFoxは、高度な最適化を行うための高品質なテストプログラムを生成することができる。
WhiteFoxはDLコンパイラの101のバグを発見した。
論文 参考訳(メタデータ) (2023-10-24T16:39:06Z) - InterCode: Standardizing and Benchmarking Interactive Coding with
Execution Feedback [50.725076393314964]
標準的な強化学習環境として,インタラクティブコーディングの軽量でフレキシブルで使いやすいフレームワークであるInterCodeを紹介した。
私たちのフレームワークは、言語とプラットフォームに依存しない、自己完結型のDocker環境を使用して、安全で再現可能な実行を提供します。
我々は、異なるプロンプト戦略で構成された複数の最先端LLMを評価することにより、InterCodeの生存性をテストベッドとして示す。
論文 参考訳(メタデータ) (2023-06-26T17:59:50Z) - A Static Evaluation of Code Completion by Large Language Models [65.18008807383816]
単純なプログラミング問題に対するモデル生成コードの機能的正当性を評価するために,実行ベースベンチマークが提案されている。
プログラムを実行せずにエラーを検出するlinterのような静的解析ツールは、コード生成モデルを評価するために十分に研究されていない。
抽象構文木を利用して,Pythonのコード補完における静的エラーを定量化する静的評価フレームワークを提案する。
論文 参考訳(メタデータ) (2023-06-05T19:23:34Z) - VELVET: a noVel Ensemble Learning approach to automatically locate
VulnErable sTatements [62.93814803258067]
本稿では,ソースコード中の脆弱な文を見つけるための新しいアンサンブル学習手法であるVELVETを提案する。
我々のモデルは、グラフベースとシーケンスベースニューラルネットワークを組み合わせて、プログラムグラフの局所的およびグローバル的コンテキストを捕捉する。
VELVETは、合成データと実世界のデータに対して、それぞれ99.6%と43.6%の精度を達成している。
論文 参考訳(メタデータ) (2021-12-20T22:45:27Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。