@techreport{oai:ipsj.ixsq.nii.ac.jp:00090788, author = {菱沼, 猛 and 吉浦, 紀晃 and Hishinuma, Takeshi and Yoshiura, Noriaki}, issue = {11}, month = {Mar}, note = {近年,インターネット上では様々なWebアプリケーションによるサービスが提供されているが,その運用ではセキュリティ対策が大きな課題となる.Web Application Firewall(以下WAF)は,事前に用意された特定の入力のパターンに基づくシグネチャベースの入力検査を行うが,悪意のあるコードやスクリプト,バグ等による個々のWebアプリケーション固有の脆弱性に対して,入力検査のための適切な入力のパターンが常に用意されているとは限らない.そこで本論文では,Webアプリケーションの管理者が提示する拒否すべき入力や許可すべき入力からベイジアンフィルタによる学習を行うWAFを開発した.入力検査では統計情報に基づくベイジアンフィルタとアノマリ検出器を併用し,統計情報にはN-gram統計を利用する.スクリプト言語Pythonを用いて本WAFのプロトタイプを実装し,ランダムに作成したHTTPリクエストによる実験を行った.実験の結果,ベイジアンフィルタによる学習を繰り返すことで入力検査における誤検知および検知漏れが減少していくことが確認できた., Recently, many web applications which provide many kinds of services on the Internet and security is important in their operations. Web Application Firewall(WAF) is used for security of web applications. Many of WAFs consists of signature-based filters which have prepared particular input patterns, but the filters do not always have proper patterns for malicious codes, malicious scripts and vulnerability due to bugs of individual web applications. This paper develops a WAF which learns good or bad input patterns by Bayesian filter when the administrators of web applications suggest input which should be rejected or accepted. Input inspection uses a Bayesian filter and an anomaly detector. The anomaly detector is based on statistics, which are data of N-gram of inputs for web applications. This paper implements a prototype of our WAF by script language Python and experiments with randomly-generated HTTP requests. The results of the experiment found that iteration of learning by using Bayesian filter decreases false positives and false negatives.}, title = {ベイジアンフィルタを利用したWeb Application Firewallの開発}, year = {2013} }