セキュリティ脅威 1( 不正アクセス ) 2014 年 10 月 15 日 後保範 1
情報セキュリティ脅威の種類 破壊 ( データの破壊 消去 ) 漏洩 ( 機密情報漏洩 個人情報漏洩 ) 改ざん (HPやデータベースの不正な書き換え) 盗難 ( ノートパソコンや書類 USBメモリ等の盗難 ) 不正利用 ( 通信回線 サーバー等の不正利用 ) サービス停止 ( 大量アクセス等で利用不能に ) 踏み台 ( 他のサイトを攻撃する拠点に利用される ) ウイルス感染 ( データの破壊や他への感染 ) 2
不正アクセスとは インターネットを通して忍び込む侵入者 知らない間にパソコンの情報がのぞかれるウイルスなどに感染し パソコンの情報が壊される 不正アクセスによる被害 メールが勝手に見られる個人情報が盗まれ その情報が売買されるホームページの情報が勝手に改ざんされるオンラインショップ等で勝手に買い物される 3
不正アクセス事例 (10 日間 ) 2014/09/25 警察庁 bash の脆弱性を狙うアクセスを観測 2014/09/22 指宿市のサイトが不正アクセスで改ざん - 情報漏洩は否定 2014/09/19 パロアルトのウェブサイトが改ざん - 閲覧でマルウェア感染のおそれ 2014/09/18 勝手に他人のメルアドでサービス登録する不正行為に注意を 2014/09/16 不正アクセス受けた My JR-EAST がサービスを再開 2014/09/16 約 1 万件の リクルート ID で不正ログイン被害 - 約 3 分の 1 でログイン成功 2014/09/16 My JR-EAST に不正ログイン - 現在も停止中 http://www.security-next.com/category/cat191/cat27 より 4
不正アクセスの手順 不正アクセス 窃盗による住居侵入 事前調査 住居の下見 権限取得 住居侵入 不正実行 金品の窃盗 後処理 証拠隠滅 5
ネットワークのスキャン アドレススキャン HP の周辺の接続可能 IP アドレスを ping で探す ポートスキャン TCP/IP の仕組みを利用し 利用可能なポートを探す バナーチェック 接続テストの応答情報から接続情報を探す セキュリティスキャナ 上記からサイトの脆弱性の調査を統合して行う 6
ポート番号とは インターネット通信において IP アドレス ( 電子住所 ) の下に設けられた補助アドレス 補助アドレスとして 0~65535 のポート番号 IP アドレスとポート番号を組み合わせたネットワークアドレスを ソケット と呼ぶ 実際のデータの送受信はソケット単位 20,21(FTP), 22(ssh), 23(telnet), 25(SMTP), 80(http) 等は決ったポート番号を使用 7
ポートスキャン ポートスキャンはポートに順番にアクセスし 動作している OS やアプリケーションを調べ 侵入口となる脆弱ポートがないか調べる ポートスキャンの結果 セキュリティホールが発見されると侵入用のプログラムを使用し 不正侵入を試みる ポートスキャンコマンド Windows: nmap, netstat Unix: nmap, netstat 8
ポートスキャン例 1 nmap F 192.168.1.22 nmap コマンド 日経 BP 社の HP から 9
ポートスキャン例 2 nmap O sv -F 192.168.1.22 nmap コマンド 日経 BP 社の HP から
パスワード クラック OS やアプリケーション リモートアクセスに設定されたパスワードを解読する攻撃 オンライン攻撃 ターゲットに対しアクセスしながら行う攻撃 パスワードの誤入力が 3 回連続なら認証停止 オフライン攻撃 侵入により一度パスワードが保存されたファイル ( 通常 暗号化されている ) を入手して解読する 11
パスワードの不正入手 パスワードは普及した本人確認の手段 これが盗まれると大きな被害の可能性大 パスワード解読の攻撃方法 総当り攻撃 ( ブルートフォースアタック ) 辞書攻撃 ( ありそうな組合せ ) 盗聴( スニフィング ) 不正入手後のクラッカーの行動 ログの消去 ( 証拠隠滅 ) バックドア ( 正規手順以外のアクセス経路 ) の作成 12
パスワード奪取の方法 方法内容 総当り攻撃 辞書攻撃 考えられるすべてのパスワードの組み合わせを試すいつかはパスワードにたどり着く時間がかかる よくやりそうなパスワードから試すふつうの辞書や人名 場所等の辞書パスワード向き言葉を集めた辞書個人情報を収集し辞書にする 13
パスワード奪取への対策 方法内容 総当り攻撃 辞書攻撃 パスワードを長くする使う文字数を増やす英小文字と数字 4 文字 : 36 4 = 百万英大小と数字 9 文字 : 62 9 = 京定期的に変更する 簡単に推測できる言葉にしない辞書にのる有意味語にしない生年月日等の個人情報にしない大文字や特殊記号を途中にいれる 14
セキュリティホールとは システムのプログラムミスなどにより生じた セキュリティ上の弱点 外部ユーザが本来実行できない操作が可能になり 情報が改ざんされたり 個人情報が漏洩したり 踏み台にされたりする OS Web ブラウザ メール クライアント http サーバや DNS サーバなどに欠陥があると それを悪用されて不正実行される 15
セキュリティホールの利用 セキュリティホールを利用した主な攻撃方法を下記に示す (1) バッファーオーバフロー (2) SQL インジェクション (3) クロスサイト スクリプティング (4) クロスサイト リクエスト フォージェリ 16
バッファーオーバーフロー バッファーオーバーフローとはアプリケーションのバグ ( バッファーサイズのチェックが不十分 ) を利用した攻撃 バッファーオーバーフローの原理入力バッファーサイズのチェックが不十分なプログラムに対し 不正に長いデータを入力し バッファー領域の先 ( 戻りアドレス ) を不正に書き換える 書き換えた戻りアドレスの位置 ( 入力バッファー内 ) に不正な機械語プログラムを送り込む 17
バッファーオーバーフロー 日経 BP 社の HP から 18
SQL インジェクション ホームページの入力フィールドの SQL コマンドを不正に入力し データベースの内容を不正に操作すること 原因は入力に対する値のチェックが不十分 新聞等で ハッカーによる不正アクセスで個人情報が漏洩 の多くはこの手法 データベースの内容が改ざんでき ネットバンキングの口座情報が書き換えられる可能性 19
SQL インジェクション 日経 BP 社の HP から 20
SQL 言語 SQL はデータベースを操作する専門言語 データベース マネージメントシステム (DBMS) に命令を送るのが仕事 その文法は一つの文で完結して意味を持つ 条件分岐や繰り返しは制御は持たない 具体例 SELECT * FROM 顧客テーブル WHERE 顧客 ID=1 OR 顧客 ID=3 21
クロスサイト スクリプティング ユーザーの Web ブラウザにスクリプトを送り込み それを実行させる攻撃手法 セッション ID を盗むのに使われることが多い セッション ID を盗むほかの手口は Web サイトとブラウザの間の通信暗号化で防げるが 本方法では暗号化しても防げない 盗んだ Cookie を使えば どのパソコンからでも正規ユーザーになりすまして狙った Web サイトに不正アクセスできる 22
クロスサイト スクリプティング 日経 BP 社の HP から 23
スクリプ言語 機械語への変換作業を省略して簡単に実行できるようにした簡易プログラム作成言語 スクリプト言語で作られたプログラムをスプリクトと呼ぶ Perl や VBScript JavaScript などがある 小規模なプログラムを簡単に作成できる Web ページに動きを加えたり Web サーバ上で動的にページを生成するのに使用 24
Cookie Web サイトでは Cookie を使用してユーザーごとに表示内容を変えたり Web サイトの使用状況に関する情報を収集したりします Cookie を使用して サイトにユーザーの個人設定を記憶させたり サイトにアクセスする際のサインインを省略可能にしたりして 利便性を向上させる Cookie はユーザ領域 (C: users... など ) に保存 25
クロスサイト リクエスト フォージェリ クラッカが正規ユーザーの意図に反して Web アプリを勝手に操作する攻撃 Web アプリにアクセスするスクリプトを ログイン中のエンドユーザーのパソコンに送り込んで不正に起動させる 悪意のあるスクリプト付きの Web ページをエンドユーザーにダウンロードさせる 有名掲示板サイトに気を引く言葉とともに罠を仕掛けたリンクを書き込んでクリックさせる 26