{"links":{},"metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00234270","sets":["581:11492:11498"]},"path":["11498"],"owner":"44499","recid":"234270","title":["Feedback-guided Fuzzingによる並行バグ探索"],"pubdate":{"attribute_name":"公開日","attribute_value":"2024-05-15"},"_buckets":{"deposit":"d5490080-6545-49c7-8e21-25cf3630f176"},"_deposit":{"id":"234270","pid":{"type":"depid","value":"234270","revision_id":0},"owners":[44499],"status":"published","created_by":44499},"item_title":"Feedback-guided Fuzzingによる並行バグ探索","author_link":["638167","638163","638168","638166","638164","638165"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"Feedback-guided Fuzzingによる並行バグ探索"},{"subitem_title":"Detecting Concurrency Bugs with Feedback-guided Fuzzing","subitem_title_language":"en"}]},"item_keyword":{"attribute_name":"キーワード","attribute_value_mlt":[{"subitem_subject":"[一般論文] ファジング,並行プログラム,並行バグ,自動バグ検出,ソフトウェアテスト","subitem_subject_scheme":"Other"}]},"item_type_id":"2","publish_date":"2024-05-15","item_2_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"名古屋大学大学院情報学研究科"},{"subitem_text_value":"名古屋大学大学院情報学研究科"},{"subitem_text_value":"名古屋大学大学院情報学研究科"}]},"item_2_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"Graduate School of Informatics, Nagoya University","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of Informatics, Nagoya University","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of Informatics, Nagoya University","subitem_text_language":"en"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"jpn"}]},"publish_status":"0","weko_shared_id":-1,"item_file_price":{"attribute_name":"Billing file","attribute_type":"file","attribute_value_mlt":[{"url":{"url":"https://ipsj.ixsq.nii.ac.jp/record/234270/files/IPSJ-JNL6505005.pdf","label":"IPSJ-JNL6505005.pdf"},"date":[{"dateType":"Available","dateValue":"2026-05-15"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-JNL6505005.pdf","filesize":[{"value":"1.8 MB"}],"mimetype":"application/pdf","priceinfo":[{"tax":["include_tax"],"price":"660","billingrole":"5"},{"tax":["include_tax"],"price":"330","billingrole":"6"},{"tax":["include_tax"],"price":"0","billingrole":"8"},{"tax":["include_tax"],"price":"0","billingrole":"44"}],"accessrole":"open_date","version_id":"9b3dff7f-9f8c-40f1-98be-b2daa8842e92","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 2024 by the Information Processing Society of Japan"}]},"item_2_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"伊藤, 弘将"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"松原, 豊"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"高田, 広章"}],"nameIdentifiers":[{}]}]},"item_2_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Hiromasa, Ito","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Yutaka, Matsubara","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Hiroaki, Takada","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_2_source_id_9":{"attribute_name":"書誌レコードID","attribute_value_mlt":[{"subitem_source_identifier":"AN00116647","subitem_source_identifier_type":"NCID"}]},"item_resource_type":{"attribute_name":"資源タイプ","attribute_value_mlt":[{"resourceuri":"http://purl.org/coar/resource_type/c_6501","resourcetype":"journal article"}]},"item_2_publisher_15":{"attribute_name":"公開者","attribute_value_mlt":[{"subitem_publisher":"情報処理学会","subitem_publisher_language":"ja"}]},"item_2_source_id_11":{"attribute_name":"ISSN","attribute_value_mlt":[{"subitem_source_identifier":"1882-7764","subitem_source_identifier_type":"ISSN"}]},"item_2_description_7":{"attribute_name":"論文抄録","attribute_value_mlt":[{"subitem_description":"並行バグは,特定のスレッドスケジューリングパターンでプログラムを実行した場合にのみ顕在化する.また,一般的な実行環境はスレッドを非決定論的にスケジュールするため,バグを踏んだ入力を再度与えてプログラムを実行しても,そのバグが再現するとは限らない.そのため,一般的なfuzzing手法で並行バグを探索するのは困難である.本研究は,feedback-guided fuzzingにより並行バグを探索する新たな手法を提案する.提案手法は,テスト対象プログラム(Program Under Test;PUT)を,fuzzerが生成したテストケースに基づき,決定論的に実行する.さらに,PUTの実行時に発生した共有メモリアクセスの順序を,fuzzerへフィードバックし,より効率的かつ効果的な並行バグ探索を試みる.並行バグ探索ツールの評価用ベンチマークスイートSCTBenchに含まれる19種類のプログラムをPUTとし,提案手法の有効性を評価した.結果として,提案手法は,単純なプログラムに対してはdumb fuzzingに劣ったものの,比較的複雑なプログラムに対しては,他の手法よりも効率的かつ効果的に並行バグを探索し,その有効性を発揮した.この結果は,複雑な実世界プログラムに対する提案手法の有効性を示唆するものである.","subitem_description_type":"Other"}]},"item_2_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"Concurrency bugs manifest only when a program runs under specific thread interleaving patterns. In addition, execution environments often schedule threads nondeterministically so that even if the program runs again with the input that manifested the bug, it will not necessarily reappear. Therefore, exploring concurrency bugs using general fuzzing methods takes much work. This research proposes a new method to explore for concurrency bugs with feedback-guided fuzzing. It deterministically executes the program under test (PUT) based on the test cases generated by the fuzzer. Furthermore, it feeds back the order of shared memory accesses during the execution of the PUT to the fuzzer to explore for concurrency bugs more efficiently and effectively. We evaluated the proposed method using 19 programs in SCTBench, a benchmark suite for evaluating concurrency bug detection tools. As a result, although the proposed method was inferior to dumb fuzzing for simple programs, it explored for concurrency bugs more efficiently and effectively than other methods for complex programs. The results suggest the effectiveness of the proposed method for more complex real-world programs.","subitem_description_type":"Other"}]},"item_2_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"941","bibliographic_titles":[{"bibliographic_title":"情報処理学会論文誌"}],"bibliographicPageStart":"927","bibliographicIssueDates":{"bibliographicIssueDate":"2024-05-15","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"5","bibliographicVolumeNumber":"65"}]},"relation_version_is_last":true,"item_2_identifier_registration":{"attribute_name":"ID登録","attribute_value_mlt":[{"subitem_identifier_reg_text":"10.20729/00234153","subitem_identifier_reg_type":"JaLC"}]},"weko_creator_id":"44499"},"updated":"2025-01-19T09:49:47.408667+00:00","created":"2025-01-19T01:36:00.958846+00:00","id":234270}