全体報告会(PDF) - 関西大学総合情報学部小林孝史研究室

2016 年 9 月 小林ゼミ 夏の全体報告会
2016 年 9 月 15 日
題目一覧
☆学部 3 年生
学籍番号
氏名
題目
情 14-0061
上山 真也
音声認識を用いたコンテンツフィルタリング
情 14-0077
大倉 佳歩
Drive-by Download 攻撃解析の支援アプリケーションの実装
情 14-0082
大野 裕央
Web アクセスログに基づくファイアウォールの動的な制御に関する研究
情 14-0099
尾崎 幸也
Drive-by Download 攻撃解析における支援アプリケーションの開発
情 14-0162
栗山 淳一郎
情 14-0175
小西 達也
IRC を利用するボットマルウェアの活動抑制を目的とした IPS の実装
情 14-0215
重年 香奈
静的コンテンツの負荷要因判別システムに関する研究
情 14-0380
播磨 尚希
Drive-by Download 攻撃における識別器の再学習用教師データの提案
情 14-0400
藤崎 奎伍
パーミッションを利用したセキュリティ評価支援ツール
情 14-0432
俣野 剛志
NICTER のダークネットデータセットの分析
情 14-0482
森田 将司
ROP 攻撃の検知システムの実装と評価
情 14-0499
山崎 雅斗
ICAP を用いた悪意あるスクリプトを防御する Proxy サーバの実装
情 15-2012
鍋岡 一誠
MPICH を利用した並列処理環境の構築
文章題図式化アプリケーションの開発に関する研究
☆学部 4 年生
学籍番号
氏名
題目
情 13-0001
青山 佑平
情 13-0059
上杉 達也
情 13-0067
上原 拓也
SSH サービスへの不正アクセスに関する調査
情 13-0146
岸本 大輝
複数枚の画像とジェスチャを用いた認証方式の実装
情 13-0195
合田 詢
情 13-0197
後藤 勇介
情 13-0209
坂本 要
情 13-0243
高岡 奈央
OpenFlow を用いた標的型攻撃の検知手法の提案
スマートフォンにおける広告の自動非表示システムの実装
負荷状況に応じた動的負荷分散システムの実装
プロセスのネットワーク制御を行うことによって DDoS 攻撃への加担を
防ぐ研究
情 13-0396
藤木 英
Opengate による利用者認証システムの実装と検証
情 14-61
上山 真也
2016 年度 専門演習
1/2
音声認識を用いたコンテンツフィルタリング
1
情 14-61
上山 真也
指導教員
小林 孝史
はじめに
近年,動画コンテンツが増加している.YouTube の統計情報 [1] によると全インターネットユー
ザの約 3 分の 1 を占める 10 億人以上が YouTube を利用している.このように多くの人に利用さ
れている YouTube だが,インターネットの動画コンテンツはテレビに比べ発言が過激であること
がある.それはテレビには放送禁止用語が存在し,それらをテレビ局は守り自主規制しているが,
動画共有サイトでは動画投稿者が自主規制をすることは少なく,テレビでは規制される言葉が普
通に使われているからである.視聴者が不適切な発言を含むような種類のコンテンツを見なけれ
ば避けられるかも知れないが,安全と思った種類の動画から予期せず聞きたくない言葉を聞いて
しまうこともある.そこで本研究では音声認識を利用し,動画内に含まれる視聴者にとって不快
な発言をフィルタリングすることにより,コンテンツを安全に楽しめるようにすることを目的と
する.
2
本研究に関連する特許
米マイクロソフト社が 2004 年に出願した「Automatic censorship of
audio data for broadcast(放送用オーディオデータの自動検閲)」[2]
では,音声データに不適切な発言が含まれている場合にそれを自動的
に打ち切ることで,今まで人力で行われていた作業を機械化する手法
について書かれている.この中に書かれている機械化の利点は,オンラ
インゲームなどの多くの人間が同時に会話する場面などの,人力では
対応できない場合でも規制することができる点である.もう一つの利
点はただ単に不適切な発言を聞こえなくすることだけではなく,発話
者のデータを保持していれば発話者と同じ音声で不適切な発言を変換
してくれる点だ.この特許の仕組みを図 1 に示す(文献 [2] より引用).
入力された音声データと予め用意されている不適切でない正常な会話
データと比較し,不適切な単語があった場合はその箇所を修正し,そ
うでなければそのまま通すという仕組みである.比較をする際は音素
や単語が設定された閾値を超えるかどうかで判断している.
3
図 1: フローチャート
Julius
Julius[3] は Linux を含む Unix,Windows,MacOS など様々な環境で動作する高性能かつ高速
なオープンソースソフトウェアの汎用大語彙連続音声認識エンジンである.さらに Julius は文法,
単語を容易に登録することができるため,ユーザ独自の不適切な単語のフィルタリングを目指す
本研究ではこのソフトウェアを用いて研究を行うことが最適であると考える.
4
提案手法
提案する音声認識を用いたコンテンツフィルタリングの手法は,動画の音声をまず文章化し,そ
れを登録した不適切な単語と比較し,マッチした場合はそれをミュートにしたり,適切な単語に
変換するものである.動画の音声を文章化するだけではただ文字データになってしまうため,文
情 14-61
上山 真也
2016 年度 専門演習
2/2
章化したものに時間の情報を付加することで,ミュート,変換のタイミングを動画の音声と合わ
せることができると考えている.またフィルタリングする不適切な単語をテレビの放送禁止用語
だけでなく,それぞれが不快に感じる言葉を指定できるようにすることでより快適に動画を視聴
できるようになると考えている.
5
今後の課題
提案手法を実装したシステムが完成していないため,これからは実際にソフトウェアを構築し
ていこうと考えている.そのためには研究の要となる音声認識を行うソフトウェアである Julius
を使いこなせるようにならなければならない.しかし Julius をそのまま使うだけでは音声の認識
率が低いため,文法,単語の登録を行い本研究に対し最適化する必要がある.単語の登録は不適
切な単語のみを行えば良いと考えている.なぜなら本研究は不適切な単語に対してのみ処理を行
うものであるため,動画内の不適切な単語を認識することができればコンテンツを安全にするこ
とが可能である.単語登録を行わず,Julius がはじめから持つ辞書で音声認識を行った結果を以
下に示す.
✓
これ が 二千 二 中 沖縄 県 から , 今日 で 、 十 一 年 。
✏
日 一 回 、 二 の 折 に 、 。
沖縄 センサー 、この 激戦 その 対 と も すれ ば 、赤 から 黒 は
セル を お 膳 の その 姿 が あり ます が 。
✒
✑
これは YouTube の沖縄に関するニュースをパソコンで再生し,それを内蔵マイクで入力し,Julius
を用いて文字起こししたものである.見てわかるように正しい文章にはなっておらず,このままで
は不適切な単語を認識できない可能性が高い.これは動画コンテンツには音声だけではなく BGM,
効果音,他の動画の音が交じることがほとんどであるため,正確な文字起こしを実現するために
は音声以外の音を除去する処理が必要である.この処理を行う方法としては様々なフィルタを用
いることが挙げられる.フィルタにはハイパスフィルタ,ローパスフィルタ,バンドパスフィル
タ,バンドエリミネーションフィルタなどが存在し,これらを利用することで高域または低域の
周波数帯域の音の除去や,特定周波数帯域のみの通過または除去を行うことができる.フィルタ
を用いることで動画内から音声のみを抽出することができるため音声認識,文字起こしの精度向
上に繋がる.
音声フィルタリング機能を実装でき次第,動画コンテンツだけではなく,Web サイトなどのテ
キストコンテンツの不適切な部分を安全な言葉に変換する機能の実装を検討する.これによりイ
ンターネット利用者に不快な思いをさせず,より安全にインターネットを利用できるようになる
効果を期待する.
参考文献
[1] 統計情報-YouTube,https://www.youtube.com/yt/press/ja/statistics.html,2016 年
8 月 31 日確認.
[2] UnitedStatesPatent7,437,290,http://patft.uspto.gov/netacgi/nph-Parser?Sect1=
PTO1&Sect2=HITOFF&d=PALL&p=1&u=%2Fnetahtml%2FPTO%2Fsrchnum.htm&r=1&f=G&l=
50&s1=7,437,290.PN.&OS=PN/7,437,290&RS=PN/7,437,290,2016 年 8 月 31 日確認.
[3] 大語彙連続音声認識エンジン Julius,http://julius.osdn.jp/index.php,2016 年 8 月 31
日確認.
情 14-77
大倉 佳歩
2016 年度 専門演習
1/2
Drive-by Download 攻撃解析の支援アプリケーションの実装
1
情 14-77
大倉 佳歩
指導教員
小林 孝史
はじめに
近年,インターネットは様々な人々が利用する便利なものとなっている.その一方でインター
ネット利用者や企業に不利益を与えるマルウェアも増加している.個人情報が漏洩したりデータ
が消えてしまったりなど,被害は深刻である.
本研究では,2000 年代後半から現在にかけて被害の多い Drive-by Download 攻撃(以下 DbD
攻撃)の解析について研究を行う.
2
Drive-by Download 攻撃
DbD 攻撃とは,脆弱性を保持するソフトウェアを利用しているユーザを対象に,ユーザに気づ
かれないようにマルウェアをダウンロードさせる攻撃手法のことである.DbD 攻撃では,脆弱性
を持つ正規の Web サーバを利用し,攻撃者の Web サーバへリダイレクトされるよう改ざんを行
う.一般ユーザは Web ページが改ざんされたとは知らずにアクセスすることでマルウェアをダウ
ンロードさせられる.ダウンロードの際にはユーザに知らせるようなポップアップは表示されず,
またユーザの許可なしにダウンロードが開始されてしまう.そのため,非常に危険な攻撃である
とされ,現在でも対策方法が研究されている.
3
先行研究
吉井の研究 [1] では,DbD 攻撃の解析に有効なアプリケーションである PADDAR の開発を行っ
ている.PADDAR は DbD 攻撃の見えにくいリダイレクトの全体像を木構造として視覚化するこ
とで,DbD 攻撃の解析支援を行う.DbD 攻撃は多くのリダイレクトを行うため,深い階層の木構
造となる.この木構造を後に再構築しようとすると非常に困難になることが多い.しかし HTTP
セッションを PADDAR によって木構造化させ視覚的に見せることで,どの Web ページからどの
Web ページへリダイレクトが発生したかを掴みやすくすることができる.そのため,PADDAR
は解析に役立つアプリケーションである.
4
システムの概要
図 1: PADDAR スタート画面
情 14-77
大倉 佳歩
2016 年度 専門演習
2/2
PADDAR のスタート画面を図 1 に示す.PADDAR はインポートモードとキャプチャモードの
二つの機能を持っている.インポートモードは既存のトラフィックデータを読み込み,HTTP セッ
ションの木構造化を行うモードである.キャプチャモードは,リアルタイムにトラフィックデータ
を収集,及び解析を行うモードである.キャプチャモードではパケットキャプチャを行うネット
ワークインターフェースをユーザが選択し,その後四つの設定を行う.一つ目はパケットキャプ
チャ時のトラフィックデータの視覚化を行うかである.行わない場合はトラフィックデータ出力設
定を行うことで,PADDAR を単なるパケットキャプチャとして扱うことが可能である.二つ目は
HTTP セッションの解析精度を高める設定である.PADDAR では解析する際に JavaScript を利
用するが,JavaScript 実行時は膨大な時間を要することが考えられる.そのため,JavaScript の
実行を行わない解析ができるようにしている.三つ目はキャプチャの開始と同時に Web ブラウザ
を実行するかの設定である.四つ目はキャプチャしたトラフィックデータの出力設定である.一
度木構造化させたトラフィックデータを出力し,それをインポートモードで再度読み込むことで,
同じ木構造を得ることができる.
5
システムの実行
図 2: D3M2015 解析結果
PADDAR を実行する環境を構築した.その後,実際のトラフィックデータを使用して解析を行っ
た.使用するデータは D3M(Drive-by Download Dataset by Marionette)2015 である.D3M2015
には 2010 年から 2015 年までの DbD 攻撃に関するトラフィックデータが含まれており,DbD 攻
撃に関する研究を行う際によく使われるデータセットとなっている.PADDAR を用いて解析し
た結果を図 2 に示す.
6
おわりに
PADDAR は DbD 攻撃の解析に有効なアプリケーションである.PADDAR の機能であるイン
ポートモードで D3M2015 を利用しトラフィックデータを解析したが,もう一つの機能であるキャ
プチャモードでは多大な時間がかかることがわかった.これはリアルタイムにトラフィックデー
タを収集し解析しているためであるが,早急な対策が求められる DbD 攻撃ではこの時間をどう
短縮するかが今後の課題になる.また吉井が述べているように,PADDAR にはまだまだ改善の
余地がある.PADDAR の構造を見直して,精度をあげていくことが今後の課題である.
参考文献
[1] 吉井章,“Drive-by Download 攻撃解析における支援アプリケーションの開発”,平成 27 年度
関西大学修士論文.
情 14-82
大野 裕央
2016 年度 卒業研究
1/2
Web アクセスログに基づくファイアウォールの動的な制御に関する研究
1
情 14-82
大野 裕央
指導教員
小林 孝史
はじめに
近年,DoS 攻撃が増加していることが問題となっている.DoS とは Denial of Service の略称
であり,2000 年以降より認知されるようになった.DoS 攻撃は大量のパケットを送信することで
サーバに高負荷をかける攻撃,また脆弱性を狙った攻撃に分けられる.これにより,サービスの
可用性が低下し,最悪の場合サービスが提供できなくなる可能性がある.本研究では前者のサー
バに高負荷をかける攻撃の一種である SYN Flood 攻撃を,パケットフィルタリングのトークンバ
ケツフィルタを用いて防ぐ方法を実装し検証する.
2
SYN Flood 攻撃
SYN Flood 攻撃は 3-way ハンドシェイクを利用した攻撃である.3-way ハンドシェイクとは
TCP における接続を確立するための方法である(図 1).まずはじめにクライアントがサーバに
SYN パケットを送信する.サーバから SYN パケットを受信したサーバはその情報をメモリに記
憶させ,クライアントに SYN/ACK パケットを送信する.その後クライアントはサーバに ACK
パケットを送信し,サーバはこれを受信することで接続を確立する.3-way ハンドシェイクにおい
てクライアントからの ACK パケットがサーバに届かなかった場合,サーバは通信がタイムアウ
トするまで待ち続けなければならない(図 2).サーバは待機中の状態をメモリ上のバッファ領域
に保存しているため,この状態が多く生じるとサーバはメモリを使い切ってしまう.これにより
サーバに負荷がかかり,サーバの可用性が低下し,最悪の場合サービスが提供できなくなる可能
性がある.SYN Flood 攻撃の方法の一つとしては,送り元が IP アドレスを偽装した SYN パケッ
トを送信する方法がある.サーバは送り元の IP アドレスが偽装されているかを確認できないため
に,偽装されていた場合関係の無い IP アドレス宛に SYN/ACK パケットを送信してしまう.そ
れを受信したクライアントは SYN/ACK パケットを自分に関係無いものであると判断し,ACK
パケットを送信しない.これによりサーバは ACK パケットを待ち続けている状態になる.
図 1: 3-way ハンドシェイク
図 2: SYN Flood 攻撃
情 14-82
3
大野 裕央
2016 年度 卒業研究
2/2
先行研究
池渕の研究 [1] では,SYN Flood 攻撃をファイアウォールのパケットフィルタリングの手法で
ある,トークンバケツフィルタを使用して防ごうとした.これにより,一定時間ごとに送られて
くるパケットの量を制限し,サーバのメモリの消費を抑えることができる.
トークンバケツフィルタとはファイアウォールまでパケットが到達した際に,バケツに十分な
トークンが溜まっていればパケットがファイアウォールを通過できるシステムである.この時,パ
ケットの大きさに応じたトークンが消費される.しかし,バケツに十分なトークンが溜まってい
なかった場合にはパケットはファイアウォールを通過できない.これによりパケットの量を制限
できる.トークンを溜める速度(rate),バケツの大きさ(burst)は Web サーバのアクセスログ
を解析し,データを格納したデータベースから選択した日付のデータをもとに算出される.rate
は日付のデータから 1 日のアクセス数の平均値を求め,それを 1 日の時間を分単位で表した数字
である 86400 で割ることで求められる.burst は選んだ日付のデータから 1 秒間の最大アクセス
数の最大値を用いる.これをトークンバケツフィルタの設定値として使用する. 4
今後の展望
先行研究ではパケットの制限には成功しているが,SYN Flood 攻撃を受けている状態での正規
ユーザのアクセスが難しくなってしまう.サービスの継続という点では SYN Flood 攻撃を受けて
いる状態でも,正規ユーザが不便なくアクセスできる状態にしなければならない.そのためには
攻撃者の IP アドレスを特定して通信を遮断するという方法が考えられるが,IP アドレスを変え
られた場合や偽装されている場合などに対処できない.他の対策として,一つの IP アドレスから
一定以上のパケットが送られてきた場合,メモリを破棄する方法である.この方法であれば,パ
ケットがメモリを圧迫することがなくなる.これを実現するためには送り元の IP アドレスの特定
とメモリ上のパケットを破棄するシステムが必要である.IP アドレスはアクセスログで特定でき
るが,それをシステムに認識させる方法,メモリ上のパケットを破棄する方法があるのか調べな
ければならない.他の論文や実験資料などを調査し,トークンバケツフィルタ以外の方法を用い
たシステムを構築する. 5
研究の進捗
現在, 仮想マシンの作成を終えた.秋学期中に再現実験を行う.
6
おわりに
警視庁の資料 [2] に記載されているように,DoS 攻撃は SYN Flood 攻撃だけではなく,他にも
Smurf 攻撃や fraggle 攻撃など様々な攻撃が存在する.先行研究では SYN Flood 攻撃に絞った対
策であるが,他の攻撃にも対応できるシステムが必要となる.大きなサイズの UDP パケットを
送りつける UDP Flood 攻撃や大きな ICMP パケットを送りつける Ping Flood 攻撃においては,
先行研究のプログラムとリーキーバケットというネットワークに対してトラフィックを送信する
際に送信レートを制限するプログラムを組み合わせ,応用すれば対策できるのではないかと考え
ている.他の攻撃においては攻撃方法を調査していくとともに,対応したシステムの構築方法も
考えていかなければならない. 参考文献
[1] 池渕遼馬,“Web アクセスログに基づくファイアウォールの動的な制御に関する研究”,平成
25 年度関西大学卒業論文.
[2] 警察庁技術対策課,“DoS/DDoS 対策について”,https://www.npa.go.jp/cyberpolice/server/
rd env/pdf/DDoS Inspection.pdf,2016 年 9 月 7 日確認.
情 14-99
尾崎 幸也
2016 年度 専門演習
1/2
Drive-by Download 攻撃解析における支援アプリケーションの開発
1
情 14-99
尾崎 幸也
指導教員
小林 孝史
はじめに
近年,Drive-by Download 攻撃(以下,DbD 攻撃)の急増が問題視されている [1].DbD 攻撃
とはまず,攻撃者が正規の Web サイトに悪意のある JavaScript を埋め込み,そこに接続したユー
ザを不正な Web サイトへと秘密裏にリダイレクトさせマルウェアをダウンロードさせる.その後,
そのマルウェアを用いてブラウザやそのプラグインとして動作するソフトウェアの脆弱性をつき
バックドアなどを仕掛け,今度は情報の搾取や破壊のためのマルウェアをダウンロード及びイン
ストールさせる攻撃である [2].
本研究では,この DbD 攻撃の解析を行う際に攻撃の一連の流れを木構造として表し,視覚化
するシステムを実装する.これにより,DbD 攻撃の発生に至るまでの経過を容易にたどることが
でき,攻撃解析の時間短縮に有意に働くことが見込める.
2
先行研究
吉井の研究 [3] では,DbD 攻撃を解析する際に,まず Web ページへアクセスした結果発生した
トラフィックデータ内に含まれるすべての TCP パケットから,HTTP セッションを抽出する.次
に,抽出したそれらから HTTP リクエストパケットならびに HTTP レスポンスパケットを参照
し,最後にそれらを復元し木構造で視覚化するシステムを開発した.これらの機能を実装するこ
とで,攻撃の詳細の解析だけでなく,悪意のあるリダイレクトが発生している Web ページの特定
及びサービスの停止といった,初期対応の点でも効率化が期待出来る.
3
システムの概要
本システムはキャプチャモードとインポートモードの二つのモードを用意している(図 1).
キャプチャモードはリアルタイムにトラフィックデータを収集し,それらの解析を行う.このモー
ドではまず,ユーザがネットワークインタフェースを選択する.このネットワークインタフェー
スは,本システムが動作しているコンピュータの環境に依存する.その後,ユーザは四つの設定
を行う必要がある.一つ目はパケットをキャプチャしている間にトラフィックデータを視覚化す
るかの設定である.視覚化しないことで単なるパケットキャプチャツールのように使うことがで
きる.二つ目は HTTP セッションの解析精度の設定である.本システムは,HTTP セッション
の解析を行う際,HTTP パケット情報を基に関連性を構築したあとに JavaScript を実行させるこ
とで,JavaScript で生じた HTTP セッションも解析する.だが,環境やトラフィックデータの大
きさによっては JavaScript の実行に膨大な時間がかかる可能性がある.これを回避するために,
JavaScript を実行しないという設定も可能である.しかし,JavaScript によって生じた HTTP セッ
ションを解析できない.三つ目はキャプチャの開始とともに Web ブラウザを起動するかの設定で
ある.四つ目はキャプチャしたトラフィックデータの出力設定である.トラフィックデータを出力
することでより詳細な解析を行えることに加え,インポートモードで読み込むことで同じ木構造
での視覚化結果を得られる.
インポートモードでは,既存のトラフィックデータを基に,HTTP セッションを木構造で視覚
化する.このインポートモードでは,読み込むトラフィックデータが保存されているディレクト
リまでのファイルパスと,上述した解析精度の設定を行う.
情 14-99
尾崎 幸也
2016 年度 専門演習
2/2
図 1: モード選択画面
図 2: 解析結果
4
システムの評価
本システムを実装,DbD 攻撃のデータセットである D3M(Drive-by Download Dataset by
Marionette)2015 の解析を行った.このデータセットの一部を本システムで解析した結果を図 2
に示す.
解析結果より,DbD 攻撃による HTTP セッションを木構造で視認することが出来た.さらに,
ファイルのアイコンのある HTTP セッションをクリックすることで木構造で表示する深度を変え
ることが出来た.また,解析精度の変更や環境の設定が可能であるため,解析者が状況に応じて
使い分け,解析をさらに効率化出来ると考えられる.
5
今後の課題
現在のシステムでは HTTPS 通信でのセッションをキャプチャすることができない.そのため
HTTPS 通信を用いた攻撃が発生した場合,パケットの解析ができない.これを解決するために,
本システムを MITM Proxy(Man In The Middle Proxy)として実装する方法がある.しかし,
MITM Proxy を通さずに行った HTTPS 通信のトラフィックデータは解析できないため,実際に
Web ページへアクセスしトラフィックデータの収集と解析を行うキャプチャモードのみ有効であ
ると言える.
また,解析結果を木構造で視覚化した際,それぞれの通信に含まれる JavaScript や HTML の
ソースコード,画像等の詳細な表示機能を有していない.詳細情報の表示のような機能性の向上
により,本システムは DbD 攻撃解析の補助ツールとしての有用性を向上させることができると考
える.
参考文献
[1] IBM Tokyo SOC 情報分析レポート,http://www-935.ibm.com/services/jp/ja/it-services/
soc-report/,2016 年 9 月 6 日確認.
[2] LANch BOX online Magazine,http://www.macnica.net/lanch/lanch10sp/si01.html/,2016
年 8 月 27 日確認.
[3] 吉井 章,“Drive-by Download 攻撃解析における支援アプリケーションの開発”,平成 27 年度
関西大学修士論文.
情 14-162
栗山 淳一郎
2016 年度 専門演習
1/2
文章題図式化アプリケーションの開発に関する研究
情 14-162
指導教員
1
栗山 淳一郎
小林 孝史
はじめに
ベネッセの調査 [1] によると,小学校高学年になるにつれて,算数・数学に苦手意識を持つ児童
が多くなっているという.ただ計算をする問題に比べて,文章題は頭の中で考えをまとめる必要
があり,特に文章題を苦手とする生徒・児童が多い.また,その時点での理解度によって中・高
等学校での数学への理解の差にもつながる.そこで,本研究では文章題を図式化するアプリケー
ションの開発を行い,文章題から視覚的に図形を理解することで文章題への苦手意識をなくし,よ
り興味を持てるようにサポートすることを目的とする.
2
先行研究
谷村の研究 [2] では,VisualBasic によるアプリケーション開発を行っている.形態素解析器で
ある ChaSen によって文章を形態素ごとに分割し,解析結果から文字列検索を行い,合致した単
語を元に図式化を行う.しかし問題点として,図形描画システムとの連携が取れておらず,文章
内の数値の変化に対応できていない点が挙げられる.
また,西村の研究 [3] では,谷村の研究を元にして,形態素解析機能に焦点を当てて改善を行っ
ている.ただし形態素解析器は用いず,Java の BreakIterator クラスを使用している.理由とし
て,ChaSen などの形態素解析器では,文章によって同じ単語でも解析結果が異なる場合がある
からである.解析精度が高い BreakIterator を使うことで,より安定性を高めている.そして,文
章題を単語毎に分解し,正規表現によってキーワードを検索し出力することで,不要な単語を取
り除き,図形描画に必要な数値,単位,図形の種類などの情報を抽出している.
さらに,田中の研究 [4] では,谷村の研究を元にして,図形描画機能に焦点を当てて改善を行っ
ている.描画には,JavaScript の Canvas 機能を使用している.図形の種類は,三角形,四角形,
円弧に対応しており,図形ごとのページを選択し,テキストボックスに必要な数値を入力するこ
とで描画を行う.入力する数値のパターンは複数用意されており,三角形を例にあげると,三頂
点の各座標,一辺両端角,二辺狭角,三辺などの方法に対応している.
3
本研究の概要
先行研究では,それぞれのシステムを連携させることが考慮されていなかった.このことから,
本来の目的である文章題の図式化が達成できていない.よって本研究では,先行研究のプログラ
ムを参考に,一番の課題である文章題から抜き出した数値を図形描画システムに渡す機能を完成
させることを目指す.
4
実装方法
本研究では Java によるアプリケーション開発を行う.文章解析には BreakIterator クラスを,図
形の描画には Graphics クラスを用いる.まず,テキストボックスに入力された文章を BreakIterator
によって単語毎に分割する.そのうえで,図形描画に必要である図形の情報と数値を取り出す.次
に,図形の情報から数値を適切なクラスへと渡す.また,抜き出した数値から図形描画に必要な
数値へと変換する必要がある.例をあげると,三角形の描画には各頂点の座標が必要となるので,
三つの座標に変換を行う.
情 14-162
栗山 淳一郎
2016 年度 専門演習
2/2
図 1: 本システムにおける長方形の描画
5
システムの動作
本研究のシステムでは,入力した文章題からの図形の描画が可能となっている.辺の長さが 9cm
と 12cm の長方形の描画する例を図 1 に示す.このほかにも三つの座標からなる三角形の描画に
も対応している.
6
今後の課題
本研究のシステムにはいくつか問題点が挙げられる.まず,文章内に複数の図形が含まれてい
る場合に正しく描画できない点である.この場合,数値がどの図形の要素であるかを正しく判別
するシステムを実装する必要がある.次に,文章内の数値が大きすぎると,図形がウインドウを
はみ出てしまう点である.数値が大きすぎる場合,図形の縦横比はそのままにサイズを調整する
ことで対応が可能である.今後の展望として,現時点で長方形と三つの座標からなる三角形に対
応済みであるが,他の図形にも対応できるように改良を行う.また,図形を補足する単語や値を
追加することで,より視覚的な分かりやすさを向上させる事を考えている.
参考文献
[1] ベネッセ総合教育研究所,“小学生の計算力に関する実態調査 2013”,http://berd.benesse.
jp/berd/center/open/report/keisanryoku/2013/pdf/keisanryoku_2013_data_12.
pdf,2016 年 9 月 6 日確認.
[2] 谷村加奈美,“文章を視覚的に捉えるためのソフトウェア開発に関する研究”,平成 22 年度関
西大学卒業論文.
[3] 西村拓実,“文章題視覚化アプリケーションにおける形態素解析システムの提案”,平成 24 年
度関西大学卒業論文.
[4] 田中大河,“マルチプラットフォーム型文章視覚化ソフトウェア開発に関する研究”,平成 24
年度関西大学卒業論文.
情 14-175
小西 達也
2016 年度 専門演習
1/2
IRC を利用するボットマルウェアの活動抑制を目的とした IPS の実装
情 14-175
小西 達也
指導教員
小林 孝史
1 はじめに
近年,金融機関の機能停止を狙った DDoS 攻撃などの様々な攻撃により,脅迫による金銭の要
求やサービスの停止などが引き起こされ,多くの経済的な損失がもたらされている [1].そして,
このような攻撃を行うためにボットやボットネットと呼ばれるものが存在している.
そこで,本研究ではボットによる攻撃に対して識別子により正規ユーザかボットかの判断を行
い,通信の通過,遮断を実行する事でボットの活動を抑制する検知システムを実装,検証する.
2 ボット
ボットとは,感染したコンピュータを外部から遠隔操作するマルウェアの一種である.ボット
は感染したコンピュータを C&C サーバにつなげ,ボットネットと呼ばれるネットワークを構築す
ることを最大の特徴としている.その他にも,ハーダ(攻撃者)からの命令により自身をアップ
グレードする事でマルウェア検知ソフトウェアから逃れる機能など多種多用な機能や特徴を持っ
ている.
コンピュータに感染したボットは,次の順番で不正な操作を行っている.まずはじめにボット
は,ハーダが指揮する C&C サーバに IRC クライアントを使って接続し,JOIN コマンドを送り
ハーダが用意した特定のチャンネルに参加する.その後,チャンネルでハーダからの命令を待ち,
命令が渡されるとそれを実行する.この時,命令は PRIVMSG という IRC クライアントで会話
の時に使われるコマンドを利用して行われている.その結果,命令は普通のメッセージで行われ
るため,そのチャンネルにアクセスした複数のボットで共有できる.これを利用して,多くのボッ
トに一斉に処理をさせ,DDoS 攻撃などの攻撃を同時に実行することを実現している.
3 先行研究
酒井の研究 [2] では,ボットがハーダからの命令を最も早く受理できる状態になるのは NICK,
USER コマンドによる通信後であったことに注目している.そこで,NICK コマンドの実行時に
通信するパケットに特定の識別子をつけることでボットかを判別しようとしている.この機能によ
り,IRC サーバにログインを試行しているユーザが正規のユーザであるかを認証する効果とハー
ダによる命令を阻止する効果が期待できる.
4 本システムの概要
本システムは,ident コマンド,register.c,filter.c,specify_file.sh の四つのプログラムによ
り構築されている.提案システムの構成を図 1 に示す.
まずはじめに register.c は,ユーザが入力した識別子の文字数と SHA512 で変換した識別子の
ハッシュ値を identifer.conf に登録する機能がある.次に ident コマンドは,IRC サーバへの接
続時に起動するコマンドである.このコマンドは,起動時に register.c で登録した識別子と同じ
ものを入力する事で通信パケットに識別子を付加して送信できる.この機能では,ユーザ本人し
か知りえない識別子の情報を使う事で正規のユーザである事を証明する認証機能を実現している.
filter.c は,NICK コマンドのパケットに対して処理をするプログラムである.filter.c では,
iptables で NFQUEUE を設定することによりパケットをフックし,そのパケットの正当性を判
情 14-175
小西 達也
2016 年度 専門演習
2/2
図 1: 提案システムの構成
断するのが主な機能である.本システムでは,取得されたパケットの識別子をハッシュ値に変換
して register.c で登録した識別子のハッシュ値と比較し,同じであれば識別子が IRC サーバから
無効な文字と判断されるのを防ぐために\r へ変換する.この結果,データ長が変化することから
TCP チェックサムが無効になるので,その値を再計算した後,パケットを通過させる.識別子が
異なる場合はパケットを破棄し,送信元ポート番号を specify_filter.sh に渡す.この機能により
識別子の正誤性からパケットの正当性を判断し,ボットの検知,遮断を実現している.
specify filter.sh は,ログ機能,警告メール機能,ボット実行ファイルの特定機能を実現してい
る.このログは,Audit というログシステムと/proc 上の情報を元に作成されており,様々なボッ
トに対応した処理を行える.この機能により,ボットの実行ファイルの隠蔽機能を検出しログに
記録する機能を実現している.
提案システムを導入した感染クライアントに対する実験では,四つのボット検体に対して送信
パケットの遮断とボットの実行ファイルの特定に成功している.
5 再現実験の進捗
Python には多くのライブラリが存在し,様々な OS で実行できるため,本システムに対する
新しい機能の追加や OS 依存問題の解決の足掛かりになると考え,C 言語で書かれた本システム
のソースコードを Python で書き直す作業を行った.秋学期では,隔離された仮想環境を構築し,
ボットの検体を使用した再現実験を行い,実際のボットによる挙動を確認する作業を通してボッ
トの特徴を洗い出す.
6 今後の展望
先行研究では,Linux システムに対する攻撃のみを想定して作られている.そのため,iptables
や/proc といった Linux システムにしか搭載されていない機能を利用している.しかし,実際の
ボットは,Microsoft Windows に対するものも多く存在する.このことから,OS に依存するこ
となくボットを検出・除去するシステムを作成する必要があると考えられる.
参考文献
[1] プライスウォーターハウスクーパース株式会社,“諸外国の金融分野のサイバーセキュリティ対
策に関する調査研究”,http://www.fsa.go.jp/common/about/research/20150706-4/01.pdf,
2016 年 9 月 3 日確認.
[2] 酒井亮佑,“IRC を利用するボットマルウェアの活動抑制を目的とした IPS の実装”,平成
27 年度関西大学卒業論文.
情 14-215
重年 香奈
2016 年度 専門演習
1/2
静的コンテンツの負荷要因判別システムに関する研究
情 14-215
重年 香奈
指導教員
小林 孝史
1 はじめに
近年,インターネットの普及に伴ってネットショッピング等が流行し,多くの人が同時に同じ
Web ページにアクセスする機会が増えている.その際,何らかの要因により一つの Web ページ
に瞬間的にアクセスが集中した場合,サーバへの高負荷が原因で Web ページが閲覧できない状態
になったり,サーバが一時的にダウンするなどして,Web サイトの管理者がビジネスチャンスを
逃してしまう可能性がある.そういった事を避けるためには,サーバ管理者は,サーバに負荷が
かかった際に、なるべく早くその要因を判別し,対応を行う必要がある.
そこで本研究では,コンテンツ毎の負荷監視を常時行い,負荷要因となっているコンテンツを
サーバ管理者にリアルタイムで知らせるシステムを実装する.これによりサーバ管理者が容易に
負荷要因を判別でき,サーバに負荷がかかった際に即座に対応できるようになる.
2 先行研究
岡邑の研究 [1] では,HTTP 通信を対象としてサーバの負荷状態を監視し,サーバの負荷が高
まり HTTP リクエストの応答時間が一定以上になった時に負荷要因となっているコンテンツを判
別し,管理者にその結果を通知している.管理者は動的な監視情報をリアルタイムに得る事によっ
て,素早く負荷への対処を行う事ができるようになると期待できる.
3 システムの概要
本システムの動作フローを図 1 に示す.管理者はまず,サーバ上で HTTP リクエストの応答時
間を監視するプログラムを起動する.起動された監視プログラムは,10 秒毎の HTTP リクエスト
の応答時間とサーバのアクセスログの行数をそれぞれ六つの変数へと格納し,合計 1 分間のデー
タを記録する.そして 10 秒毎に最新のものと入れ替える事によって,最新 1 分間のデータを常に
記録し続ける.この時,1 分間の応答時間の全てが規定値以上になった場合,負荷要因判別プロ
グラムを起動する.そして 1 分前のアクセスログの行数を参照し,最新 1 分間のアクセスログを
抽出する.その後,この記録からサーバにあるコンテンツ毎のアクセス数をそのサーバのプロン
プト上に表示することで管理者に負荷状況を通知する.
4 実験と考察
岡邑の実験を参考に,実験の前準備として,サーバ内に 200 バイト,50 キロバイト,100 キロ
バイト,200 キロバイトの静的コンテンツをそれぞれ一つずつ用意した.ここではそれぞれをコ
ンテンツ A,B,C,D とする.また,HTTP リクエストの応答時間計測用の静的コンテンツを一
つ用意した.このコンテンツへの応答時間を計測する事によって,サーバの負荷が高まっている
かどうかを判別する.負荷要因判別プログラムの起動条件は,1 分間の HTTP リクエスト応答時
間の全てが 100 ミリ秒を超えた時,もしくは 10 秒で 1000 ミリ秒を超えた時としている.なお,
負荷テストには JMeter を使用する.
実験は,コンテンツへのアクセスが平均的にあった場合と,コンテンツ A にアクセスが集中し
た場合において,コンテンツ毎のアクセス数を出力する判別システムが正常に稼働するかどうか
の確認を行った.ここでは前者の実験を実験 1,後者の実験を実験 2 とする.表 1 にこの実験結
情 14-215
重年 香奈
2016 年度 専門演習
2/2
A
A
1
1
P
1cT0H
16
6
1
6
1
1 T
1cT0H
a
16
T
1
6
NO
H
1
T
YES
P
図 1: 負荷要因判別システムの動作フロー
果を示す.なお,この表は本システムを起動することによって得られたコンテンツ毎のアクセス
数を総アクセス数を元に割合で示したものである.
この結果から,実験 1 ではコンテンツ毎のアクセス数が平均的になっている事が,実験 2 では
コンテンツ毎のアクセス数の偏りがそれぞれ抽出できており,本システムの正常な挙動を確認で
きた.これにより,本システムを用いる事で管理者はサーバに負荷がかかった際に,即座に負荷
要因となっているコンテンツの判別を行う事が可能であると考える.
表 1: 本システムで計測したコンテンツ毎のアクセス数割合
実験 1
実験 2
1 回目
2 回目
3 回目
4 回目
1 回目
2 回目
3 回目
4 回目
コンテンツ A
25.55%
26.34%
26.01%
25.45%
48.18%
48.08%
49.75%
49.61%
コンテンツ B
25.30%
25.27%
25.71%
25.37%
22.19%
18.39%
17.12%
17.31%
コンテンツ C
24.79%
24.19%
25.08%
24.76%
18.39%
18.04%
16.91%
16.93%
コンテンツ D
24.36%
24.19%
23.20%
24.42%
11.25%
15.48%
16.22%
16.14%
5 今後の課題
本システムでは,高負荷がかかり負荷要因判別プログラムが起動した場合でも,その結果をサー
バのプロンプト上に表示するだけであり,管理者にメール等で通知する仕組みは実装されていな
い.そのため管理者は,このシステムを起動している間は常にサーバの前にいる必要があり,管
理者に負担を強いる仕組みとなっている.したがって,本システムを実際のサーバ管理で用いる
場合には,管理者がサーバの前にいない時でも,負荷がかかった際に管理者に何らかの形で通知
する仕組みを本システムに組み込まなくてはならない.
また本システムでは負荷要因を通知するのみであり,その後の対応方法については管理者に一
任する形となっている.高負荷への対応方法を負荷要因とともに管理者に通知したり,負荷を検
知した時点でその負荷に対応するようなプログラムを自動で起動する等,負荷を検知した後まで
フォローできるような仕組みを考えていく必要がある.
参考文献
[1] 岡邑聡祉,“静的コンテンツの負荷要因判別システムに関する研究”,平成 24 年度関西大学卒
業論文.
情 14-380
播磨 尚希
2016 年度 専門演習
1/2
Drive-by Download 攻撃における識別器の再学習用教師データの提案
情 14-380
播磨 尚希
指導教員
小林 孝史
1 はじめに
近年,攻撃者によって改ざんされた Web ページにアクセスしたユーザに,マルウェアを強制的にダウン
ロードさせる Drive-by Download 攻撃が脅威となっている [1].この攻撃は,攻撃者が改ざんした Web
ページにアクセスしたユーザをリダイレクトによって攻撃者の Web ページに誘導し,ブラウザやその拡張
機能の脆弱性をついた悪意あるコードにより,強制的にマルウェアをダウンロードさせるものである.
この攻撃への対策として,マルウェアのダウンロードを実行するスクリプトを無効化する手法と,悪性
ページへのアクセスを防ぐ方法があげられる.しかし,多くの攻撃コードに用いられる JavaScript 等のス
クリプトは Web 上の多くのコンテンツに利用されており,無効化は現実的ではない.そのため,悪性ペー
ジを検知し,アクセスを防ぐ取り組みが多くなされている.
攻撃に使用される一連の悪性ページをブラックリスト化する手法では,短期間で動的に変化,消失する
攻撃サーバに対応することが困難である.この問題を解決するには,日々Web ページをクローリングし,
新たな Drive-by Download 攻撃サーバを特定する必要がある.しかし,この作業を人力で行うことは大
変な負担であり,急増する攻撃の速度に追いつけない可能性がある.このことから,自動的に Drive-by
Download の攻撃サーバを検知する手法が求められる.
2
Drive-by Download の検知・特徴ベクトルの学習
Prophiler[2] 等,従来の Drive-by Download の悪性判定では,HTML,JavaScript,URL それぞれに
対して悪性判定を行う.HTML に対してはタグの出現頻度や小さなエレメントの数を,JavaScript に対
しては関数の出現回数や難読化といったスクリプトのエントロピーを,URL に対しては特徴的な文字列や
ドメインに紐づく IP アドレス数等を特徴ベクトルとする悪性判定を行う.
しかし,どの手法も単独では動的に変化する特徴に対応することが困難である.原因としては,動的に
変化する特徴に対応するためには再学習が必要である一方で,教師データとなる新たな特徴ベクトルを持
つ悪性ページを既存の特徴ベクトルを用いて自動で発見することは困難であり,人力で教師データを用意
するには多大なコストを要することが挙げられる.
3 再学習の自動化を実現する識別器
芝原らの研究 [3] では,自動収集可能であり攻撃者によって変更されにくい情報である,多段のリダイ
レクトの構造的類似性に基づき悪性ページを検知する.リダイレクトの情報と Web ページごとの悪性・良
性ラベルは,実ブラウザ環境を利用し悪性判定を実施する高対話型ハニークライアントによって自動的に
収集できる.そのため,この手法では大量のデータに基づく定期的な再学習が可能となる.
この研究では,リダイレクト元の URL,リダイレクト先 URL の他,HTTP ステータスコード 300 番
台や iframe タグ・script タグによるリンク等のリダイレクトの手法を用い,悪性・良性ページにおける
リダイレクト構造の特徴量を算出する.また,リダイレクト構造は URL をノード,リダイレクトをエッ
ジとする木構造を持つデータとして表現する.この木構造から特徴量に基づき部分木を抽出し,その一致
度合いに基づくリダイレクトの構造的類似性を算出することで悪性判定を行う.この際,式 1 で表される
Jaccard 係数を用い,部分木 Ri と Rj それぞれから抽出した部分木に共通する部分木数と,部分木の種類
数の割合で類似度を算出する.なお,|R| は部分木の数である.
S(Ri , Rj )=
|Ri ∩ Rj |
.
|Ri ∪ Rj |
(1)
情 14-380
播磨 尚希
2016 年度 専門演習
2/2
この類似度に基づきクラスタリングを行う.また,各クラスタ中から,クラスタ内の全てのリダイレクト
に共通な部分木の集合を抽出する.そして,リダイレクト R と各クラスタから抽出した共通部分木 Tci と
の類似度を特徴ベクトルとし,識別器を構築する.
3.1 芝原らの識別器の性能評価
芝原らの研究では,識別器の構築に利用する教師データの取得期間を変動させることにより,適切な教
師データの収集期間と再学習頻度を評価した.教師データの収集期間が 6ヶ月から 9ヶ月のときに正答率が
0.998 と最高になり,長期間のデータを使用した場合では正答率の低下が観察された.そのため,芝原ら
は 6ヶ月間の学習期間を適当な期間だとしている.加えて,再学習に適切な頻度に関し,学習後 3ヶ月を経
過すると正答率が 0.9 を下回ることから,3ヶ月ごとに再学習が必要であると考えている.
また,この研究では一部正答率が低下している期間がある.この際に誤識別したページは,最初にアク
セスした URL に攻撃コードが書かれているページであった.これは,悪性ページの収集に公開ブラック
リストに掲載されている URL を利用したため,本来ならばリダイレクト後にたどり着くはずの悪性ペー
ジの URL が多く含まれていたためだと考えられる.
4 提案手法
攻撃コードが含まれるページに直接アクセスするケースを検知できないという問題は,攻撃の取りこぼ
しにつながる.これを防ぐため,リダイレクトの構造的類似性を特徴ベクトルとした芝原らの識別器によっ
て悪性と判断されたページを教師データとし,Prophiler 等のコンテンツの特徴をベクトルに基づき学習
する識別器を再学習させる手法を提案する.
芝原らの研究によれば,学習から間がない環境においては,芝原らの手法よりも Prophiler の方が高い
精度で悪性ページを検知している.また,悪性ページの識別に用いられるコンテンツの特徴傾向は 3ヶ月
から 6ヶ月で変化していることも判明している.そのため,Prophiler によるこれらの特徴量に着目した悪
性ページの識別精度は時間経過とともに大きく低下し,精度を維持するためには 3ヶ月ごとに再学習が必
要となる.しかし 2 節でも述べた通り,コンテンツの特徴傾向を用いた悪性ページ検知手法のみでは,継
続的に再学習を行うための教師データの収集は困難である.そこで,教師データの収集を芝原らの手法を
用いて行うことにより,継続的に取りこぼしの少ない悪性ページの検出が可能な識別器を構築できると考
えている.
5 今後の展開
前節で述べたシステムは現状構築できていない.まずは,教師データとしてデータセットを利用する形
で,リダイレクトの構造的類似性に基づく識別器と Prophiler の実装を目指す.また,ブラックリストに
登録されたページをクロールし,悪性ページの特徴を取得するハニークライアントの構築も目指す.先行
研究では高対話型が用いられたが,後の考察にて,低対話型でも情報収集可能としているので,より高速
に Web ページを解析可能な低対話型を構築する.また,現在の構想では芝原らの識別器と Prophiler の識
別器の二つを順に学習・運用する必要があり,トラフィックや処理速度の点で不利な点があると考えている
ため,二つのシステムをどのような形で組み合わせていくかの検討も今後必要となる.
参考文献
[1] 猪股秀樹,“2015 年 下半期 Tokyo SOC 情報分析レポート 3 章”,日本日本アイ・ビー・エム株式会
社 マネージド・セキュリティー・サービス,2016 年 2 月 26 日発行.
[2] Davide Canali,Marco Cova,Giovanni Vigna,Christopher Kruegel,“Prophiler: A Fast Filter
for the Large-Scale Detection of Malicious Web Pages” ,the International World Wide Web
Conference Committee (IW3C2), ACM 978-1-4503-0632-4/11/03, 2011.
[3] 芝原俊樹,八木毅,秋山満昭,高田雄太,矢田健,“リダイレクトの構造的類似性に基づく悪性 Web
ページ検知手法”,情報処理学会シンポジウムシリーズ ,Vol.2015,No.3,pp.496-503,2015.
情 14-400
藤崎 奎伍
2016 年度 専門演習
1/2
パーミッションを利用したセキュリティ評価支援ツール
1
情 14-400
藤崎 奎伍
指導教員
小林 孝史
はじめに
近年,スマートフォンが世界的に普及し人々の生活が便利になり,多くの人が Android 向けア
プリケーション(以下,アプリ)を利用している.アプリが普及するに伴いマルウェア感染を目
的とするアプリの総数は徐々に増え始め,すでに感染している端末も多く存在し,早急に対策す
べき情報セキュリティの問題となっている.
マルウェアに感染した端末は,個人情報の外部漏洩や,第三者による端末ロック,広告画面へ
のリダイレクトの被害が確認されている.被害を未然に防ぐためには,ユーザ自身がアプリの危
険性を判断し,解析ツールを用いて不正アプリか否かを判断する方法がある.本研究では,アプ
リ開発においてユーザに開示しなければならない情報とパーミッションの組み合わせによって不
正アプリかどうかを判断する支援アプリについて言及する.
2
パーミッションの権限
正規ルートからアプリをインストールする際には,アプリが利用する権限をユーザに開示する義務
があり,ユーザが許可しない限りはアプリはダウンロードされない仕様となっている.GooglePlay
によるアプリのパーミッションの表示例を図 1 に示す.この例では,ダウンロードしようとしてい
るアプリが連絡先や位置情報,画像ファイルなどのデータの利用を要求していることをユーザに
開示している.もし,アプリがこれらのデータを利用しないことが明白だと推測される場合,当
該のアプリは不正アプリの可能性が高くなる.だが,実際のところ一般ユーザが機能のパーミッ
ションの組み合わせで不正アプリかどうかを見抜くのが困難である上,そもそも図 1 のような機
能のパーミッションを注視せずにインストールしてしまうユーザが後を絶たない.
図 1: パーミッションの表示例
3
先行研究
松崎らの研究 [1] では,危険性を調べたいアプリをサーバにリクエストした後,アプリの機能,
動作やパーミッションを分析する仕組みを提案している.この研究では,apktool を利用すること
で apk ファイルの解析を可能にし,解析対象ファイルを smali 形式で出力する.出力されたコー
ドをサーバが Java コードと照らし合わせることで静的解析を行い,解析で得られた結果は SQL
を使ったデータベースに蓄積されると共に,Web 上で手軽に閲覧できるようにする.
喜多らの研究 [2] では,ユーザのレビューとパーミッションの組み合わせを利用したセキュリ
ティ評価システムを提案している.これは,パーミッションの組み合わせにユーザのレビューを
加味することによって,アプリの危険度判断をより正確にしている.この研究では,レビューを
情 14-400
藤崎 奎伍
2016 年度 専門演習
2/2
positive と negative に分類し,それぞれの数と,ユーザがレビューを閲覧した時のレビューに対
する評価を数値化する.数値化で得られるアプリの危険性とパーミッションの組み合わせの二つ
の指標から,不正アプリか否かを判断する.解析結果の例を図 2 に示す.
図 2: 解析結果の表示例
4
先行研究の問題点
パーミッションの組み合わせで不正アプリか判断するアプリケーションは secroid として Web
上に公開されているが,secroid は解析を伴わず,パーミッションだけで危険性を判断する.アプ
リが本来必要とする権限とパーミッションとの関連性は評価に影響を与えないために,セキュリ
ティ面での対策としては充分ではない.
松崎らの研究では,調査対象のアプリの内部構造を解析によって明らかにした上,アプリの危
険性を判断する.この方法はアプリが本来必要とする権限とパーミッションの利用目的の関連性
を結び付けることで,解析の危険度評価に影響を及ぼし,精度の高いツールになると考えられる.
しかしながら,smali 形式のファイルからの解析方法が確立されていないため,一般的に実装の難
易度が高いといえる.
喜多らの研究では,アプリ評価に複数の検知手段を用いることで,不正検知率の向上を図る研
究を行っている.提案された手法では,危険度評価の基準点が明白な上,著者にとっても実装が
行いやすい.しかし,パーミッションの組み合わせだけで判断を行う点,ユーザのレビューが主
体となるため,評価の集まらない間は不正アプリか判断することが難しいといった点が問題点と
して挙げられる.
5
今後取り組む課題
本稿で取り上げた研究は,アプリのセキュリティ対策としては非常に有効なものであると考え
られるが,実装と精度向上の面ではまだまだ議論の余地があると思われる.今後取り組むべき研
究として,セキュリティ支援アプリケーションの開発を挙げる.アプリ開発についての基礎知識
は春学期を通じてある程度習得したため,実装のためのアプリ構成やパーミッションとユーザ評
価の二つの判断基準を持ち合わせたアプリの開発を主に行い,不正アプリの対策について研究し
ていくことが今後の課題である.
参考文献
[1] 松崎 悠太,千石 靖,“Android アプリの危険性を見分ける支援ツールの提案”,研究報告コ
ンピュータセキュリティ(CSEC),2015-CSEC-68,pp.1-6,2015-02-24.
[2] 喜多 義弘,久保田 真一郎,朴 美娘,岡崎 直宣,“Android OS における不正アプリケーショ
ン取得防止のためのセキュリティ評価システムの提案”,コンピュータセキュリティシンポジ
ウム 2013 論文集,Vol2013,pp.208-215,2013-10-14.
情 14-432
俣野 剛志
2016 年度 専門演習
1/2
NICTER のダークネットデータセットの分析
情 14-432
俣野 剛志
指導教員
小林 孝史
1 はじめに
ダークネットとは,コンピュータネットワークを介して到達することができ,また使われてい
ない IP アドレス空間のことを指す.使われていない IP アドレスに対して実際に双方向の通信は
できないが,その IP アドレス空間には相当数のパケットが送られている.ダークネットに届くパ
ケットは,脆弱性を持つホストを検索するためのマルウェアによるスキャンや,ワームの自己拡
散などの不正な活動や行為に起因するものが多い.そのため,ダークネットに到達するパケット
を分析することにより,インターネット上の不正な活動の傾向を把握できる.
情報通信研究機構(以下,NICT)は,NICTER(Network Incident analysis Center for Tac-
tical Emergency Response)と呼ばれる,ダークネットに届くトラフィックスデータの観測・分析
を行い,有効な対策を導くためのシステムを研究開発している.また,NICTER 内で保有するダー
クネットのトラフィックスデータを外部から扱えるようにするための分析基盤として NONSTOP
(Nicter Open Network Security Test-Out Platform)システムを提供している.
この研究では,NONSTOP システムを用いて,ダークネットのトラフィックスデータの分析を
行い,それに対する考察を行う.
2
NONSTOP システムについて
NONSTOP システムでは,NICT が保有する分析のための仮想マシンにリモートログインを行
う必要がある.ダークネットのトラフィックスデータは,その仮想マシンでのみ閲覧できる.NICT
は 2011 年よりダークネットに届くパケットを常にキャプチャしており,NONSTOP システムで
はそれらの多くのデータを扱える.そのため,多くの研究者がこの分析基盤を利用してダークネッ
トに関する研究を行っている.
仮想マシン内で閲覧できるトラフィックスデータは,ネットワークを/20 でサブネッティングし
た未使用 IP アドレス 4096 個に対するパケットである.それらのパケットの多くは,インターネッ
トからのマルウェアやネットワーク上のホストを探索するためのスキャンであったり,DDoS 攻撃
によるものと思われる送信元 IP アドレスを偽装した跳ね返りパケット,いわゆるバックスキャッ
タなどのトラフィックである.
3 関連研究
福島らの研究 [1] では,長時間にわたって少量のパケットしか届かないような気付かれにくい
攻撃の検知と,その検知された攻撃パターンからの特徴抽出を目的としている.これを実現する
ために,平均送信パケット数と送信元 IP アドレスの出現頻度に着目した手法を提案し,ダーク
ネットを観測して得られたトラフィックスデータを用いて検証を行っている.
中里らの研究 [2] では,ダークネット観測網に届くバックスキャッタを利用し,その特徴を抽出
して過去に観測したバックスキャッタの分類を行った.同時に,DoS 攻撃に使われたツールを特
定できる可能性を示した.
情 14-432
俣野 剛志
2016 年度 専門演習
図 1: トラフィックスデータの一覧
2/2
図 2: IO グラフ
4 2016 年 8 月 29 日 17:00∼17:01 のトラフィックスデータの分析
2016 年 8 月 29 日 17:00 から 1 分間キャプチャしたトラフィックスデータの一覧を図 1 に示す.
トラフィックスデータを確認すると,1 分間の内にダークネットに送られたパケットのキャプチャ
総数は 3072 個であった.OSI 参照モデルにおけるレイヤーで区別した場合,4層の TCP パケッ
トが 2843 個観測され,UDP パケットが 193 個観測された.また TCP パケットの大部分は,SYN
フラグが立ったパケットで,かつ IP ヘッダのチェックサムが正しくないパケットであった.さら
に,送信元 IP アドレス順に並べたところ,様々な IP アドレスからダークネットに向けてパケッ
トが送られていることが確認できた.このことから,ボットネットに属する端末から送られてい
る,もしくは送信元を偽装して送られていると推測される.
トラフィックスデータを,Wireshark の機能の一つである IO グラフを用いて表示した結果を
図 2 に示す.0.1 秒ごとのパケットの総入出の数を可視化すると,瞬間的に多くのパケットが届く
ような傾向は確認できなかった.また,0.1 秒間で総パケット数が 15 個を超えることはなかった.
5 今後の展望
ダークネットのトラフィックデータを観測し,様々な IP アドレスから壊れたパケットが多く送
られてきていた.これらのパケットから送信者を割り出すことができれば,DoS 攻撃等に対策を
打つことができるのではと考えられる.
一つの提案として,DoS 攻撃の通信らしき挙動があるパケットを発見した時に,そのパケット
について,送信元 IP アドレスがボットネットに属する端末から送られたものか,送信元 IP アド
レスが詐称されて送られたものかを判別する.もしボットネットに属する端末からのパケットであ
れば,そのパケットの情報を元に GeoIP のデータベースから送信者の地域やインターネットサー
ビスプロバイダを割り出すことができる.これにより,その地域やインターネットサービスプロ
バイダに対して,セキュリティアナウンスのような注意喚起ができると考えられる.
参考文献
[1] 福島祥郎,堀良彰,櫻井幸一, “ダークネット観測データに基づく攻撃挙動の特徴抽出に関
する考察”,電子情報通信学会技術研究報告 ICSS,情報通信システムセキュリティ,Vol.109
No.285 pp.37-42,2009.
[2] 中里純二, 島村隼平,衛藤将史,井上大介,中尾康二,“nicter によるネットワーク観測およ
び分析レポート:DDoS 攻撃によるバックスキャッタの推移と分類 (インターネットセキュリ
ティ,一般)”, 電子情報通信学会技術研究報告 IA, インターネットアーキテクチャ,Vol.112
No.90 pp.37-42,2012.
情 14-482
森田 将司
2016 年度 専門演習
1/2
ROP 攻撃の検知システムの実装と評価
情 14-482
森田 将司
指導教員
小林 孝史
1 はじめに
現在,Metasploit などの攻撃ツールを用いることで技術を持たないものでも攻撃を行うことが
容易になっている.また,それらのツールでは,修正パッチが出る以前のゼロデイ脆弱性に対する
攻撃コードがリリースされることもある.つまり,悪質なサイバー攻撃を行うハードルが下がっ
ており,あらゆる組織はそれらに対応する必要に迫られている.ゼロデイ脆弱性は標的型攻撃に
悪用されるため,多くの組織にとって危惧すべき問題となりうる.よって,これらの攻撃を検知
し対応できるシステムの開発は様々な組織のニーズがあると考えられる.
攻撃検知には大別して二つの方法がある.具体的には,ホスト側で検知する方法とネットワー
ク側で検知する方法である.しかし,ホスト側での検知よりもネットワーク側での検知の方が企
業のように多くの端末を使用している場合,導入・運用コスト上望ましいと考えられる.本研究
では,先行研究で提案されたネットワーク上で ROP 攻撃と呼ばれる脆弱性攻撃に対する検知手
法を用いたシステムについて実装し,その有効性を評価する.
2 ROP 攻撃
プログラムの脆弱性攻撃は,エクスプロイトコードとシェルコードに分けた二つによって行わ
れる.エクスプロイトコードによってメモリの中身を書き換え,制御権をコントロールし,シェ
ルコードによって悪意のある命令を実行するというものである.しかし,従来の攻撃はメモリの
データ領域にシェルコードを配置するものであったが,DEP(Data Execution Prevention)と
呼ばれる防御メカニズムによって不可能になった.そこで,Return-to-libc と呼ばれる DEP を回
避する攻撃が開発された.この攻撃を更に進めて,近年主流になっている攻撃が ROP 攻撃であ
る.ROP 攻撃は攻撃コードが,エクスプロイトコード,ROP コード,復号コード,暗号化・難読
化シェルコードの順に構成される(図 1).
3 先行研究
田中らの研究 [1] では,ROP 攻撃コードをネットワーク上で検知する方式を提案している.従
来のホスト側での検知ではなく,ネットワーク側での検知を行うことで,ビジネスニーズに対応す
ることや従来では困難だったリアルタイム性という特徴を持つ.この検知手法の着眼点は,ROP
攻撃コードでは ROP コードをシェルコード暗号化ロジックに入れることができないという特徴
があるため,難読化の影響を受けないというものである.これにより,ネットワーク上で攻撃の
特徴を掴み,検知することができる.また,提案方式は大多数の ROP 攻撃コードにおいて固定
的に利用される DEP を制御する関数の物理アドレスである ROPgadget コードを特徴文字列と
し,検知トリガにするという手法を採用している.
図 1: ROP 攻撃コードの構成
情 14-482
森田 将司
2016 年度 専門演習
2/2
図 2: 本システムによる ROP 攻撃検知の流れ
実際に Metasploit のカテゴリである “windows” と “browser” において ROP 技法が使われる攻
撃コードから特徴文字列を抽出し,ソースコードチェック及びパケットキャプチャを用いて True
Positive に関する評価を行っている.この結果として,約 84%の ROP 攻撃の検知が可能になった.
4 本研究のシステム
先行研究による手法を評価するにあたり擬似的な環境を構築するため,仮想マシンを用いて攻
撃マシン,悪意のある Web サーバ(以下,Web サーバ),標的マシン,標的マシンへのパケッ
トをキャプチャするマシン(以下,キャプチャマシン)を作成する.各マシンの OS として,攻
撃マシンは Kali Linux1.0.0(64bit),Web サーバは Ubuntu 15.10(32bit),標的マシンは
Windows7(32bit),キャプチャマシンは Ubuntu 14.10(32bit)を使用する.
本システムによる ROP 攻撃の検知の流れを図 2 に示す.攻撃のシナリオとして,まず,攻撃マ
シンが Web サーバに Adobe Reader v9.0 の脆弱性を突く ROP 攻撃技法を利用した PDF ファイ
1 ).次に,Adobe Reader v9.0 をインストールしている標的マシ
ルをアップロードする(図中⃝
2 ).ここで,キャプチャ
ンがそのファイルをダウンロードし,Adobe Reader v9.0 で開く(図中⃝
マシンによって先行研究で提案された方式でパケットを調べ,攻撃を検知するというものである
3 ).また,攻撃を検知するためにキャプチャマシン上で動く,特徴文字列を検知するプロ
(図中⃝
グラムを実装する.再現実験は Web ページからの攻撃を想定したものなので,Web サーバから
のパケットをフィルタリングする iptables でポート番号 80 のパケットをキャプチャし,Python
で実装したプログラムにフックすることで特徴文字列を検知する.
5 今後の展望
この再現実験は,特定のシナリオに対する攻撃の検知しか想定していないので,様々なシナリ
オに対する検知が可能なシステムを実装する必要があると考えられる.また,先行研究の課題で
もある暗号化されている HTTPS 通信や JavaScript による難読化が施されたコードへの対策を
考える必要がある.
再現実験の進捗として,仮想マシンの作成が完成したので,次に iptables の設定と Python で
ROP 攻撃の特徴文字列を検知するプログラムの実装を行う.また,前節のシステムを秋学期中に
完成させることで再現実験の成功を目指す.
参考文献
[1] 田中 恭之,後藤厚宏,“ネットワーク側で ROP 攻撃コードを検出する手法の提案”,コンピュー
タセキュリティシンポジウム 2014 論文集(2),pp.952-959,2014-10-15.
情 14-499
山崎 雅斗
2016 年度 専門演習
1/2
ICAP を用いた悪意あるスクリプトを防御する Proxy サーバの実装
情 14-499
山崎 雅斗
指導教員
小林 孝史
1 はじめに
近年,インターネットの普及により誰もが簡単に様々な Web ページを閲覧することが可能に
なった.また,JavaScript などの技術の進歩により,動的に Web ページを作成したり HTML や
CSS だけでは難しい処理などを行うことができるようになった.しかしその反面,JavaScript を
悪用することで Web ページの閲覧者に気づかれることなくマルウェアをダウンロードさせたり,
個人情報を盗み取ったりするような Web ページが存在している.
2 先行研究
吉井の研究 [1] では,Proxy サーバと ICAP サーバを連携させ,悪意あるスクリプトを含む Web
ページヘのアクセスを制御するシステムを構築した.このシステムでは,ICAP サーバで Web
ページを解析し,JavaScript が含まれている場合はそのスクリプトを ICAP サーバ上で実行す
る.その結果,iframe タグが存在し PDF ファイルを呼び出している場合,ユーザに警告画面を
表示する.
3 本研究のシステム
先行研究を基に Proxy サーバと二つの ICAP サーバを連携させ,悪意あるスクリプトを含む
Web ページヘのアクセスを制御するためのシステムを構築した.Proxy サーバには Squid,ICAP
サーバには GreasySpoon と c-icap,マルウェア検知には ClamAV を使用した.クライアントが
Web ページにアクセスした時の流れは次のようになる.
クライアントが Web ページにアクセスすると,そのリクエストを Proxy サーバが受け取る.リ
クエストを受け取った Proxy サーバは Web サーバに対してリクエストを行う.その後,Web サー
バからのレスポンスを受け取った Proxy サーバはレスポンスの内容を ICAP サーバに渡す.ICAP
サーバでは Web ページの解析を行い,解析結果を Proxy サーバに返す.Proxy サーバは,ICAP
サーバから受け取った結果をクライアントに返す.
4 実験
過去の Drive-by Download 攻撃で使用された手法を基にして作成された Web ページを使用し,
本研究のシステムにより正常に Web ページのフィルタリングが行われるかの確認を行った.
4.1
悪意あるスクリプトが外部から呼び出される例
この例では,HTML 内に外部の JavaScript を読み込む記述がされている.このスクリプトが
実行されると HTML 内に iframe タグが生成される.この iframe タグは縦横ともに 0px,境界線
の太さも 0px となっているため,ブラウザ上で確認することが出来ない.src 属性には PDF ファ
イルが指定されているため,自動的に PDF ファイルがダウンロードされて展開されるようになっ
ている.
4.2
直接マルウェアがダウンロードされる例
この例では,HTML 内に記述された JavaScript の location.href により,自動的にマルウェア
がダウンロードされる仕組みとなっている.マルウェアは EICAR[2] を使用した.EICAR は実
情 14-499
山崎 雅斗
2016 年度 専門演習
2/2
図 1: マルウェアを検知してアクセスを遮断した際の画面
行可能な DOS プログラムであり,実際にコンピュータに被害をもたらすことはないが,動作確
認のために全てのマルウェア対策ソフトがマルウェアとして検出するようになっている.
4.3
実験結果
本研究で構築したシステムを使用し,用意した二つの Web ページにアクセスした.その結果,
どちらのケースでも正常にフィルタリングが行われた.アクセスを遮断した際の画面を図 1 に示す.
5 今後の課題
本研究では,ICAP サーバ上で HTML 解析を行う際の UserAgent に Firefox を指定している.
そのため,他のブラウザをターゲットとした攻撃が行われた場合,悪意あるスクリプトを検出で
きない場合がある.さらに,MIME タイプを偽装することで ICAP サーバの解析をすり抜けるこ
とがある.これら二つの問題点を含む攻撃についても正常にフィルタリングが行われるようにシ
ステムの改善を行う必要がある.
また,先行研究で HTML 解析に使用されている GreasySpoon は現在すでに開発が終了してい
る.そのため,GreesySpoon の後継として開発されている WebFlowAdapter[3] を代わりに使用
してシステムの構築を行う必要がある.
参考文献
[1] 吉井 章,“ICAP を用いた悪意あるスクリプトを防御する Proxy サーバの実装”,平成 25 年度
関西大学総合情報学部卒業論文.
[2] EICAR - European Expert Group for IT-Security,http://www.eicar.org/,平成 28 年 8 月
29 日確認.
[3] L3WS - ICAP Server Factory for Core Network Services,https://www.l3ws.com/,平成
28 年 8 月 29 日確認.
15-2012
2016
1/2
MPICH
15-2012
1
1
2000
[1]
CPU
3GHz
CPU
MPICH
2 MPICH
MPICH Message Passing Interface Chameleon
MPI
MPI
API
[2]
[3]
3
OS
CentOS7
IP
user
1:
1
15-2012
2016
2/2
4 SSH
SSH Secure Shell
SSH
[4]
5
MPICH
/usr/local/bin
/usr/
local/bin
configure
Installer’s Guide[5]
7
make install PACKAGE=mpich-3.2
MPICH
1:
PATH= /home / user / mpich−i n s t a l l / bin :$PATH
export PATH
6
MPICH
SSH
machinefile
MPICH
MPI
[1] CPU DB: Recording Microprocessor History - ACM Queue https://queue.acm.org/
detail.cfm?id=2181798 2016 9 12
[2] MPIprog.pdf http://www.cc.u-tokyo.ac.jp/support/kosyu/13/MPIprog.pdf 2016
12
[3]
7
MPI
uploads/20130529.pdf 2016
[4] TAC
Security+
9
9
http://www.iedu.i.kyoto-u.ac.jp/
12
p.159 2014-2-25
[5] MPICH Installer’s Guide Version 3.2 https://www.mpich.org/static/downloads/3.2/
mpich-3.2-installguide.pdf 2016 9 12
情 13-67
上原 拓也
2016 年度 卒業研究
1/2
SSH サービスへの不正アクセスに関する調査
情 13-67
上原 拓也
指導教員
小林 孝史
1 はじめに
近年,クラウドコンピューティングなどのコンピュータネットワークをベースとした計算機資
源の利用形態が発展しており,遠隔地の計算機にアクセスする機会が増加している.このような
場合に利用されるアクセス手段の一つが SSH であり,暗号化と認証によってセキュアなリモート
アクセスを実現している.しかし,SSH サーバの認証設定の不備や,ログインユーザの管理不足
などにより認証を不正に突破される可能性があり,そのようなヒューマンエラーを狙った攻撃の
増加が問題となっている.たとえば,2015 年に一般社団法人 JPCERT コーディネーションセン
ターが発表した 2015 年第三四半期の「インターネット定点観測レポート」[1] では,SSH サーバ
に対する攻撃が前四半期に続き上位 5 位以内に含まれている.
本稿では SSH サービスへの不正アクセス対策に関する研究の調査を行って得た知見の報告と,
本研究の今後の展望について述べる.
2 関連研究
本稿を執筆するにあたって参考にした研究を以下に説明する.
2.1 SSH パスワードクラッキング攻撃検知システムの改善とその運用結果
小刀稱らの研究 [2] では,SSH サーバとクライアント間の 1 コネクションあたりのパケット送受
信回数からパスワードクラッキング攻撃を検知する手法を提案している.正規ユーザと SSH サー
バの通信はユーザ認証プロセスによりユーザの認証をした後でデータの送受信を行うことから,1
コネクションあたりのパケット送受信回数が多くなる傾向がある.一方で,攻撃者と SSH サーバ
の通信はユーザ認証プロセスで失敗し,一定回数以上(通常は 3 回程度)の失敗により TCP コ
ネクションが切断されるため 1 コネクションあたりのパケット送受信回数が少なくなる.この違
いに着目し,しきい値以下のパケット送受信回数の TCP コネクションが 10 回続いた場合,パス
ワードクラッキング攻撃とみなし検知するシステムを開発した.
本手法はパスワードクラッキング攻撃の検知において一定の成果を挙げたが,scp などの 1 コ
ネクションあたりのパケット送受信回数が少なくなってしまう通信においては,正規の通信を誤
検知してしまう問題が認められた.
2.2
関西大学における SSH アクセスの収集と分析
中田の研究 [3] では,SSH サーバを複数台運用する際のログメッセージの偏在性や,膨大な量
のテキストとして出力されるログメッセージの認識負荷の大きさに着目し,ログメッセージを一
元的に収集し,視覚化するシステムを実装している.システムの概要を図 1 に示す.
ログメッセージの収集には rsyslogd を用いており,既存の OpenSSH サーバを大きく変更す
ることなく一元的なログメッセージの収集を実現している.ログメッセージの分析と可視化には,
Elasticsearch と Kibana を用いている.Elasticsearch は,Elastic 社がオープンソースとして
提供する分散型全文検索エンジンであり,様々な種類のデータの検索やリアルタイム分析を可能
とする.Kibana はログデータの可視化ツールであり,Elasticsearch によってインデックスを付
与されたデータを様々なグラフや表といった形で表現することを可能とする.
情 13-67
上原 拓也
2016 年度 卒業研究
2/2
図 1: システムの概要
2.3 SSH における攻撃ツールの識別
マルダンの研究 [4] は,既知のブルートフォース攻撃ツールが通信を行う際に発生するパケット
に各ツールの特徴が現れることに着目し,いくつかのパラメータからブルートフォース攻撃ツー
ルを識別する手法を提案している.パラメータには,攻撃の間隔,攻撃回数,ユーザ名,SSH ラ
イブラリ,バージョン交換段階でのパケット長などが利用されている.
本手法は既知のブルートフォース攻撃ツールの識別において一定の成果を挙げたが,未知の攻
撃ツールに対しては効果がないので,ハニーポットなどを用いた未知の攻撃ツールを用いた SSH
アクセスの収集と分析が必要だと述べられている.
3 おわりに
本研究は SSH サービスに対する不正アクセスの抑制を目的としているため,SSH サービスに
関連する研究の調査を行い,既に存在する対策手法を紹介した.SSH 不正アクセスの検知や分
析支援において一定の成果を挙げている手法は存在するものの,どの手法も完璧とはいえず課題
を残していることが確認できた.今後の本研究の進め方として,まず SSH 不正アクセスのログ
やパケットを収集し,分析する必要がある.SSH 不正アクセスに関して,先行研究で確認され
ていないような特徴がないか調査を行う.ログやパケットの収集には小林研究室で運用されてい
る SSH サーバや未使用 IP アドレスを用いる.また分析に関しては中田の研究で利用されてい
た Elasticsearch と Kibana を用いる手法が有効だと思われるので,早急にこのシステムを構築
する.
参考文献
[1] “インターネット定点観測レポート (2015 年 7∼9 月)”,https://www.jpcert.or.jp/tsubame/
report/report201507-09.html,2016 年 9 月 11 日確認.
[2] 小刀稱知哉,中本菜桜美,清水 光司,池部 実,吉田和幸,“SSH パスワードクラッキング
攻撃検知システムの改善とその運用結果”,研究報告インターネットと運用技術(IOT),
2014-IOT-26(4),pp.1-7,2014-06-21.
[3] 中田恭平,吉井章,坂本要,小林孝史,“関西大学における SSH アクセスの収集と分析”,研
究報告インターネットと運用技術(IOT),2015-IOT-31,pp.1-6,2015-09-18.
[4] ムイデンマルダン,篠田信夫,“SSH における攻撃ツールの識別”,第 76 回全国大会講演論
文集,pp.629-630,2014-03-11.
13-146
2016
1/2
13-146
1
Android
2
1
3
[1]
Android
1
4
Android
13-146
2016
2/2
1:
4.1
12
8
4
2
4
2
1
4.2
4
2
2
4
2
1
5
[1]
“
”
27
13-195
2016
1/2
OpenFlow
13-195
1
[1]
26
27
1,723
3,828
2
OpenFlow
2
[2]
OpenFlow
[3]
OpenFlow
3
1
OpenFlow
OpenFlow
Trema
OpenFlow
OpenFlow
2
OpenFlow
13-195
2016
2/2
1:
4
C&C
C&C
5
[1]
“
27
go.jp/kanbou/cybersecurity/H27_jousei.pdf
[2]
28
“
”
9
” http://www.npa.
12
OpenFlow
76
2014(1) pp.
575-576 2014-03-11
[3]
“
”
https://www.ipa.go.jp/files/000033897.pdf
28
”
9
”
12
情 13-197
後藤 勇介
2016 年度 卒業研究
1/2
スマートフォンにおける広告の自動非表示システムの実装
1
情 13-197
後藤 勇介
指導教員
小林 孝史
はじめに
近年,情報通信機器の普及が急速に進んでいる.特に「携帯電話・PHS」の世帯普及率は 94.6%,
その内数である「スマートフォン」の世帯普及率が 64.2%となっている [1].スマートフォンの普
及により,場所や時間を問わずにインターネット使用者が増加した.そのため,Google をはじめ
とする多くの法人や個人がインターネットを媒体に収益を獲得するために,ポップアップ広告を
はじめ多様な広告を打ち出している.しかし,ページの意図に反する無計画な広告表示をするサ
イトが増えたことにより,ページの可読性や使用性の低下が懸念される.このことは,スマート
フォンユーザの時間損失になり得る.また,悪意のあるページへ誘導するような広告もあること
から,ユーザの操作によっては情報流出の危険性もある.
そこで,スマートフォンを使用する際の可読性や使用性,安全性を向上させることを目的とし,
スマートフォンに表示される不要な広告を非表示にするシステムを提案する.従来の手法でも広告
を非表示にすることが可能なものは存在するが,設定が複雑であることが多いため多くのスマー
トフォンユーザにとって使用しやすいように配慮する必要がある.
2
モバイルアンカー広告とモバイル全画面広告
モバイルアンカー広告(オーバーレイ広告)を図 1 に示す.これは,スマートフォンでページ
を表示した際に機種によって異なる一定の大きさの広告がスマートフォン画面の一番下に固定さ
れ,ページが上下にスクロールされても同じ位置に留まる広告である.最近では Google AdSense
が導入を始めたことによりますます増加傾向にある.Google AdSense の広告に関しては左右への
スワイプ操作で消すことが可能ではあるが,中にはページを移動しない限り消すことができない
ものも多数存在する.下に表示されるため,スクロールの際に可視範囲が狭くなり,可視性と使
用性において大きな影響を及ぼす.
モバイル全画面広告(インタースティシャル広告)とは,画面やページの切り替え・遷移時に
表示される広告である.最近ではゲームアプリや Facebook などでも多く見かけるようになった.
広告をページの要素の一部としてではなく,全画面あるいはほぼ画面全体を覆うポップアップウィ
ンドウなどとして表示するため,広告自体としては一定の成果が上がっている一方で,頻繁に表
示されることや全画面表示という特性上,使用性がかなり低下する.
3
Prixomitron
Prixomitrion[2] とは Scott R. Lemmon により作
成された,ブラウザと Web サーバの間で動作し,ブ
ラウザへの情報やブラウザからの情報を特定のルー
ルに従い書き換えるソフトウェアである.これによ
り,Web サーバからのデータを改変したものをブラ
ウザで読み込み表示することができるため,適切な
設定をすることにより広告を非表示にすることがで
きる.しかしながら 2003 年 6 月に開発中止となっ
たため,スマートフォンには非対応である.
図 1: モバイルアンカー広告
情 13-197
後藤 勇介
2016 年度 卒業研究
2/2
図 2: 読み込みデータの流れ
4
本研究のシステム
本研究のシステムは,2 節で述べたモバイルアンカー広告を非表示にすることによる可読性の
向上を目的としている.Web サーバから読み込んだデータの流れを図 2 に示す.構成としては
Prixomitron と同様で,システムをブラウザと Web サーバの間で動作させる.Web サーバより
データを受け取り,システムに送る.次にモバイルアンカー広告と判定された箇所を削除し,改変
したデータをブラウザに送る.このプロセスによりモバイルアンカー広告が非表示になったペー
ジが表示されることが期待される.懸念される点としては,ページ遷移の度にシステムを通すた
めページの読み込みが遅くなるという点があるが,モバイルアンカー広告のコードが header.php
の<body>タグ内に記述されているため,この部分のみを検索して条件に一致するものを削除する
ことにより,ページの読み込みがそこまで遅くならないことが期待される.
5
今後の展望
現段階では提案システムが未完成であるため,早急にシステムを構築した後実際のページの表
示速度を測定し,使用性が向上したかどうか検証する必要がある.また,提案したシステムでは
現状モバイルアンカー広告にのみ対応可能であるため,まだまだ実用性に乏しいシステムとなっ
ている.したがって,2 節で述べたモバイル全画面広告や他の広告にも対応できるように改良して
いく必要がある.その際には検索範囲が増加することによりページの読み込みが遅くなることが
予想されるため,いかに表示を早くすることが可能であるかについても検討していく必要がある.
参考文献
[1] 総務省,“平成 27 年版情報通信白書 インターネットの普及状況”,http://www.soumu.go.jp/
johotsusintokei/whitepaper/ja/h27/html/nc372110.html,2016 年 9 月 5 日確認.
[2] the Webhiker’s Guide to Proxomitron,http://www.proxomitron.info/,2016 年 9 月 5 日
確認.
情 13-209
坂本 要
2016 年度 卒業研究
1/2
負荷状況に応じた動的負荷分散システムの実装
情 13-209
指導教員
坂本 要
小林 孝史
1 はじめに
スマートフォンや SNS の普及によってインターネットの利用者数,利用時間は増加している.
その結果,情報の拡散速度が上がり,口コミや炎上によってスパイクアクセスと呼ばれる短時間
での大量アクセスが頻繁に発生するようになった.スパイクアクセスが発生するような状況にお
いて,過負荷が原因でサービスが利用できない場合の機会損失は計り知れないため,スパイクア
クセスはサービスを運用する上で常に考慮しなければならない.しかしながら,自社で機器の導
入と運用を行っているいわゆるオンプレミス環境でスパイクアクセスが発生したとしても,機器
を一から調達しなければならないオンプレミス環境の性質上,短時間でシステムを増強させるこ
とは難しい.普段からスパイクアクセスに対応するための機器を用意しておくという方法も考え
られるが,経済的観点からも計算機資源の余剰という点からも優れた解決策とは言えないだろう.
負荷を動的に分散させる研究としてネットワークに着目し SDN(Software Defined Network)
を用いたもの [1] や,独自のアルゴリズムで未来の負荷を予測するといったもの [2] がある.本研
究では,負荷分散の手段としてのクラウドコンピューティングにおける,ほぼ無制限かつ瞬時に
サーバの台数を増減させられる特性に着目する.そして,負荷の状況によってサーバの台数を増
減させるオートスケール機能を実装し,負荷に応じた最適な計算機資源を調達できる,より負荷
への耐性が高い強固で柔軟なシステムの実装を目指す.
2 ロードバランサ
ロードバランサとは,クライアントのリクエストを複数のサーバに割り振ることで負荷を分散
させる機器である.ロードバランサを使うことによって,応答速度の遅延防止やサーバの負荷超
過に伴うシステムダウンの回避,冗長性の確保が可能となる.これに加えて,ヘルスチェックと
呼ばれる実際に処理を行うリアルサーバの稼働状況を監視する機能や,サーバの負荷要因となる
SSL 暗号化処理を代理する SSL アクセラレーションなどの機能を有するものもある.ロードバ
ランサの形態としては,専用機器としてのアプライアンスの他に LVS(Linux Virtual Server)
や HAProxy を利用したソフトウェアロードバランサが存在する.
3 システムの概要
本研究のシステムは,クライアントからの処理を最初に受け付けるロードバランサ,実際にク
ライアントの要求に応えてコンテンツを返す Web サーバ,Web サーバの監視および自動プロビ
ジョニングを担う負荷情報監視サーバ兼構成管理サーバによって構成される(図 1).なお,本シ
ステムでは Web サーバの動的負荷分散を行っているが,クライアントからアクセスを受け付ける
サーバであればどのような種類のものであっても動的負荷分散を行うことが可能である.ロード
バランサは VIP(Virtual IP address)を持っており,クライアントが Web サーバのコンテンツ
を要求する場合はこの VIP に対してアクセスを行う.VIP に対するアクセスを受け付けたロード
バランサは OpenStack 内の Web サーバ群に対して処理を割り振る.OpenStack とは NASA 等
によって始められた IaaS クラウドコンピューティングプロジェクトで,クラウド環境を構築す
るためのソフトウェアの総称である.負荷情報監視サーバ兼構成管理サーバは Web サーバ群の監
視と異常が発生した際の Web サーバの自動プロビジョニングと自動削除を行う.
情 13-209
坂本 要
2016 年度 卒業研究
2/2
4 システムの構成
本研究で用いるロードバランサは OSS として開発
されている LVS と Keepalived によって構築したソ
フトウェアロードバランサである.2 台のロードバ
ランサは複数のルータを論理的に 1 台のルータにす
るプロトコルである VRRP を用いて冗長化されてお
り,通常時に処理を行っている Master サーバに問
題が発生した場合,瞬時に Slave サーバが Master
サーバに切り替わり処理を代行する.ロードバラン
サはクライアントからのアクセスを配下の Web サー
バに順番に割り振るラウンドロビン法を用いてロー
ドバランシングを行う.
本システムに存在する Web サーバ群は全て Open-
Stack 内に構築された仮想マシンである.
図 1: システムの構成
負荷情報監視サーバ兼構成管理サーバは Web サー
バの負荷状況を監視し,異常が生じた場合に Web サーバのプロビジョニングか削除を行う.Web
サーバの CPU 使用率,メモリ使用率,ロードアベレージは負荷情報として負荷情報監視サーバ
に送信される.送信された負荷情報は OSS のモニタリングツールである NetData によって可視
化され,その情報を確認することで管理者は視覚的にシステム全体の負荷状況を把握できる.負
荷が閾値を超えた場合,Ansible を用いて OpenStack 内に新しく仮想マシンをプロビジョニング
する.加えて,システムの負荷状況が安定していた場合,Ansible を用いて仮想マシンを削除す
ることで最適な数に調整する機能を実装する予定である.Ansible は Python で記述された構成
管理ツールで,Playbook という形でサーバ構成をコード化するソフトウェアである.
5 今後の課題
本システムのコア機能であるオートスケール機能は負荷状況に応じてサーバを動的に増減させ
るものだが,本システムではサーバの台数を動的に減らす部分が未実装であるため,この機能の
実装を今後最優先で取り組む.オートスケール機能のサーバ増減の基準によっては,サーバの増加
と減少を短いサイクルで繰り返してしまう可能性がある.この問題を排除するためにも,サーバ
を増やす場合にはシステムの負荷に余裕がある状況で,減らす場合にはシステムの負荷状況が安
定していることを確認した上で慎重に行う,といった実装をする必要がある.次に NetData を用
いた負荷状況のモニタリングについてだが,現時点では動的に増減するサーバに対応できておら
ず,事前に登録しておいたサーバの監視しか行えない.この問題はサーバの増減に合わせて負荷
情報を表示しているコードを動的に書き換えるよう改良することで解決できると考えている.シ
ステムが未完成なため実験が行えていないことも課題である.システムの有効性を測るという意
味でも,また Web サーバの負荷指標,閾値の検討およびシステムの改良のためにも,早急に実験
を行えるようにシステムを完成させる必要がある.
参考文献
[1] 高橋 裕,秋山 友理愛,神津 智樹,山口 実靖,“バースト的負荷変動を考慮した OpenFlow
を用いた動的資源割り当て”,電子情報通信学会技術研究報告,NS, ネットワークシステム
113(472), 225-229, 2014-02-27.
[2] 田中 彰,森口 一郎,“未来負荷予測を考慮した動的なミラーサーバ提供システム”,東京情
報大学研究論集 17(2), 101-109, 2014-03-01.
13-243
2016
1/2
DDoS
13-243
1
DoS
DoS
DoS
[1] DDoS
DDoS
IP Spoofing
IP
DDoS
Web
[2]
DDoS
2 IEEE802.1X
IEEE802.1X[3]
LAN
VLAN
PC
LAN
PC
RADIUS
PC
RADIUS
EAP
PC
PC
IP
3
[4]
MLBR
IP Spoofing
ARP
ARP
MLBR
IEEE802.1X
MLBR
TLS
ARP
ARP
ARP
ARP
ARP
QoS
MLBR
QoS
MLBR
IP
MAC
BIND
13-243
2016
BIND
2/2
IP
QoS
MAC
IP
BIND
MLBR
egress MLBR ingress MLBR
egress MLBR
ingress MLBR
egress MLBR
2
4
MLBR
2
IP
IP
IP Spoofing
IP
IP
IP
IP
IP
DDoS
5
Tor
IP
[1] akamai’s [state of the internet] / security, Q1 2016 executive review, https://
www.akamai.com/uk/en/multimedia/documents/state-of-the-internet/state-of-theinternet-report-q1-2016-executive-review.pdf, 2016 9 7
[2] threat post, LizardStresser IoT Botnet Part of 400Gbps DDoS Attacks, https://
threatpost.com/lizardstresser-iot-botnet-part-of-400gbps-ddos-attacks/119006/, 2016
9 7
[3]
IEEE802.1x
dot1x.htm 2016
[4]
9
http://www.infraexpert.com/study/
7
“
OpenFlow
Vol.2014-CSEC-66 No51 Vol2014-SPT-10 No51 2014
”
情 13-396
藤木 英
2016 年度 卒業研究
1/2
Opengate による利用者認証システムの実装と検証
情 13-396
藤木 英
指導教員
小林 孝史
1 はじめに
情報通信技術の発達により,ネットワークに接続しているノードを識別するためのグローバル
IPv4 アドレスの枯渇が問題となっている.この問題の対策として IPv6(Internet Protocol Version
6)への移行がある.現時点では意識的に使用しなければ IPv6 を用いることができないが,近い
将来はユーザが意識せずに IPv6 を利用することになると考えられる.
また,日常的にインターネットが利用される中で,公開端末の設置や無線 LAN の設備等で不
特定多数のユーザがインターネットに接続できる環境にある.不特定多数のユーザにネットワー
クを公開する場合は,利用資格のないユーザにネットワークを利用される可能性があり,ネット
ワークの管理者はネットワークの利用者認証や利用履歴を記録する必要があると考えられる.
しかし,IPv6 に対応した利用者認証システムはあまり普及しておらず,IPv6 にも対応した新た
な認証システムの実現が必要となる.そこで本研究では Opengate[1] とよばれる利用者認証シス
テムの評価実験を行い,関西大学における IPv6 に対応した際の運用方法を考察することを目的と
する.
2 Opengate
Opengate は不特定多数のユーザが多様な端末を接続するネットワーク環境において,利用者認
証を行うことができるシステムである.この Opengate は,特別な申請やソフトウェアの準備なし
にユーザの端末をインターネットに接続することができる.
2.1
処理の流れ
Opengate システム用いた認証システムの大まか
な流れを図 1 に示す.ユーザはブラウザを開き任
意の Web ページへアクセスする.Opengate はユー
ザに認証ページを返し,ユーザは ID とパスワー
ドを入力する.Opengate はユーザから与えられた
ID とパスワードを CGI プログラムに渡し,認証
サーバと通信することで認証を行う.認証が成功
すると CGI プログラムはゲートウェイのファイア
ウォールを開き,ユーザの Web ブラウザに Java
Applet を送った後,Java Applet からの TCP コネ
クションを待つ.ユーザの Web ブラウザに送られ
た Java Applet は利用許可ウィンドウ(図 2)を開
き,CGI プログラムと通信を行う.このウィンド
ウが表示されている間,ユーザはネットワークを
利用できる.ユーザが Java Applet を終了させる
か,Web ブラウザを終了すると CGI プログラム
はそれを検知し,ファイアウォールを閉じて終了
する.
図 1: Opengate における処理の流れ
情 13-396
藤木 英
2016 年度 卒業研究
2/2
図 2: 利用許可ウィンドウ
3 Opengate における IPv6 の対応
Opengate は IPv6 にも対応しており,IPv4/IPv6 デュアルスタックネットワークと呼ばれる環境
で使用することができる.IPv4/IPv6 デュアルスタックは単一機器に IPv4 と IPv6 の異なるプロト
コルスタックを共存させる技術である.IPv4/IPv6 デュアルスタックでは IPv4 対応機器と通信す
る際は IPv4 を使用し,IPv6 対応機器と通信する際は IPv6 を使用する.
3.1
ユーザの利用端末の種類
Opengate を IPv4/IPv6 デュアルスタックネットワークで使用する場合,ユーザの利用端末は「IPv4
のみをサポートした端末」,
「IPv6 のみをサポートした端末」,
「IPv4 と IPv6 をサポートした端末」
が想定される.しかし,利用者端末の利用状況を監視するために用いる Java Applet と通信を行う
ために必要な Java VM が必ずしも IPv6 に対応しているとは限らず,利用者端末の監視ができない
可能性があるため,IPv6 のみをサポートした端末は対象外としている [2].
3.2
利用者端末の複数の IPv6 アドレスの取得
IPv6 では,ユーザの用いる端末が複数の IPv6 アドレスを利用する場合がある.そのため,認
証時に使用した IPv6 アドレスに対する通信のみをファイアウォールで開放しただけでは不十分で
ある.そこで,ユーザ端末の通信状況を監視する際に近隣探索プロトコルである NDP(Neighbor
Dicovery Protocol)を用いてリンク上に存在する近隣ノードの MAC アドレスを判別し,ユーザ端
末の MAC アドレスに対応する IPv6 アドレスが新たに追加された場合は,その IPv6 アドレスに
対しても通信路を開放する [3].
4 今後の展望
Opengate の実装が完成していないため,Opengate を仮想環境内で実装し,問題点等を考察する
必要がある.また,Opengate の認証技術を関西大学が現在運用している認証技術と比較し,関西
大学におけるネットワークの運用方法を考察する必要がある.そのため,関西大学におけるネッ
トワーク構成,セキュリティポリシ等の情報が必要となる.今後は上記の課題を解決しながら関
西大学における IPv6 ネットワークに対応した際の運用方法を考察していく.
参考文献
[1] 渡辺義明,渡辺健次,江藤博文,只木進一,“利用と管理が容易で適用範囲が広い利用者認証
ゲートウェイシステムの開発”,情報処理学会論文誌 Vol42 No.12 pp.2802-2809,2001.
[2] 大谷誠,江口勝彦,渡辺健次,“IPv4/IPv6 デュアルスタックネットワークに対応したネット
ワーク利用者認証システムの開発”,情報処理学会論文誌 Vol.47 No.4 pp.1146-1156,2006.
[3] 大谷誠,江藤博文,渡辺健次,只木進一,渡辺義明,“IPv4/IPv6 に対応したネットワーク利用
者認証システム Opengate の改良”,情報処理学会研究報告,2006-DSM-43,pp.19-24,2006.