@techreport{oai:ipsj.ixsq.nii.ac.jp:00189328,
 author = {野村, 孔命 and 力武, 健次 and 松本, 亮介 and Komei, Nomura and Kenji, Rikitake and Ryosuke, Matsumoto},
 issue = {24},
 month = {May},
 note = {データベースの情報を利用して動作する Web アプリケーションでは,入力検証やクエリ発行処理の脆弱性により,開発者の想定していない不正クエリがデータベースに発行され機密情報を窃取される攻撃が発生する.このような攻撃に対して,Web アプリケーションがデータベースに発行するクエリのホワイトリストを作成し不正クエリの検知を行う方法がとられてきたが,Web アプリケーションの大規模化や実装言語の多様化に伴いホワイトリストの作成が難しくなっている.そのため,Web アプリケーション解析や運用時のクエリを用いた学習により生成を用いてホワイトリスト作り,検知する手法が提案されている.しかし,手法が実装言語依存の問題や Web アプリケーションの仕様変更の頻度が高いことによるホワイトリストの管理が難しい問題がある.本稿では,Web アプリケーションの動作を保証するためのテストがあり,Web アプリケーションの更新に追従してテストの更新が行われる開発プロセスが採用されていることを前提とし,テスト時に発行されるクエリからホワイトリストを自動作成する手法を提案する.Web アプリケーションの運用時には作成されたホワイトリストを用いて不正クエリを検知する.提案手法は,Web アプリケーションの複雑性や実装言語に依存せずにクエリのホワイトリストを自動作成することができ,新クエリが実装された場合もテストの更新に伴いホワイトリストが更新される.また,検知されたクエリはテストされていないクエリもしくは不正クエリであり,これらを早期に発見することで原因となる Web アプリケーションの脆弱性が長期化することを防ぐことができる., Database-driven Web applications are vulnerable to the attacks by the malicious queries which are not expected by the developers and are not correctly processed due to the incomplete input processing and the query issuing process. Defining the whitelist of the database queries issued by the Web applications has been conducted to detect the malicious queries. However, as the Web applications themselves become more complex and the implementation programming languages become more diverse, the whitelisting approach becomes more challenging to implement. In this paper, we propose a method to automatically generate a whitelist of database queries from those generated by the Web applications during the testing phase, provided that the application development process includes the operation testing. In the proposed method, the malicious queries are detected using the generated whitelist during the Web application is executed. Our method can automatically generate the whitelist of the queried regardless of the Web application complexity and independent of the implementation language and can update the whitelist as the test cases are updated when new queries are implemented. The detected queries are either untested or malicious and detecting the queries in the early stage of the attack may help an early removal of the respective Web application defects.},
 title = {Webアプリケーションテストを用いたSQLクエリのホワイトリスト自動作成手法},
 year = {2018}
}