@inproceedings{oai:ipsj.ixsq.nii.ac.jp:00208558, author = {碓井, 利宣 and 幾世, 知範 and 川古谷, 裕平 and 岩村, 誠 and 三好, 潤 and 松浦, 幹太 and Toshinori, Usui and Tomonori, Ikuse and Yuhei, Kawakoya and Makoto, Iwamura and Jun, Miyoshi and Kanta, Matsuura}, book = {コンピュータセキュリティシンポジウム2020論文集}, month = {Oct}, note = {悪性スクリプトの挙動を詳細に解析するには,制御フローの解析のみならず,データフローの解析も求められる.このデータフローの解析には,テイント解析がよく利用されるが,既存のスクリプト向けのテイント解析手法はスクリプトエンジンごとに設計,実装する必要がある.
この問題を解決するため,本研究では,バイナリ(機械語のプログラム)向けのテイント解析機能を,スクリプトにも適用可能にすることで,言語やエンジンに非依存でテイント解析機能を自動付与する手法を提案する.まず,バイナリのデータ型とスクリプトのデータ型の間に生じるセマンティックギャップがこの実現を妨げる問題だと実験的に示す.そして,こうした型のセマンティックギャップによって起こる伝播漏れを検出し,テイントの強制伝播によってそれを解消することで,テイント解析機能を実現する.PythonとVBScriptのスクリプトエンジンに対して提案手法を適用し,テイント解析を実現できることを確認した.さらに,それを用いて悪性スクリプトを解析し,データフローを追跡可能になったことも確認した., Data flow analysis is an essential technique for understanding the detailed behavior of malicious scripts. For such analysis, taint analysis is widely used in existing studies. However, taint analysis techniques of those studies are dependent on the respective design and implementation of each script engine.
In this paper, we propose a method that automatically appends taint analysis capability to vanilla script engines by leveraging taint analysis capability designed for native binaries for scripts. We first conduct experiments for clarifying that the problem preventing this method is caused by the semantic gaps between datatypes of binaries and ones of scripts. Our method detects such gaps and bridges them by generating forced propagation rules. It enables script engines to obtain taint analysis capabilities. We built taint analysis tools for Python and VBScript with our method and confirmed they could effectively analyze the data flow of real-world malicious scripts.}, pages = {932--939}, publisher = {情報処理学会}, title = {スクリプト実行環境に対するテイント解析機能の自動付与手法}, year = {2020} }