Transcript Document
ACE KG発表
2004/5/13出版
セキュリティの入門書
セキュリティを正しく理解で
きます
本日のアウトライン
はじめに
背景
目的
セキュリティとは
攻撃手法解析
まとめ
背景
今のインターネット
悪意のある人がいっぱい
crack!!
crack!!
crack!!
ぬるぽ!!
crack!!
crack!!
インターネット上の被害件数の増加
悪意のある人がすること
一般ユーザを陥れる
システムをクラッキングする
etc…
一般ユーザを陥れる
キンタマウィルス
Winnyを介して広がるウィルス
PCのファイルを公開
ユーザー名
組織名
デスクトップ画像
ファイル
被害事例
メッセンジャーの過去ログが流出
不倫が発覚!!
システムをクラッキングする
Webの改ざん
2003年12月24日,文部科学省管理下のWebサイトが
クラッカーによる改ざんの被害に遭った
そんなわけで...(余談)
Symantec社の収益
会計年度2003年度
会計年度2002年度
会計年度2001年度
会計年度2000年度
会計年度1999年度
収益:
収益:
収益:
収益:
収益:
14億700万USドル
10億7140万USドル
9億4420万USドル
8億2660万USドル
6億3220万USドル
(゚Д゚)ウマー
目的
RGのみなさんは一般ユーザである以上に,
システムの開発者や管理者でもある
セキュリティに関しての知識を深める
セキュリティとは
セキュリティとは
攻撃者から重要なものを
守ること
セキュリティ≠暗号化
セキュリティ≠アンチウィルスをいれる
何が満たされていれば,守られていると言
えるのか?
Confidentiality - 機密性
Integrity - 完全性
Availability - 可用性
実世界で機密性が保証されてない状態
あややたんのビデ
オで
ハァハァしよう。
1.Confidentiality
機密性
許可されている人だけが情報にアク
セスできるか?
実世界で完全性が保証されてない状態
あややたんのビ
グロ画像だ
デオで
ウボァー
ハァハァしよう。
2.Integrity
完全性
情報の整合性が取れているか?
実世界で可用性が保証されてない状態
つながんねーよ
あややたんのビデオ
ウワァーン
で
ハァハァしよう。
ダウンさせる
3.Availability
可用性
必要な時に情報にアクセス出来る
か?
セキュリティを実現するには
敵を知り、己を知れば百戦危うからず
攻撃手法を知り,その対策方法を
考える
攻撃手法
ターゲットは何か?
クライアント端末(一般ユーザのコンピュータ)
ネットワーク上の通信
サーバ(サービス提供者のコンピュータ)
攻撃手法解析
ターゲット
1. クライアント端末(一般ユーザのコンピュータ)
2. ネットワーク上の通信
3. サーバ(サービス提供者のコンピュータ)
クライアント端末(一般ユーザのコンピュータ)
をターゲットとした攻撃
1. 攻撃の対象とするもの
ユーザの個人情報
メッセンジャーログ
メールデータ
Webブラウザの履歴
パスワード
2. 攻撃手法
パスワードのクラック
ウィルス
ソーシャルエンジニアリング
パスワードのクラックとは
他人のパスワードを解析し、探り当てること
ブルートフォース
辞書攻撃
パスワードのクラック - ブルートフォース
考えられるパスワードの組み合わせ全てを試
す
組み合わせは莫大であるため大変効率が悪い
パスワードのクラック - 辞書攻撃
辞書にある単語を全て試す
大文字小文字の混在や数字を加えたりする
自動処理をさせれば短時間で入力できるため、
基本的なパスワード破りの手口として用いら
れている。
辞書攻撃ソフト ー John The Ripper
母音を削る
Jhn
複数の単語をつなげる
John-The-Ripper
大文字小文字をばらばらに
jOHn
キーボードで一つ右のキーに
Kpjm
後ろに数字や記号をつける
John2
実例
John the ripper version 1.6
Intel(R) Pentium(R) 4 CPU 2.60GHz
解析
asdfasdf
11秒
Tom1
15秒
(FW8Y (*Bf
・・・・
対策
複雑なパスワードにする
パスワードを長くする
意味のある単語は使わない
記号とか数字を混ぜる
大文字小文字も混ぜる
ウィルスとは
ウィルスに意味
悪意のあるコード
実行ファイルに寄生
ウィルスの行動パターン
寄生
潜伏
発病
実行ファイルに寄生
実行ファイルの後ろに
ウィルスのコードをくっつ
ける
実行ファイルのヘッダに
あるスタートアップ・コー
ドのアドレスをウィルス
のコードのアドレスに書
き換える
ウィルスのコードの最後
に実行ファイルの本来
のスタートアップ・コード
を実行するようにする
ヘッダ
main()
本体
ウィルスコード
高度なウィルス
ポリモーフィックウィルス
感染するごとにランダムに暗号化する
メタモーフィックウィルス
ウィルスのコードが変わったりする
Entry Point Obscuring
エントリーポイントではなくその他のコードを書き換
える
対策
アンチウィルスを利用する
Norton Antivirus
ウィルスバスター
McAfee Virus Scan
ソーシャルエンジニアリングとは
社会的な行動による情報取得
人を欺いて情報を盗む
電話やメールで管理者のフリをする
オフラインで,情報を盗む
管理者の会話を盗み聞き
パスワードを後ろから盗み見る
オフィスのゴミをあさる
事例(1)
1998年7月、米シカゴのフォックスTV系列の
Webページが改竄された.
犯人は14歳の少年
手法
1. 少年はISPの初期パスワードを入手
2. ISPへ「パスワードを忘れたのでリセットしてください」と電
話
3. ISPは依頼どおりにパスワードをリセットした
事例(2)
7割強の人が,チョコレートと交換に会社で使用して
いるパスワードを教えた
リバプールストリート駅で,172人の通勤者
質問
チョコレートバー1本と交換に勤め先で使用しているパス
ワードを教えて欲しい
結果
37%の人が即座にこれに応じた.
別の34%の人は、「ペットや子供の名前でも使っているの
だろう」と質問者が言うと,あきらめてパスワードを明らかし
た.
http://japan.cnet.com/news/sec/story/0,2000050480,20065583,00.htm?tag=nl
対策
周りの人を攻撃者として疑う(悲しいけど)
重要な内容の会話は避ける
機密書類はシュレッドする
掲示板などへ余計な情報は書き込まない
家族構成
友達の名前
攻撃手法解析
ターゲット
1. クライアント端末(一般ユーザのコンピュータ)
2. ネットワーク上の通信
3. サーバ(サービス提供者のコンピュータ)
ネットワーク上の通信をターゲットとした攻
撃
1. 攻撃の対象とするもの
通信内容
2. 攻撃手法と対策
Man In the Middle
Man In The Middleとは
通信に介入して、両端の端末に知られることなく通信
の内容を傍受・改ざんを行う
攻撃例
モーニング娘。の
CDがほしいなぁ
Aさん
Aです。
ぁゃゃのCDを買います。
Aの住所に送ってください。
ではモーニング娘のCDを
悪人さんの住所に郵送します。
代金はAさんのクレジットカードから
落とします。
悪人
Aです。
モーニング娘。のCDを買います。
悪人さんの住所に送ってください
amazon.com
対策
通信相手との認証と暗号化が必要
書き換
えられな
い・・・
暗号化
攻撃手法解析
ターゲット
1. クライアント端末(一般ユーザのコンピュータ)
2. ネットワーク上の通信
3. サーバ(サービス提供者のコンピュータ)
サーバ(サービス提供者のコンピュータ)
をターゲットとした攻撃
1. 攻撃対象
DNSサービス
Webサービス
2. 攻撃手法
DoS
バッファオーバーラン
XSS
DoS攻撃とは
サーバにデータを大量させるたりすることに
送って,回線速度を低下させたり,過負荷でダ
ウン
DoS攻撃 事例(1)
2002年10月21日,世界13のルートサーバ
に一斉にDoS攻撃が仕掛けられた
2基が正常なネットワーク・トラフィックに対応
できなくなり、他の7基が断続的に停止
攻撃例
大量のSYN要求をサーバに送信し,サーバの
機能を阻害する
SYN
対策
ある一定量以上の同一IPアドレスからのSYN
要求は受け付けないようにする
ゲートウェイを設置
バッファオーバーランとは
システムが想定している以上のデータをバッ
ファに書き込み,領域外にデータを書き込む
スタック領域のバッファに,このバグがある場合,攻
撃者が任意のコードを実行可能となる可能性がある
バッファオーバーランの仕組み
void funcitonA(){
スタック
int a;
functionB();
…
}
Function
Bのローカル変数
適当なデータ
void functionB(){
char buffer[10];
…
}
Function
virus()のコード
Aのローカル変数
void virus(){
//ファイル消しまくり
}
Function Bが終わった後に
virus()のアドレス
実行するコードのアドレス
対策
定期的にサーバアプリケーションをアップデー
ト
サービスのセキュリティホールを把握
アプリケーションセキュリティに関連したメーリング
リストの購読
CERT
JPCERT
クロスサイトスクリプティングとは
ユーザにWebブラウザで不正スクリプトを実
行させる攻撃
複数のサイトにまたがって攻撃の仕掛けをつく
るため、“クロスサイト” という
クロスサイト・スクリプティング手法
< script>alert(“XS
クロスサイト・スクリプティング手法
クロスサイトスクリプティング事例
HotmailとYahoo! Mailにクロスサイトスクリプティングの脆弱性
(2003.3.23)
情報安全社のWebサイトにクロスサイトスクリプティング脆弱性
(2002.6.24)
政党のWebサイトにクロスサイトスクリプティングの脆弱性が
(2002.4.10)
みずほ銀行のWebサイトにクロスサイトスクリプティングの脆弱性
(2002.4.3)
MewSoft Auction 3.0のクロスサイトスクリプティングの脆弱性
PHP Classifieds 6.0.5のクロスサイトスクリプティングの脆弱性
eFax.comウェブサイトのクロスサイトスクリプティングの脆弱性
クロスサイトスクリプティングの概要
脆弱性のあるサイト
1.Cookieに
保存
悪意のあるサイト
ユーザ登録
4.悪意のあるサイトへcookieの
情報が送信される
2.脆弱性のある
ページを閲覧
掲示板
3.悪意のあるコードを実行
情報漏洩
対策
リンクをむやみにクリックしない
電子メールをむやみに空けない
インターネット・エクスプローラーではセキュリティ設定を高
にする。
総評
ユーザの入力を受け付けるすべてのWebア
プリケーションは、タグやスクリプトなどの予期
しない動作を起こしかねない文字列に関して
は、慎重にチェックして無害化しなくてはならな
い。
セキュリティの脆弱性があるWebアプリケー
ションはすべて攻撃者によって利用されてしま
う可能性がある。