マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】OSS-Fuzz

【OSS情報アーカイブ】OSS-Fuzz

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「OSS-Fuzz」とは

基本情報

概要

OSS-Fuzz(オーエスエス ファズ)とは、Google製のオープンソースソフトウェア向け継続的ファズテストツールです。複数ツールを組み合わせて「ファジング手法+分散実行」によりソフトウェア脆弱性を検出します。

「ファジング(ファズテスト)」とは

「ファジング(ファズテスト)」とは、ソフトウェアの不具合(脆弱性)を発見するためのテスト手法の1つです。

検査対象のソフトウェアに予測不可能な入力データ(ファズ:fuzz)を入力し、意図的に例外を発生させ、その応答/挙動を監視することで脆弱性を検出する検査手法です。

基本説明

OSS-Fuzzは、ファジングを機械的に実行するためのファズテストツールです。

「最新ファジングテクニック」と「スケーラブル分散実行」を組み合わせることで、オープンソースソフトウェアを安全/安定にすることを目指しています。

OSS-Fuzzにより、オープンソースソフトウェアに対する大規模脆弱性テストを行うことができるようになり、安定した高品質なソフトウェア開発に寄与するツールとして期待されています。

経緯

OSS-Fuzzは、Google+Linux Foundationの「Core Infrastructure Initiative」で開発が行われています。「Core Infrastructure Initiative」は、インターネット基盤ソフトウェア(OpenSSL/OpenSSH/NTPDなど)の開発支援を行う協業プロジェクトです。

2016年12月、GoogleはOSS-Fuzzのオープンソース発表を行いました。

主な特徴

拡張性のあるファジング分散実行環境

OSS-Fuzzは、さまざまな「ファジングエンジン」「サニタイザ」などを組み合わせて、セキュリティ脆弱性/論理的バグなどを検出しようとしています。

OSS-Fuzzには、汎用ファジングエンジン「AFL」「libFuzzer」や、サニタイザ「AddressSanitize」などが実装されています。これらは、GoogleがChromeブラウザのコンポーネント脆弱性テストに使用しています。

また、分散型ファジングインフラ「ClusterFuzz」を利用して、拡張性のある分散実行環境を実現しています。

検出バグ種類

検出できるバグ種類には次のようなものがあります。
・バッファオーバーフロー
・整数オーバーフロー
・セキュリティ脆弱性(Use-After-Freeなど)
・メモリリーク
・NULLポインタ値参照
・論理上のバグ(場合によっては)

バグ検出オペレーション

OSS-Fuzzに参加するオープンソースプロジェクトでバグが発見された場合のオペレーションです。
1.ClusterFuzzがバグを検出
2.ClusterFuzzがOSS-Fuzzのイシュートラッカーに報告
3.プロジェクトオーナーにバグレポートが通知される
4.プロジェクトがバグを修正
5.ClusterFuzzが自動的に修正を確認し、コメントを加えてイシューをクローズ

バグ情報開示ガイドラインにより、「OSS-Fuzzトラッカーで新たに報告されたバグには90日間の非開示期間を設ける」とされています。

対応言語

当初対応しているプログラミング言語は、C/C++です。

同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Vuls」「OWASP Zed Attack Proxy(ZAP)」など。

導入事例

OSS-Fuzzは「OpenSSL」「JSON」「Node.js」「PostgreSQL」「SQLite3」「ffmpeg」などのプロジェクトで利用されており、「1週間に最大4兆回のテストケースを回している」としています。

ライセンス情報

OSS-Fuzzのライセンスは「Apache License Version 2.0」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

ダウンロード

ダウンロードページ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

経営活動に活用できる 原価管理 を実現するには? 〜製造業の現実的な課題に向き合い、現場視点から改善する原価管理手法の必達プロセスをご紹介〜

ウェビナーまとめ

2024.05.15

経営活動に活用できる 原価管理 を実現するには? 〜製造業の現実的な課題に向き合い、現場視点から改善する原価管理手法の必達プロセスをご紹介〜

2024年3月12日に三菱電機ITソリューションズ株式会社とアットストリームパートナーズ合同会社の共催で、組立加工製造業向けのセミナー「なぜか高くなる原価を管理する 不確実性の時代を乗り切るためのコスト戦略とは」が開催されました。本セミナーでは、製造業における原価管理の現状と改善手法について深く掘り下げ、経営活動への具体的な活用方法を提示しました。今回は、その講演の要点をお伝えします。

【OSS情報】LLMトレーニング用ライブラリ「 GPT-NeoX 」📚

OSS情報

2024.07.18

【OSS情報】LLMトレーニング用ライブラリ「 GPT-NeoX 」📚

「 GPT-NeoX 」は、GPU上で大規模言語モデル(LLM)を効率的にトレーニングするためのライブラリです。NVIDIAのモデルを基に独自の最適化が加えられ、オートレグレッシブ言語モデルのトレーニング手法を集約しています。

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

OSS情報

2024.07.04

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

「 Hoppscotch 」は、オープンソースのAPI開発エコシステムで、使いやすさとアクセシビリティを重視した軽量なWebベースのスイートです。無料版と有料版があり、PostmanやInsomniaの代替として利用可能です。