• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2009 Fiscal Year Annual Research Report

文字列解析に基づくウェブソフトウェアの検証

Research Project

Project/Area Number 21500028
Research InstitutionUniversity of Tsukuba

Principal Investigator

南出 靖彦  University of Tsukuba, 大学院・システム情報工学研究科, 准教授 (50252531)

Keywordsソフトウェア工学 / 情報基礎 / ソフトウェア検証
Research Abstract

文字列解析の精度を向上する研究,脆弱性の検出の研究,文字列解析をRubyプログラムに適用する基礎研究を行った.
スクリプト言語で記述されたサーバサイドプログラムでは,正規表現を用いた文字列のマッチングや置換が重要な役割を果たす.そのような演算を用いたプログラムを高い精度で解析するため,マッチングや置換を正確に解析する研究を行った.具体的には,正規表現を用いた演算の操作的意味論を構築し,その意味論に基づき先読み付きトランスデューサでその動作を正確に表現できることを示した.この先読み付きトランスデューサを文字列解析に用いることで解析の精度を改善できる.
文字列解析によりクロスサイトスクリプティング脆弱性を検出する研究を行った.特に,検出した脆弱性を示す反例HTML文書を唯一の文字列を生成する文脈自由文法(Straight Line Program)として生成し,反例のどの部分がプログラムのどの部分で生成されたかインタラクティブに調べられるようにした.これにより文字列解析によって検出された脆弱性が真の脆弱性かを効率的に確かめられるようになった.
Rubyの操作的意味論及び制御フロー解析の研究を行った.クラスやメソッドの定義,イテレータブロック,大域脱出など,主要な言語機能を含むサブセットに対し,操作的意味論を与えた.さらに,文字列解析などの高度なプログラム解析の基礎となる,動的なメソッド定義を精密に解析する制御フロー解析を開発した.制御フロー解析の結果に大きな影響を与えるメソッド定義について,フロー依存な解析を行うことで高い精度の解析を可能にした.この制御フロー解析の健全性を,操作的意味論に基づき証明した.

  • Research Products

    (3 results)

All 2010 2009

All Journal Article (1 results) (of which Peer Reviewed: 1 results) Presentation (2 results)

  • [Journal Article] Rubyプログラムの制御フロー解析とその健全性の証明2010

    • Author(s)
      松本宗太郎, 南出靖彦
    • Journal Title

      情報処理学会論文誌 プログラミング 3

      Pages: 9-25

    • Peer Reviewed
  • [Presentation] 証明支援系Isabelle/HOLによるごみ集めアルゴリズムの形式化と安全性検証2009

    • Author(s)
      藤原拓也, 南出靖彦
    • Organizer
      日本ソフトウェア科学会第26回大会
    • Place of Presentation
      島根大学
    • Year and Date
      2009-09-16
  • [Presentation] Rubyのコア言語の操作的意味論2009

    • Author(s)
      松本宗太郎, 南出靖彦
    • Organizer
      日本ソフトウェア科学会第26回大会
    • Place of Presentation
      島根大学
    • Year and Date
      2009-09-16

URL: 

Published: 2011-06-16   Modified: 2016-04-21  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi