第6回講義資料

講義内容
‡
セキュリティの考え方を知ろう
„
„
インターネット概論
‡
身近な危険性
„
„
„
第5回、第6回: セキュリティ
中村 修
„
„
‡
コンピュータウィルス,ワーム、トロイの木馬
スニッフィング(盗聴)
ソーシャルエンジニアリング
内部からの不正行為
など
対処法
„
„
„
„
„
‡
セキュリティ上の脅威とは何か
どのような技術・対策があるか
Patch / Software Update
Personal Firewall
AntiVirus
暗号化
など
自分がCNSで生き抜くために知っておくべきいろいろなこと
1
2
身近な脅威
身近なセキュリティ
脅威編
Real Space Network
Social
Engineering
Sniffing
IllegalIllegal-copy
Crises are always with you
Cracker
Worm
4
Virus
3
Computer Virus (1) 「ウィルスとは」
‡
コンピュータウィルス
ウィルスとは?
„
自分の複製を作り、ネットワークをはじめとするメディアを
媒介として増殖するプログラム
‡
‡
‡
日常的な危険性
„
„
5
ひたすら感染活動を続ける(ワーム)
ある条件が揃うと被害をもたらす(ウィルス)
個人やメーリングリストにウィルスが送られてくる
直接的なウィルスからの攻撃を受けている
6
1
Computer Virus (2) 「感染と発病」
‡
典型的な感染経路
„
„
„
„
‡
Computer Virus (3) 「問題点」
‡
メールに自分の複製を添付して感染
目標に対して直接攻撃
Webページを見ると感染
P2Pアプリケーションを利用して感染
„
„
‡
„
„
„
„
情報を漏洩
Backdoorの設置
アンチウィルス等を停止させる
ハードディスク内容を消去・改ざん
同じLANにばら撒く
世界中にばら撒く
研究リソースへの影響
„
発病症状
„
他人に迷惑
„
„
共有リソースを破壊
各個人のリソース(PCなど)を破壊
データの削除・改ざん・漏洩
Backdoorを利用した不正侵入(トロイの木馬)
7
コンピュータウイルスとは?
‡
8
ウイルスの被害
広義では何らかの被害を及ぼすために悪意を持っ
て作られたプログラム
‡
一次被害
„
„
„
‡
狭義では以下の3つの機能を有する
„
„
„
‡
感染機能
潜伏機能
発病機能
ハードウェア・ファイルの破壊
サービス妨害
情報漏洩
二次被害
„
„
ウイルスを広める
踏み台に使われる
結果社会的責任を問われる
ウイルス被害の増加
感染経路
‡
感染経路の8割がネットワーク経由
不明
ウイルス届出件数の年別推移
件数
60000
52151
30000
24261
外部媒体
インターネット接続
電子メール
20352
17425
11109
14 57
2004年度 IPA調べ
19
90
19
91
19
92
19
93
19
94
19
95
19
96
19
97
19
98
19
99
20
00
20
01
20
02
20
03
20
04
0
3645
253 897 1127 668 755 2391 2035
2
ウィルスの実例1/3 mellpon
‡
ウィルスの実例2/3 Blaster
フォルダなどに偽装された.exeというファイルを実
行することにより発病
„
„
„
‡
ネットワークに接続しただけで感染
‡
主な症状
„
PCのスクリーンショットを保存
感染者のPCでwebサーバを起動する
感染者のPCにアクセスするための情報を2ちゃんねるに
書き込む
„
„
„
„
プログラムのセキュリティホールを利用
感染活動によりWindowsが異常終了
WindowsUpdateの妨害、DoS攻撃
自身のコピーの作成
無作為に別のホストに対して攻撃
13
14
参考
http://nemoba.seesaa.net/article/2891535.html
Blaster 感染イメージ(アニメーショ
ン)
最近のウイルス事例 その1 Swen
‡
2003年の9月ごろに発見されたコンピュータウイルス
„
‡
感染方法
„
„
Internet
Internet
„
„
„
‡
マイクロソフト セキュリティ情報 MS01-020 に記載されている脆弱性を悪
用して、Outlook や Outlook Express のプレビューウィンドウにメッセー
ジを表示させるだけで自動的に感染する。
E-Mail による感染、拡大
IRC チャネルに接続し、ユーザが参加しているチャネルに参加している他
のユーザにワームを送信
P2P ファイル共有システムである「KaZaA」を利用してウイルスを頒布
共有ドライブにウイルス自身をコピー
News Group に投稿
ウイルスが送信するメールはマイクロソフトからのセキュリティ情報かのよう
に装って送られてくることがある。
„
マイクロソフトが電子メールで直接ソフトウェアを配布することは一切ないの
で注意!!
15
最近のウイルス事例 その2
Blaster
‡
ウィルスの実例3/3 netsky
2003年の8月12日午前2
時よりWindowsを対象とし
て被害を拡大させたワーム
„
„
16
メールの添付ファイルを開くことで感染
‡ 症状(共通)
‡
„
Windows OS の、TCP135
ポート (Microsoft RPC) の
脆弱性を悪用した攻撃データ
を送信する
MS03-026 の脆弱性の対
策がされていない Windows
OS は、攻撃を受け “感染”
し、自らが攻撃者となり他の
システムに対して “感染” 活
動を開始する。
‡
症状(種類によって異なるため一例)
„
17
感染したHDDをスキャンして集めた電子メールアドレスに
向けて自らのコピーをばらまく
パソコンのスピーカーから連続してビープ音を発生
18
3
ウィルスなどの感染活動・能動的
感染
ウイルスの感染原因
不用意なファイル実行やリンクのクリック
„
Code Red, Nimda, Slammer,
Blaster, Witty, Sasser
Number of Security Events (Slammer Worm)
20000
17500
15000
12500
~~.html
04/4/8
04/4/6
04/4/4
04/4/2
04/3/31
04/3/29
04/3/27
04/3/25
04/3/23
04/3/21
04/3/19
04/3/17
04/3/15
04/3/13
04/3/1
~~.html.exe
04/3/9
10000
7500
5000
2500
0
04/3/7
„
ネットワークに接続するだけで感染
04/3/11
„
‡
実行可能形式
.exe、.bat、.scr、.pif、.vbs、.wsh等
マクロが含まれるファイル形式
.xls .doc等
外見を偽装した物
hoge.html.exe
04/3/5
„
04/3/3
‡
MS-SQL Worm propagation attempt
20
パケットの盗聴
‡
盗聴
ネットワーク上ではデータはパケットで送信
„
‡
他のユーザの通信を盗み見ることができてしまう
他のユーザのプライバシを侵したり、不利益を被らせるきっ
かけとなる情報も流通している
„
たとえばtelnet, ftp, pop3といったプロトコルはトラフィックを暗号化
していない
パケット
の盗聴
悪意のあ
るUser
21
22
Sniffing 「内部ネットワーク」 (1/2)
盗聴の手法
Sniffingと呼ばれる手法
‡ 通信路上のデータを盗む
‡
宛先: 00:FF:7B:97:6A:5C
Password = chachamaru
ウケケ
「ログインするための私
のパスワードは・・・」
Packet
僕のじゃない
私のじゃない
…
…
00:FF:97:5C:33:8B
23
00:FF:7B:97:6A:5C
僕のだ!
00:FF:97:5C:33:41
24
4
Sniffing 「内部ネットワーク」 (2/2)
Sniffing 「外部ネットワーク」
‡
MITM(Man In The Middle)
宛先: 00:FF:7B:97:6A:5C
Packet
僕のじゃない
Packet
とりあえず,う
けとっちゃえ!
…
Packet
Packet
Packet
00:FF:97:5C:33:8B 00:FF:7B:97:6A:5C00:FF:97:5C:33:41
僕のだ!
25
Sniffing 「無線の盗聴」
シェアードメディアの場合は・・・
‡
26
無線LANなどでは盗聴が容易
‡
‡
無線は有線以上に盗聴が容易
電波の到達範囲なら盗聴できる
„
„
„
‡
建物の外からでも盗聴可能
設定情報が分からなくても盗聴可能
無線LANの暗号化は(現在のところ)殆ど無駄
AirSnort
„
WEP暗号の解読
27
MSN MessengerとEthereal (1/3)
‡
MSN MessengerとEthereal (2/3)
Ethereal
„
28
‡
LAN内の送受信パケットを調査するためのソフト
29
キャプチャ対象として無線LANインターフェースを
選択してEtherealを実行
30
5
MSN MessengerとEthereal (3/3)
Sniffing (3/5) 「盗聴」
‡
内部ネットワークにて
„
„
宛先が自分ではなかったら「捨てる」
…ということは,「捨てない」事もできる.
‡
中継点
‡
盗聴
„
„
会話の内容がPlain Textの
状態で盗聴できている。
(日本語の場合はUTF-8)
„
どこかで盗聴されている恐れあり
キャプチャソフト (ethereal / tcpdump)
盗聴プログラム (ウィルスなど)
31
Sniffing (5/5) 「何が問題か?」
‡
„
„
„
‡
盗聴のまとめ
機密情報がの漏洩
„
32
‡
内部情報
プライバシー
パスワード
使用しているPCの情報等
‡
無線では、盗聴がこんなにも簡単
もちろん、メッセンジャ以外の通信でもパケット盗聴
されるので、重要な情報をやり取りする場合には注
意が必要
被害
„
„
„
„
メール、Webの情報が盗み見される
成りすましされる
通信を乗っ取られる
不正侵入に利用される
‡
今から使うアプリケーションや通信路では、ど
のようなセキュリティ上の脅威があるかを意識
33
34
フィッシング (1/2)
‡
WEBブラウジング
‡
成りすましページ
対策:
„
„
„
35
URLを確認する
SSLを使用しないWebサイトは利用しない
ウェブブラウザを最新に
出展:http://www.softek.co.jp/Sec/phishing.html
36
6
フィッシング (2/2)
‡
ブラウザクラッシャー
‡
ウィンドウが勝手にたくさん開く
マシンがフリーズする場合も
‡
対処法:
‡
本当に、相手はamazon.comか?
„ 例:amazon.comに成りすまして悪さをするシステム
にせもの
ほんもの
„
„
„
„
成りすましているamazon.comで買い物をしようとすると
自分のクレジットカード番号を成りすまし業者へ送ってしまう
(Phissing)
Crashme、strangeworld、
youareanidiot
ブラウザを変える(OperaやFirefoxへ)
JavaScript を無効にする
GoogleやMSNのツールバーでポップ
アップを防止
37
38
出展:http://www.aa.alpha-net.ne.jp/gfababa/index.html
共有コンピュータの危険
キーロガー (KeyLogger)
インターネットカフェ・漫画喫茶
‡ 公衆端末
‡ 大学の端末
‡
‡
キーロガーとは
„
„
‡
キーボードからの入力を監視し
て記録するソフト
インターネットカフェ・漫画喫茶な
どで仕掛ける
対処法
„
ソフトキーボード
‡
‡
‡
パスワードの記憶
ウェブブラウザの履歴、オートコンプリート
„
スクリーンスクラッパー(スク
リーンショットを送信する手法)
には無効
キーロガーを無効にするソフトを
使う(ノーロガー等)
ログの例:
--------------------------------------------------KeyLogger Version.1.4.0
監視開始時間:2005/04/24 14:59:08
ユーザ名:noda
PC名:NODA-DESK
開発元:http://www.urban.ne.jp/home/noda/
--------------------------------------------------14:59:08 Caption >無題 - メモ帳
14:59:15 Type >korehatessutodesu[SPACE].[Enter]
14:59:22 Caption >マイ コンピュータ
14:59:25 Explorer >file:///C:/borland
14:59:28 ClipBoard>test
39
40
Social Engineering
‡
パスワードクラック
建物への侵入
„
„
„
‡
建物に不法侵入
„
„
„
„
‡
ログインしているPCを勝手に操作
ネットワークの構成を調査
その他,情報を入手
PC本体を盗まれる
組織内の人から情報を聞きだす
„
41
スーツ姿でおもむろに入ってくる
「私,○○技術総研の鈴木と申します」
Piggy back(おんぶにだっこ)
研究室内の人間と偽って,情報を聞き出す(電話,メール)
42
7
内部での不正行為
‡
ここで言う不正行為とは
„
„
„
‡
パスワード保護の重要性
P2Pアプリケーションの不正利用
ソフトウェアの不正コピー
違法コンテンツの配布・コピー
‡
パスワードとは
‡
パスワードが漏れると・・・
„
„
„
他人がある人に成り代わることができる
‡
実質的な被害
„
個人を特定するためのもの
‡
Web上で晒される
組織等の信頼低下
‡
‡
コンピュータへのログインされてしまう
メールの送受信されてしまう
メッセンジャーにログインできてしまう
webのアクセス制限を突破されてしまう
43
44
パスワードの抜かれ方
(1) ソーシャルエンジニアリング
簡単であったり、辞書にある単語だと数秒でクラック
される
‡ 3つの方法
‡
ソーシャルエンジニアリング
社会的な手段によってセキュリティ情報を盗み出す
パスワードに関する情報を含む
ファイルの解析
パケットの盗聴
ネットワーク上に流れている情報から、パスワードを見つ
け出す
‡
‡
„
„
„
ソーシャルエンジニアリングとは
„
社会的な手段によってパスワードなどの
セキュリティ上重要な情報を入手すること
具体例
„
„
„
„
ショルダーハッキング
ごみをあさる
個人情報から推測する
誰かに成りすまして…
‡
‡
電話
建物への侵入
45
ソーシャルエンジニアリングの方
法2/2
ソーシャルエンジニアリングの方法
1/2
‡
46
「NTTのものですが…という事情がありまして、お使
いのパスワードを教えてください」
‡
攻撃対象のオフィスに何食わぬ顔で入って行き、オ
フィスを見て回る
„
‡
→PCに情報が紙で張られていたりする場合、
システムに関係する情報がたくさん盗める
信用できるのか?
„
PCにこのような紙が張ってあったら?
~~~
~~~
~~~
47
ITCの電話番号が変
更になりました。
困ったことがあったら
××番にかけてくださ
い
48
8
総当り攻撃
辞書攻撃
パスワードファイルには
aのパスワードは、ハッシュ化したら
「ijB7f0TYk5jIhjlkdfg」
になる文字列だよと書いてある
‡ いろいろ試してみる
‡
‡
„
„
„
ハッシュ化を試す文字列をたくさん集めた
辞書を用意(10万、20万という単位)
„
„
‡
辞書単語
人や場所の名前
など
それを片っ端からハッシュ化して照合していく
setsunaをハッシュ化すると?「uhf70ushidf」
じゃあkonokaは?「7t6tstt87t4sf」
じゃあ次は・・・
49
パスワード解析ツール
‡
„
‡
パスワードと脅威のまとめ
パスワードの強度を評価するためのツール
„
50
‡
パスワードファイルにはパスワードが
ハッシュ化されたものが保存されている
総当りでいろいろな文字列をハッシュ化して比較する
‡
„
„
„
人間の思考法を考えた実装
„
„
„
„
我々ユーザの周りには脅威がたくさん
パスワードを決める時の注意
„
oを0に変えてみたり・・・
パスワードでは1文字目に何が使われやすいとか・・・
eの後にはrが続きやすいとか・・・
そういったアルゴリズムを以って次々と照合していく
„
短かすぎないか (長ければ長いほど良い)
辞書単語ではないか
逆さ単語とかも駄目
同じパスワードを使いまわしていないか
自分に意味のある文から作るなどは有効
‡
パスワードを扱うときの注意
‡
盗聴される恐れがある環境を使わない、使うときは
パスワードを流さないなど注意を払う
„
簡単に人を信用しない
51
52
ソフトウェアは「完璧」ではない(か
もしれない)
設計に対する実装が不十分
データのチェック不足
‡ プログラムのコーディングミス
‡
攻撃ツールの利用
‡
‡
脆弱性
„
„
プログラム/アルゴリズムのもつ弱点
セキュリティホールになる可能性を持つ
‡
攻撃者の任意のコード(好きなプログラム)を実行
ƒ ファイルを消去
ƒ SPAMメールを送信
‡
53
本来アクセスできない情報を取得
ƒ 他人のメールを読める
54
9
脆弱性の例
攻撃例
対象
Firefox1.0.2
‡ Exploit
内容
リンクのセキュリティチェックの脆弱性によ
るユーザ権限を奪われる危険性
„
„
„
Linux
Kernel2.4.18
カーネルモジュールローダの脆弱性によ
るローカルユーザがroot権限を取得する
危険性
Local Exploit:ローカルユーザのみが攻撃できる
Remote Exploit:ネットワーク越しに攻撃できる
‡ URLによる不正データの送り込み
„
„
MSN Messenger
code
セキュリティホールを突くために作られたプログラム
CGIのセキュリティホールなどに使用
長すぎるPOSTや不当な文字列を含むデータの送信
リモートから任意のコードを実行さる危険
性
55
Buffer Overflowの仕組み(1/2)
Buffer Overflowの仕組み(2/2)
1 mainの命令1
1 mainの命令1
2 mainの命令2
2 mainの命令2
3 mainの命令3
func(6)に飛べ!
3 mainの命令3
4 mainの命令4
int buf[2]
6 funcの命令1
7 funcの命令2
Buf[3] = 0
8 funcの命令3
戻っていいよ
5 mainの命令5
buf[0]
6 funcの命令1
buf[1]
buf[2]
buf[3]
EBP
0
4
7 funcの命令2
世界中のHackerが作成
Webクリックすると簡単に見つかる
‡
‡
‡
‡
‡
‡
„
int buf[n]
Bufにユーザからの
データをコピーbuf[n+1]
戻っていいよ buf[n+2]
シェルを
実行する
スタック
命令
セグメント
EBP
58
Buf[0]のaddr
4
‡
JPCERT/CC REPORT 2005-04-27
脆弱性の発表と同時(or より早く)出る
Script KiddyによるCrack toolにもなる
Portaudit(ex.FreeBSD)
apt-get(ex.debian)
WindowsUpdate(Windows)
Rebuild(source compile)
サービスの停止 or update
‡
buf[…]
Firefox バージョン 1.0.2 およびそれ以前には、リ
ンクのセキュリティチェックに脆弱性があります。結
果として、遠隔から第三者が Firefox を実行してい
るユーザの権限を取得する可能性があります。この
問題は、Firefox をバージョン 1.0.3 (またはそれ
以降) に更新することで解決します。
ソフトウェアのアップデート
‡
buf[1]
‡
Exploitへの対策
„
buf[0]
例1.firefoxの脆弱性
脆弱性をつくために作成されたソフトウェア
„
8 funcの命令3
57
Exploitとは?
„
func(6)に飛べ!
4 mainの命令4
スタック
セグメント
5 mainの命令5
‡
56
アップデートがすぐに出るとは限らない
ƒ ⇒サポートが終了していることも!
59
60
10
例2.Linux Kernelの脆弱性
例3.Windowsの脆弱性
‡
Linux カーネルバージョン 2.4.23 およびそれ以
前と 2.6.0 の mremap シス テムコールには、脆
弱性があります。結果として、ローカルユーザが
root 権 限を取得する可能性があります。
‡
JPCERT/CC REPORT 2004-01-15より
MS05-024 「Web の表示」の脆弱性により、リ
モートでコードが実行される
‡ MS05-016: Windows シェルの脆弱性により、リ
モートでコードが実行される
‡ MS05-022: MSN Messenger の脆弱性により、
リモートでコードが実行される
‡
61
過去のOpenSSHの脆弱性
‡
最近のSendmailの脆弱性
2001年 2月 8日: SSH-1 デーモンにおける
CRC32 埋め合わせ攻撃検出器の欠陥
„
62
‡
March 29, 2003
„
(略)CRC32 埋め合わせ攻撃検出器 (compensation
attack detector) に存在したバッファオーバーフローは、
リモートでの root アクセスを可能にする(略)
Sendmail のメールヘッダーの処理に、バッファオー
バーフローの脆弱性があり、 サービス妨害攻撃を受けた
り、リモートからの攻撃者に Sendmail デーモンの権限
(通常は root 権限)で任意のコードを実行される可能性
があります。
63
64
セキュリティ崩壊のシナリオ (1/7)
セキュリティ崩壊のシナ
リオ例
侵入から伝播まで
Attacker
Router
Firewall
Target
65
66
11
セキュリティ崩壊のシナリオ (2/7)
Attacker
Router
セキュリティ崩壊のシナリオ (3/7)
Firewall
Attacker
Webページから不
Webページから不
正プログラムをダ
正プログラムをダ
ウンロード
ウンロード
Router
Firewall
不正プログラムのバックド
不正プログラムのバックド
アを利用してホストに侵入
アを利用してホストに侵入
67
セキュリティ崩壊のシナリオ (4/7)
68
セキュリティ崩壊のシナリオ (5/7)
取得したパスワードを使っ
取得したパスワードを使っ
て他のホストへも侵入
て他のホストへも侵入
Attacker
Router
Firewall
キーロガーを使って他のホ
キーロガーを使って他のホ
ストへのパスワードを取得
ストへのパスワードを取得
Attacker
70
セキュリティ崩壊のシナリオ (7/7)
通信を改ざんして悪意のあ
通信を改ざんして悪意のあ
るプログラムを送り込む
るプログラムを送り込む
登録されてある鍵を解析し
登録されてある鍵を解析し
てさらに別ホストへ侵入
てさらに別ホストへ侵入
Router
Firewall
69
セキュリティ崩壊のシナリオ (6/7)
Attacker
Router
Firewall
Attacker
Router
Firewall
このホスト踏み台にして,別
このホスト踏み台にして,別
のネットワークに攻撃する
のネットワークに攻撃する
通信を盗聴して内部情報を盗む
通信を盗聴して内部情報を盗む
71
72
12
身近なセキュリティ
対策編
どう対策するのか?
To survive
73
Patch & Software Update
身近な脅威
‡
Real Space Network
Social
Engineering
74
ソフトウェアの欠陥を修復する
„
Sniffing
IllegalIllegal-copy
„
???
Not Use
Cracker
‡
Encryption
Windows Update
„
Beware
„
Personal
Firewall
Warm
„
‡
‡
‡
76
攻撃を事前に防ぐために
Windowsを使う人はWindows Update
„
自分で更新情報などに気を配る
75
Virus
脆弱性の解消 patchの適用
‡
自動実行 / 手動実行 (最近は毎月10日)
再インストールしたら必ず実行
やらない人はグーでパンチ
その他のSoftware
„
Anti Virus
Patch: 欠陥を一部修復するプログラム
Software Update: 欠陥を修復済みのソフトと入れ替
え
‡
自動更新/重要な更新の通知
1.
Debian Linux:
apt-get upgrade
Mac OSX:
システムの更新
「ソフトウェア」の視点からみると…
自分の環境を把握する
„
„
2.
ソフトウェアに関する情報を入手
„
3.
77
入っているソフトが分からなければ防げない
不必要なサービスは危険性を増す
特にセキュリティアップデートに関する情報
必要に応じてアップデート
78
13
セキュリティホールの対策(1/2)
ソフトウェアのアップデート情報
‡
メールによる通達
„
‡
MSセキュリティニュースレター
„
freebsd-security-notifications
‡
‡
„
Windows updateの事前通達/更新情報
apache,wget…
セキュリティ情報をまとめたWeb
„
Security Focus
‡
„
http://www.securityfocus.com
セキュリティホール memo
‡
「機能拡張」のためではなく「セキュリティアップデート」
Platform
FreeBSDのシステムに関するセキュリティアラート
Etc..(各ソフトウェアごとに)
‡
‡
ソフトウェアのアップデート
「重要な」セキュリティ情報
„
„
‡
JPCERT/CC レポート
http://www.st.ryukoku.ac.jp/~kjm/security/memo/
一般的な対策
Windows(アプリケーション)
Windows(OS)
FreeBSD
最新版のダウンロード
Windows Update
Debian/GNU Linux
Fedora
(ソースコンパイル)
apt-get
yum
Portaudit/portupgrade
バージョンアップ
79
定期健診(1)
セキュリティ・パッチをあてる
‡
‡
‡
80
Windows Update
Windowsにセキュリティ・
パッチをあてる
コンピュータを最新の状態
に保つようにする
Windows のオンラインの
拡張機能
‡
Symantec Security Check
„
両方とも実行しよう
81
オンラインスキャンはあくまで簡易
版
定期健診(2)
‡
82
Trend Micro ウイルスバスターオンラインスキャン
検出はできても削除できないこともある
‡ 製品を購入しないと削除できない
‡ 無料
‡
‡
ちゃんとしたウィルス・チェッカ製品
„
„
83
パターンファイルをインターネット経由で更新
新しい型のウィルスを24時間体制で監視、対策を講じて
くれる
84
14
セキュリティホールの対策(2/2)
‡
セキュリティホールのまとめ
サービスの停止 or 設定の変更
„
‡
‡
„
ソフトウェアのアップデートを放っておくとセキュリ
ティホールを「本当に」攻撃されることがある
‡ ソフトウェアの情報は適宜取得
‡ 必要に応じて適切な処理
‡
アップデートがすぐに出るとは限らない
早くても数時間~2,3日
遅いと忘れた頃?
サポートが終了していることもある
‡
‡
Windows98(2004年1月16日終了)
WindowsNT(2004年6月30日終了)
85
86
AntiVirus (1) 「効能」
ウィルス対策ソフトと
Personal Firewall
‡
ウィルス感染を防ぐ
„
„
„
‡
メールで送られてきたウィルスを自動的に削除
Webからのウィルス感染を防御
CD,フロッピーなどからのウィルス感染を防御
ウィルスのチェック
„
定期的にハードディスクをスキャン
87
AntiVirus (2) 「弱点」
88
AntiVirus (3) 「主なソフトウェア」
‡
Personal Firewallと併用するべき
ウィルスによる攻撃も阻止
‡
Norton AntiVirus
‡
入れているだけでは駄目
‡
ウイルスバスター
‡
McAfee VirusScan
‡
AVG Free Edition
„
„
„
„
„
‡
パターンファイルのupdate
最近は爆発的な勢いでウィルスが流行
定期的なScan
ウィルスに停止させられていないか確認
既知のウィルスにのみ対応
„
„
パターンファイルが間に合わないウィルスには未対応
自作ウィルスには対応不可
89
90
15
ウィルス対策
‡
怪しいファイル、リンクをクリックしない
„
„
‡
‡
機能
‡
動作
„
拡張子が見えるようにしておく
„
‡
知らない人からの添付メール
怪しいサイトの怪しいリンク
ウイルス対策ソフトのはたらき
„
Windows標準設定では隠されている
ウイルスの発見と駆除・感染防止
リアルタイム検査
‡
‡
セキュリティホールを塞ぐ
‡
„
定期的なファイル検査
‡
ウイルス対策ソフトの仕組み 1/2
‡
パターンマッチング
„
„
‡
„
メタモフィック型
„
ステルス型
‡
‡
‡
„
„
„
既存のプログラムに潜伏
前述の方法で防げないウイルスの出現
‡
現在8万種以上のウイルスが存在
ひと月に500以上の新種・亜種が誕生
„
セキュリティホールを突くウイルスなど
‡
ネットワークからの隔離
‡
関係者(ネットワーク管理者など)に連絡
‡
レスキューディスクを用いウイルスを検査・駆除
‡
可能な限り環境の再構築を
„
„
„
定期的なパターンファイルの更新
‡
„
ウイルスに感染してしまったら?
パターンファイル更新での対応には限界がある
‡
„
ウイルスや既存のプログラムの振舞いを監視
化けの皮をはがした時に捕まえる
未知のウイルスにも対応できるかも
感染の度に少しずつ変化させる(整形)
既知のウィルスにしか対応できない
„
ヒューリスティック・ビヘイビアブロッキング
自らをランダムに暗号化(変装)
ウイルス対策ソフトとその限界
‡
‡
ウイルスも負けていない
ウイルスも変装・整形し身を隠す
ポリモフィック型
既に感染したファイルの検査
ウイルス対策ソフトの仕組み 2/2
ウイルスの特徴を定義ファイルと照合
定義ファイルの更新により、照合するウイルスのデータが
更新される
„
ディスクの読み書き時のファイル検査
実行中のプログラムの検査
通信内容の検査
パターンファイル更新頻度
2004年のアップデート215回(TrendMicroの例)
一日に二度三度更新されることもある
„
ウイルスの拡散・二次被害防止
既に広まった可能性への対応
感染したマシンで正しく検査・駆除できる保証はない
一度感染したマシンは何がどうなってるか判らない
定期的なファイル検査
‡
パターンファイル更新前に感染した可能性に対応
16
自分のマシンを守る
もし、感染してしまっても・・・
‡
Personal Firewallを導入していれば
被害を最小限に留めることができる“かも”
‡
セキュリティ・パッチをあてる
„
~~.exeがDNSサ
ーバに接続しよう
としています。
„
„
‡
パーソナルセキュリティ製品
„
リモートシステムがコンピ
ューター上の~~.exeにア
クセスしようとしています
買ったままの状態のOSやアプリケーションにはどうしても
セキュリティ・ホールが存在する
セキュリティ・ホールが発見されるたびに穴をふさぐ必要
がある
例:windows update, live update(symantec)
„
Personal Firewall:Norton Internet Security,
WinXPのfirewall機能など
Virus Checker:Norton Anti-Virus, TrendMicro ウ
イルスバスターなど
97
WindowsXPの簡易ファイアウォー
ル
パーソナルファイアウォール(1/3)
‡
‡
98
Windows XP に標準で
付属
Firewallの機能を提供
‡
‡
ネットワークからやってくるパケットをフィルタリングできる
内部からのパケットに関しては一切関与しない
コントロールパネル
ネットワーク接続
2. 各接続のプロパティ
3. 「詳細設定」タブ
4. “インターネットからこの
コンピュータへのアクセ
ス.….”をチェック
5. 設定
‡
1.
99
パーソナルファイアウォール(2/3)
‡
100
パーソナルファイアウォール(3/3)
Norton Internet Security
‡
TREND MICRO ウイルスバスター
„
http://www.symantec.com/region/jp/products/nis/
„
http://www.trendmicro.co.jp/product/vb2003/index.aspu
„
最新のウイルス対策強化、スパムメール対策機能追加など
„
MSBlast(エムエスブラスト)やNimda(ニムダ)のような、セキュリティホールを
悪用して感染を拡大する「ネットワークウイルス」のセキュリティ強化
‡
‡
‡
101
アクセス制限
ウィルス感染自動修復
ウイルスアウトブレーク緊急警告
102
17
パーソナルファイアウォールがあ
れば安全?
Personal Firewall (1) 「概要」
Windows Userは必須
‡ クライアントマシンの
そうともいえない
‡ 例:
‡
‡
„
DoSアタック(DoS = Denial of Service)
パケットはPC内のFWで落とされる
„
フィルタするために処理が必要
„
‡
„
„
PCまでは到達している
‡
インターネットからのパケットを制限
インターネットへのアクセスを制限
ユーザが明示的に許可したソフトのみにインター
ネットアクセスを許可する
‡
‡
ファイアウォール
‡
103
Personal Firewall (2) 「弱点」
‡
‡
‡
AntiVirusと併用
Windows
„
OSが起動した後でPersonal Firewallが起動
„
起動するまでの間にOSが瞬殺される恐れあり
起動の順番によってはソフトウェアも瞬殺される
„
„
„
‡
アクセスログが残る
„
„
設定によって効果が左右される
„
104
Personal Firewall (3) 「主なソフト」
通信内容まではチェックせず
„
‡
ウイルスやWormをばら撒くのを水際で防げる
トロイの木馬やスパイウェアを防ぐことができる
気づかないうちにサービスを動かしてしまっている場合でも、通信
を遮断できる (ex: スパイウェア)
„
むやみやたらに通信を許可すると意味が無い
„
Windows XP SP2
Norton Personal Firewall
/ Internet Security
ウイルスバスター
McAfee
Zone Alarm Pro
Tiny Personal Firewall
BlackICE Defender
‡
*BSD
„
„
„
‡
Ipfilter
Ipf
pf
Linux
„
iptables
105
ウィルスの脅威と対策のまとめ
Personal Firewallの仕組み
‡
‡
コンピュータとネットワークの間の門番
門番は通信を見て判断
„
„
106
ウイルス被害は増加傾向
‡ ウイルス対策
‡
送信元プロセス, 送信元IPアドレス, 送信元ポート
宛先プロセス, 宛先アドレス, 宛先ポート等
„
„
„
„
怪しいファイルやリンクに注意を払う
ウイルス対策ソフトを導入し
こまめに更新・検査を行う
Personal Firewallを導入する
‡
‡
ネットワーク
Personal
Firewall
被害を最小限に留めることができる”かも“
感染したら・・・
„
„
ネットワークからの切断、そして駆除
できる範囲で環境の再構築
107
18
パスワードの付け方
例:
‡
パスワードのつけ方
Minn7no?;
日本語語呂合わせ例:「みんなの?」
自分しか知らない言葉・事柄
生年月日などの個人情報を含まない
辞書にある単語を使わない
文字の並びに法則を持たせない
大文字・小文字・数字・記号
できる限り長く (利用できる最大文字数がよい)
‡
‡
‡
‡
‡
‡
‡
109
110
通信路を守る
‡
コンセプト
‡
通信路を守る
„
„
„
いくらがんばって両端をまもって
も、間が守られないと意味がな
い
あいだの通信路を守る
相手と自分だけを信用する
通信路を守る技術
„
WEP
„
SSL
‡
‡
„
WEBブラウザでの暗号化
IPsec
‡
„
無線通信路の暗号化
IP層以上の情報を暗号化
SSH port forwarding
‡
アプリケーション層での暗号化
ここを安全に
111
暗号化 (1) 「暗号の基礎1」
‡
暗号化 (2) 「暗号の基礎2」
共通鍵暗号 / 対称鍵暗号
„
„
„
112
‡
同じ鍵で暗号化 / 復号化
(比較的)高速に暗号化
同じ鍵をあらかじめ共有しておかなければならない.
公開鍵暗号 / 非対称鍵暗号
„
„
„
„
暗号化
暗号化する鍵と,復号化する鍵が違う
(比較的)処理が遅い
違う鍵を使えばよいのでネットワーク越しでも安全.
認証もすることができる.
暗号化
復号化
データ
データ
復号化
データ
データ
公開鍵
送信側
受信側
113
送信側
秘密鍵
受信側
114
19
暗号化 (3) 「暗号の基礎3」
‡
無線LANの危険性 – 暗号化の必要性
一方向性関数(ハッシュ関数)
„
„
„
„
‡
無線通信は傍受が簡単
→ WEPを使用し、送信するパケットを暗号化する
暗号化しかできない (復号するのは不可能)
同じものに対しては,何回やっても同じ結果
出力されるのは小さいデータである事が一般的
最も簡単な例: x / 13 の余り (x mod 13)
‡
‡
30 / 13 … 余りは4
余りは4 … ?? / 13
基地局の周りなら
線を繋がなくても
傍受し放題
一方向性関数
(ハッシュ関数)
ハッシュデータ
データ
無線基地局
115
116
Layer 2
無線での暗号化 (WEP)
‡
‡
‡
暗号化 (4) 「SSH」
Wired Equivalent Privacy
64bit / 128bit の鍵長
128bit 版でも安全でない場合がある
‡
SSHとは
„
„
初期ベクタ
秘密鍵
ペイロード
チェックサム
XOR
‡
共通鍵暗号 + 公開鍵暗号を使用
„
暗号文
IV
‡
Secure SHell
通信内容を全て暗号化してリモートホストへログイン
„
メッセージ
公開鍵暗号で認証 (or パスワード)
共通鍵で暗号通信
より進んだ暗号規格
„
WPA-AES (Wifi Protected Access)
117
SSH
SSH (Secure Shell)
Secure Shell
‡ アプリケーション層の暗号化ツール
通信路を暗号化し、安全にリモートログインするた
めのソフト
‡ UNIXでは SSH –l[user] [host]
‡ WindowsではPuttyなどのソフトを使用
‡
„
„
‡
118
‡
暗号化通信路を構築
Telnet は内容が丸見え
公開鍵暗号方式
„
接続先が増えれば増えるほど管理する鍵も増える
TCP/IP Application Client
TCP/IP Application Server
Port Z
Port K
Port Y
Secure Channel
SSH
Port X
SSHD
Port J
119
120
Port22
20
WinSCP
‡
暗号化 (5) 「?? over SSL」
SSHを利用する、SFTP/SCPのファイル転送ソフト
‡
SSLとは
„
„
‡
Secure Socket Layer
暗号通信プロトコル
様々なプロトコルを暗号化できる
„
„
„
SMTP(メール送信)
POP3(メール受信)
FTP(ファイル転送)
121
122
SSL /TLS通信
SSL(WEBサーバとブラウザで暗号化通信)
Secure Socket Layer
商用サイトにおける会員登録、クレジットカード番号
入力時などに用いられる
‡ WebサーバとWebブラウザ間での通信内容は保
護される
‡ これで完全に安全か?
‡
‡
‡
SSL (Secure Socket Layer)
„
„
‡
Netscape Communications社が開発
様々なセキュリティ技術を組み合わせて、
データの盗聴や改ざん、なりすましを防ぐ
TLS (Transport Layer Security)
„
SSL3.0をもとにIETFで標準化
商用サイトの管理が
悪ければ情報は漏洩
„ 悪意のある者がすでに
個人情報を持っている
場合もある
„
123
SSLを用いた通信方法
124
メール配送の仕組み
メールサーバ
インターネット
出典:http://bb.watch.impress.co.jp/cda/parts/image_for_link/24125-8158-7-1.html
125
126
21
POP3 (Post Office Protocol)
メール受信時の危険性
‡
POP3 (Post Office Protocol)
„
‡
受信パスワードも本文も盗聴可能
インターネットで電子メールを保存している
サーバからメールを受信するためプロトコル
„
„
„
パスワード
サーバへの接続
メッセージの回収
サーバ上のメッセージの削除を行う
Password送信(クリアテキスト)
Password送信(クリアテキスト)
メールを受信
メールを受信
127
Mail Server
(POP)
User
APOP (Authenticated Post Office
Protocol)
User
Mail Server
(POP)
128
POP over SSL
メールの受信に使用されるパスワードを
暗号化する認証方法
‡ キャンパス外からCNSへメールを受信したい場合、
APOPを利用すれば受信可能
‡ パスワードのみの暗号のためメール本文は盗聴さ
れる恐れがある(本文にパスワードなど重要な内容
を書いてはいけない)
‡
‡
メールを受信するユーザとメールサーバ間の通信を
暗号化
通信自体を暗号化
Password送信
Password送信(暗号化)
メールを受信
User
メールを受信
Mail Server
(POP)
User
129
メール受信側のセキュリティとして、暗号化された通信をする
„
„
APOP (Authenticated Post Office Protocol)
POP over SSL
‡
メール送信側のセキュリティ
‡
メール本文の暗号化 / 電子署名
„
„
130
メール以外の通信のパケット盗聴
対策
メールの暗号化
‡
Mail Server
(POP)
‡
ネットワーク層
‡
セッション層
„
SMTP over SSL/TLS
„
IPsec
SSL/TLS通信
‡
PGP (Pretty Good Privacy)
POP3
APOP
POP3S
IMAP4S
PGP
SMTPS
パスワードの
暗号化
×
○
○
○
×
○
メール本文の
暗号化
×
×
○
○
○
○
‡
アプリケーション層
„
„
131
HTTPS, POP3S etc…
PGP
SSH
132
22
暗号化される範囲
各セキュリティプロトコルの実装
SSLの場合
PGP
アプリケーション層
プレゼンテーション層
メール、ブラウザ
SSL/TLS
セッション層
アプリケーション層
TCP
TCP
トランスポート層
IP
IP
ネットワーク層
IPsec
データリンク層
物理層
133
IPsec
134
物理層
IPsec
IPパケットを暗号化して送受信する
„
PGP
メールクライアント
IPsec
データリンク層
‡
IPsecの場合
SSL
トランスポート層
ネットワーク層
PGPの場合
‡
‡
TCPやUDPなど上位のプロトコルを利用するアプリケー
ションはIPsecが使われていることを意識する必要がない
コンセプト:アプリケーションに関係なく、すべての通信を自動的に暗号化
IP層で暗号化を行うため、上位層は暗号化を意識する必要がない。
完全性 パケットの署名を検証することで
経路上での改竄を発見できる
NG
ペイロード
IPヘッダ
パケットには必ず署名がしてあり署名が
無いか不正なパケットは破棄される
通信路が暗号化されているため
第三者には内容がわからない
?
暗号化
ペイロード
IPヘッダ
NG
図未完成
135
暗号化
認証
136
IPsec / IKE (Internet Key
Exchange)
‡
どうやって相手と鍵を交換すればいいのか?
„
„
暗号化・認証のために鍵を共有する必要性
2段階の鍵交換
‡
‡
‡
Phase 1
Phase 2
情報の確からしさの保障
IKEのための鍵交換 + IPsec のための鍵交換
Phase 1:Diffie-Hellman鍵交換によりIKE同士でセッション鍵を共有+認証
Phase 2:Phase1 でできた安全な通信路上でIPsec用の鍵を交換
Phase1の役割は,
1. 電子証明書などで通信相手を認証する
2. DH鍵交換によりセッション鍵を交換する
IKE の通信 (鍵の交換用)
暗号化する
IPsec用の鍵
IPsec の通信 (データ通信)
137
138
23
現実社会での2つの方法
確からしさを守る
‡
コンセプト
„
„
‡
通信路、両端も守られている
その上の情報をどのように信用するか?
自分が自分であることを証明する方法を考える
„
権威のある人に証明してもらう
‡
‡
‡
‡
現実社会では
„
„
„
„
このATMは本物の銀行のATMなのか?
この郵便ポストは誰かが置いた偽者なのか?
水道局のほうから来ましたというセールスマンは、本当に
水道局の人間か?
免許証
学生証
S/MIME
知り合いに証明してもらう
‡
‡
‡
友達の友達は、友達
友達の輪
PGP
139
PGPとS/MIME
コンピュータ世界の2つの方法
‡
世界規模での認証(信頼できる第三者機関)
„
‡
„
‡
認証局
‡
‡
140
„
発行元の認証局が信頼できるか?
(有名なのはVeriSign, Thawte…など)
期限切れではないか?
CRLを確認する
„
„
‡
電子証明書…X.509証明書
„
„
あいつらが言うのだから正しいだろう
PGP
‡
‡
署名の多い公開鍵は信用度が高い
(公開鍵の署名による「相互信用」)
Key fingerprint (例:[A0F4 5293 2906 7BE9 E0FC 4264
6992 C64A 1877 0102])
‡
Pretty Good Privacy
市民のための暗号ツール
輸出規制・特許問題の的に
S/MIME
„
仲間内での認証(信頼できる第三者)
„
PGP
Secure MIME
PKCS(公開鍵暗号技術の規格群)に準拠
鍵の配布方法の違い
„
„
PGP = 「友達からは直接もらう.友達のサインがあれば
信頼できる鍵だろう」
S/MIME = 「認証機関のサインがあれば信頼できるだろう」
141
142
電子署名(2)
電子署名(1)
送信者
改ざんの検出
‡ 本人のものであるかどうかの確認
‡ 通常はメッセージダイジェストと非対称暗号技術の
併用によって実現
‡
‡
暗号化された
メッセージダイジェスト
平文
署名
署名
秘密鍵(Private Key)
公開鍵(Public Key)
メッセージダイジェスト
„
平文
暗号化
任意のデータから、そのデータ特有とみなせる短い(百数
十ビット程度)情報(メッセージダイジェスト)を抽出する技
術
143
複合したダイジェストが
平文から計算した
ダイジェストと一致するか
受信者
送信
あらかじめ
配付しておく
暗号化された
メッセージダイジェスト
平文
署名
平文
複合化
署名
144
24
電子署名の例(PGP - Pretty Good
Privacy)
証明書(1)
公開暗号技術の補完的役割
‡ ある公開鍵の持ち主が本当にその人であるかどう
か保証するための仕組み
‡ 証明書自身が改ざんできない構造を提供
‡
-----BEGIN PGP SIGNED MESSAGE---Hash: SHA1
これは私が書いた文章です。
本当ですよ。
-----BEGIN PGP SIGNATURE----Version: PGPfreeware 5.5.3i for non-commercial use <http://www.pgpi.com>
iQA/AwUBOjNAN4FmFHlbBIF8EQL5gwCfd+x9vVd0ZjXkyU6bDi/nJKkXxE0A
n2RR
iihDiTBa813LUT5asIu+1R0k
=8N/5
-----END PGP SIGNATURE-----
公開鍵
公開鍵の持ち主?
145
証明機関(CA: Certificate Authority)
証明書(2)
‡
146
証明書の受け取り(サーバ証明書交付)
‡
「この人の鍵はこれ」というふうに証明書に署名して
くれるような、みんなが信頼しているところ
CA
この鍵を証明
して欲しい
CAによって署名された
Aさんの鍵だという署名
証明書と一緒にメッセージを
送ることで自分を証明する
147
証明書のしくみ - PKI
CAを信じて本人だと認める
Bさん
148
セキュリティ実現の
ための基礎技術
Public Key Infrastructure
電子証明書
Aさん
電子証明書
認証局
A社
暗号技術と認証技術
パーソナル・セキュリティ実現のために
知っておくべき基礎
公開鍵登録
公開鍵登録
インターネット
秘密鍵で暗号化/公開鍵で解読
B社
149
150
25
共有鍵暗号方式
暗号技術
‡
送信者と受信者は暗号・復号に同じ鍵を使う
‡
処理速度は比較的速い
‡
送信者と受信者間の鍵の受け渡しが問題
複数人の間で鍵を安全に共有するのが面倒
•
暗号化・復号化に
同じ鍵を用いる
暗号化
復号化
151
DES
‡
„
‡
‡
米商務省標準局が標準化
最近までのスタンダードな暗号アルゴリズム
„
„
„
DESの後継となる標準的な暗号アルゴリズム
128bit長のブロック
‡ 2000年10月RijndaelがAESとして採用された
‡ デザインポリシー
ハードウェアでの実装を主眼に
ソフトウェアでの実装を難しく
„
56bitの固定長の鍵長
„
Advanced Encryption Standard
‡
DESのデザインポリシー
„
‡
AES
Data Encryption Standard
„
152
„
コンピュータの計算能力の向上により不十分に
1999年の暗号解読コンテストでは22時間15分で解読
„
可変長の鍵
ハード・ソフトで実装可能に AESの暗号化操作におけるラウンド数
ロイヤリティフリー
ブロック長(128bit)
196bit
256bit
鍵長(128bit)
10
12
鍵長(196bit)
12
12
153
鍵長(256bit)
‡
「鍵を相手にいかに安全に渡すか」が、問題
1975年に「公開鍵暗号」の概念が出る
„
「暗号」のパラダイムシフト
14
‡
‡
‡
共通鍵
14
14
R.Rivest, A.Shamir, L.Adelmanの三人による実装
公開鍵暗号の実装
「オイラーの定理」と「2つの素数」
„
同じ
大きな数の素因数分解の難しさ
M : 平文
公開鍵
公開鍵 ・・・・・・
・・・・・・ (n,
(n, e)
e)
秘密鍵
秘密鍵 ・・・・・・
・・・・・・ (n,
(n, d)
d)
共通鍵暗号
M
ある長さのビット列を2進数
表現による整数とみなす
(例 101→5)
復号
暗号
暗号化
暗号化 [e乗]
[e乗]
公開鍵暗号
ペア
公開鍵
14
RSA
公開鍵暗号のデザイン
‡
14
154
秘密鍵
155
n = p * q (p と q は両方とも
大きな素数)
φ(n) = (p-1)(q-1)
gcd(φ(n), e) = 1; 1 < e < φ(n)
d = e^-1 (mod φ(n))
e
復号化
復号化 [d乗]
[d乗]
M^ (mod n)
C
C : 暗号文
M = C^d(mod n)
= (M^e)^d (mod n)
= M^ed (mod n)
= M (mod 156
n)
26
公開鍵暗号の例
‡
„
„
‡
暗号文=平文E mod N
公開鍵は { E, N }
„
‡
公開鍵
‡
秘密鍵
‡
例:
„
複合化
„
‡
公開鍵暗号の例
暗号化
平文=暗号文D mod N
秘密鍵は { D, N }
„
E, D, N の作り方
„
N = p * q (p, q は素数)
„
L = 最小公倍数 (p-1, q-1)
„
„
E は以下の二つの条件を満足する任意の数
„
‡
‡
„
‡
‡
„
Ex) p = 13, q = 17 ⇒ N = p * q = 221
Ex) L = 最小公倍数(p-1,q-1) = 最小公倍数(12, 16) = 48
1<E<L
最大公約数 (E, L) = 1
„
(ex. E = 5
D は以下の二つの条件を満足する任意の数
‡
‡
„
1<D<L
E * D mod L = 1 (ex. E * D mod L = 1, 5 * D mod 48 = 1, D = 29
„
E = 5, N = 221
D = 29
平文 = 184 とすると、
暗号文=平文E mod N
1845 mod 221 = 97
暗号文=97 とすると
平文=暗号文D mod N
9729 mod 221 = 184
157
158
認証
認証技術
コンピュータは利用者をどのように判別すればよいだろうか?
受信者は送られてきたメールの送信者が本当は誰であるか判断できるか?
159
認証技術の変遷
‡
認証技術で気をつけること
平文パスワード認証
„
160
‡
普通にパスワードを送って認証
認証(authentication)と認可(authorization)
„
„
‡
ハッシュ関数を使った認証
Challenge & Response
‡
OTP
‡
„
„
„
認証は「この人は本当に誰なのか」確認する作業
認可は「こういう人はこれこれをして良い」と許可すること
人によってできることは違うので 認証 ≠ 認可
サーバからの challenge を暗号化して返信
Aさんは
閲覧だけ
(例)
Aです
使い捨てのパスワード
IPアドレスによる認証
‡ 時間にもとづく認証
認証
‡
Bです
161
認可
Bさんは
編集もOK
162
27
メッセージダイジェスト関数
‡
1
メッセージダイジェスト関数と認証
パスワード
送信ホスト
不定長のデータを固定長に変換する関数
„
受信ホスト
ハッシュ値
MD関数
変換結果の固定長のデータ→ハッシュ値
もとのデータを逆算できない
‡ あるデータからは必ず同じハッシュ値
‡ MD2,MD5,SHA1
?
メッセージ 1. パスワードを付け
てハッシュする
‡
2
?
2. ハッシュ値と
メッセージを送る
送信ホスト
MD関数
4. ハッシュの結果
を比較する
3. 同じパスワードで
ハッシュを作る
受信ホスト
3. 送られてきたハッシュ値を同じ鍵で復号化
?
暗号化された
ハッシュ値
MD関数
1. ハッシュの結果を
パスワードで暗号化する
ダイジェスト
逆算不可能
?
?
4. 手元で生成した
ハッシュ値と比較
2. 暗号化された
ハッシュ値と
メッセージを送る
163
Challenge & Response
?
164
OTP (One Time Password)
一度しか使用できないパスワード
盗み見に対応できる
‡ Challenge & Response を利用
‡
‡
(1) challenge(乱数)
クライアント
(2) 乱数を
暗号化する
ログインN回目
(3) response
「パスフレーズを k 回
ハッシュしたものを送れ」
Pass Phrase
Pass Phrase
「これです」
サーバ
サーバ
クライアント
暗号化したものの結果が同じであればお互い
に同一の鍵を持っていることが分かる
(4)サーバが暗号化した
ものと照らし合わせる
「パスフレーズを k-1 回
ハッシュしたものを送れ」
ログインN+1回目
Pass Phrase
Pass Phrase
「これです」
165
クライアント
166
サーバ
不正アクセス禁止法
‡
法律・組織
不正アクセスは処罰されます
„
他人のID・パスワードを無断で使用する行為
セキュリティ・ホールを攻撃してコンピュータに侵入する行為
不正アクセス行為を助長する行為
„
公布・改正
„
„
‡
‡
‡
公布:1999(平成11)年8月13日 - 施行:2000(平成12)年2月13
日
改正:1999(平成11)年12月22日 - 施行:2001(平成13)年1月6
日
„
不正アクセス行為に対する罰則
„
不正アクセス行為を助長する行為に対する罰則
‡
167
EX)他人のID・パスワードを第三者に提供する行為
‡
1年以下の懲役 または 50万円以下の罰金
30万円以下の罰金
168
28
セキュリティ要件例 Common
Criteria(CC)
セキュリティに関する組織
国際的なIT セキュリティ評価基準
機能項目
機能概要
‡
ISO/IEC15408(JISX5070)
利用者の識別と認証
利用者を一意に識別するための機能,本人であることを確認
‡
するための機能,利用者のセキュリティ属性を管理するため
の機能ほか
システムへのアクセス管理 システム利用に関する情報の表示機能,利用中断時のロッ
ク機能,同一利用者による同時セッション数の管理機能ほか
データへのアクセス管理 アクセス権限のチェック機能,データの秘匿機能,データの保
全機能,記憶媒体上のデータの後始末管理機能ほか
監査
監査用ログデータの収集機能,監査用ログデータに対する
保全機能,監査用ツール,監査業務機能ほか
保全管理
セキュリティ機構の保全,システムやデータ保管媒体の二重
化機能,障害からの回復機能,信頼性確認機能ほか
信頼パス
利用者とシステム間との安全な通信路を確保するための機
能・機構
資源の利用管理
フォールトトランス機能,資源の割当管理機能ほか
169
データ通信
通信データの秘匿機能,通信データの保全機能
JNSA (Japan Network Security
Association)
日本ネットワークセキュリティ協会(JNSA)
‡ JPCERT/CC
‡ Telecom-ISAC Japan
‡
170
JPCERT/CC
NPO 日本ネットワークセキュリティ協会
‡ 情報セキュリティ分野において
‡ 技術・政策・マーケティング・教育
‡ 国内における情報セキュリティインシデント(事件・
事故)の調査、分析、公表
‡
‡
‡
‡
‡
‡
‡
‡
‡
‡
P2Pファイル交換安全利用ガイドライン等
‡
JPCERT Coordination Center
事業内容:
コンピュータセキュリティに関わる事象(以下、インシデント)への対応
国内外のインシデント対応組織、関連する組織等との連携
国内外インシデント対応組織の立ち上げ支援・指導
インシデントに関する事例解析や、関連するセキュリティ修正プログラム
等の情報、システムの脆弱性に関する情報など、コンピュータセキュリ
ティに関する各種情報の収集、整理及び蓄積並びに提供
コンピュータセキュリティインシデントに関する調査の受託業務
関連技術等の調査・研究
関連技術の普及・啓発、教育事業
171
Telecom-ISAC Japan
172
個人情報の保護に関する法律
Telecom Information Sharing and Analysis
Center Japan
‡ テレコム業界として一丸となった一層の取組み
‡ 実際に発生したインシデントに関する情報を業界内
で分析・共有することが情報セキュリティ対策の確
保に有効
‡
‡
個人情報の有用性に配慮し、個人の権利利益を保
護することを目的とする
„
„
‡
個人情報保護法における個人情報の定義
„
173
官民を通じた個人情報保護の基本理念等を定めた基本
法
民間事業者の遵守すべき義務等を定めた一般法
生存する個人に関する情報であって、当該情報に含まれ
る 氏名、生年月日その他の記述等により特定の個人を
識別することができるもの
174
29
各国の個人情報保護法の類型
‡
„
„
‡
一つの法律で公的部門(国・地方公共団体)と民間企業等の民間部
門の双方を対象とする
ヨーロッパ諸国に多い(例: 個人データ保護法)
セクトラル方式(アメリカ型)
„
個別分野ごとにそれぞれの法律で対象とするセクトラル方式(個別分
野別方式)
‡
‡
„
‡
SSHで公開鍵認証を使
えるようにしよう
オムニバス方式(欧州型)
政府所管情報の記録保存運用に関して個人プライバシ保護(プライバシ
法)
民間部門の個人情報保護については、分野・領域別の個別法で対応
分野によって法整備が進まないことも
セグメント方式(日本型)
„
公的部門と民間部門をそれぞれ別の法律で対象とするセグメント方
式(分離方式)
情報法学講義資料(桐蔭横浜大学 笠原毅彦)第12回
「講義情報化社会と個人情報の保護」より引用、改変
175
http://www.cc.toin.ac.jp/sc/Kasahara/cogy/johoho/4-12-1.htm
SSHのパスワード認証
‡
‡
ツールの紹介
‡
各ユーザのログインパスワードを使用
„
„
„
公開鍵認証のための鍵対を作成
„
暗号化はされていれど、ユーザのログインパスワードが
ネットワークを伝送されることには変わりない
„
これからは、公開鍵認証を使ってCNSのホストにロ
グインできるようになろう
„
176
公開鍵認証のための鍵対を作成する
鍵対のうち、秘密鍵を目的のホストに登録する
公開鍵認証でログインする
‡
作成した公開鍵を目的のホストにアップロード
„
„
‡
Puttygen (後述のPuTTYと一緒にダウンロード)
http://www.chiark.greenend.org.uk/~sgtatham/putty/d
ownload.html
WinSCP
http://winscp.net/eng/download.php
リモートホストへのログインに使用
„
„
„
公開鍵を適切なファイル名・パーミッションに変更するのにも必要
PuTTY
http://www.chiark.greenend.org.uk/%7Esgtatham/putty
/download.html
177
PuTTYgen (1): 鍵対の作成開始
RSAの鍵対を作成
‡
Windows PCでは?
„
„
‡
178
鍵対作成用のツール使用
PuTTYgen
Unix PCでは?
„
“ssh-keygen”コマンドを実行
②
①
179
180
30
PuTTYgen (3):
作成できた鍵を保存する(1/2)
PuTTYgen (2): マウスポインタを動かす!!
‡
パスフレーズを入力する(①~②)
‡ 作成した鍵対を保存する
マウスの無作為な動きを利用して鍵を生成
‡
„
Public KeyとPrivate Keyを個別に保存
ここの範囲内でマウスを動かす!
①
②
181
PuTTYgen (3):
作成できた鍵を保存する(2/2)
‡
公開鍵の中身を確認!
‡
オススメのファイル名
„
„
182
ちょっと手直しします!
„
公開鍵(Public key): identity.pub
秘密鍵(Private key): identity.ppk
„
„
鍵の文字列が複数行に分かれているのを1行にする
ssh-rsa[space]をかぎの文字列の先頭に追加する
authorized_keys というファイル名で保存!
‡
拡張子なし!
183
鍵対の作成はこれでおしまい!
184
目的のホストに公開鍵の登録
ccz00.sfc.keio.ac.jp (CNSの共有ホスト) に公
開鍵を登録しよう
‡ WinSCPを起動
‡
„
‡
次は、ログイン先のホストに 公開鍵 を登録します。
鍵のアップロードにはパスワード認証を使用
ログイン
パスワード
ccz00.sfc.keio
ac.jp
CNSログイン名
185
186
31
WinSCP (2): 公開鍵をアップロード
WinSCP (1): リモートホストにログイン
‡
ホームディレクトリに .ssh というディレクトリがある
か確認し、なければ作成する
187
PuTTY (1): ログインしてみよう!
‡
188
PuTTY (2): 秘密鍵を参照
ホスト名にccz00.sfc.keio.ac.jpを指定
‡
接続 -> SSH -> 認証 -> 認証パラメータ
identity.ppk
を選択
189
PuTTY (3): 接続!
‡
190
うまくいかない人は。。。。
パスフレーズ、訊かれましたか?
‡
191
あとでTA/SAがサポートします!
192
32
無線LANネットワークを守る
居間
家のネットワークを守る
部屋1
部屋2
ThinkPad
Let’s Note
Value Star
家の無線LANの設定をいじってみよう
部屋3 (居間から遠い)
プリントサーバ
LPV2-TX1
¥7,200-
NLX
外部アンテナ
北Qネット(CATV)
北Qネット(CATV)
Downlink: 10Mbps
Downlink: 10Mbps
Uplink: 1.5Mbps
Uplink: 1.5Mbps
月額 ¥3,490月額 ¥3,490敷設工費: 無料
敷設工費: 無料
ケーブルモデム
ルータ・無線LAN AP
WBR-G54
¥14,300-
無線LAN ブリッジ
WN-AG/C
¥12,500-
ThinkPad
同軸ケーブル
193
UTPケーブル (Ethernet: 100Base-TX)
194
無線LAN (802.11g)
何をどうやって守るのか?
‡
接続料金を払っているのは自分
„
‡
簡単にできること
‡
ネットワークをただ乗りされないようにする
„
プライベートなコミュニケーションもしている
„
ESSIDを設定して、PC上で明示的にESSIDを指定しないと
接続できないようにする
„
盗聴はされたくない
‡
WEP KEYを設定して、無線区間の通信を暗号化する
„
‡
‡
無線区間の暗号化を行う
特定のマシンのみ
„
„
„
‡
アクセスポイントに接続させる
フィルタをすり抜ける
IPアドレスの割り当てや通信を許可する
Anyを許可しない
ESSIDブロードキャストを無効にする
WPA-AESなど、より強固なプロトコルに対応できる場合には積極的
に試そう
MACアドレス登録
„
„
無線LANネットワークで通信を許可するNICのMACアドレスを指定
無線LANネットワークに接続できても、未登録のホストからのパケット
はフィルタされる
195
196
セキュリティとは?
‡
まとめ
辞書を引くと->
„
‡
コンピュータのセキュリティ(安全保障)
„
„
‡
何かを、保護・確保・保証・識別・認証・制限する
なにかとは? ->(次のスライド)
今日のフォーカス : パーソナル・セキュリティ
„
„
197
【名-1】セキュリティ、安心、安全(性)、安全保障、安全確
保、保障、防衛手段、警備、防護、防衛、保全、保安、無
事、治安
個人として守る必要があること
友達に迷惑をかけたり、自分が困ったりしないように
198
33
何を守るか?(主要なもの)
–通信している相手が確かに自
分の考えている相手か?
–サーバの認証
–メール,WWWサーバの認証,
リモートログイン
–資源割り当て
–CPUパワー,回線帯域
–ディスクスペース
–DoS対策
セキュリティと考察の視点
–ディスク上のデータを第3者が
見られない
–通信系路上で第3者が情報を
覗き見られない
–改ざんされていないかチェック
‡
„
„
?
重要なリソースの保護
機密性の確保/
完全性の保証
通信相手の識別・認証
バランス感覚が重要
‡
事例ごとに考える->使いに
くくなってはだめ
„
„
–利用者を一意に識別
–本人確認
–利用者のセキュリティ属性
–システムへのアクセス制限
„
情報の適切な管理
–データ秘匿
–データへのアクセ
199
ス制限
–データ保全
ユーザー識別/認証/
アクセス制限
パーソナル・セキュリティの分類
1.
2.
3.
安全性を高めれば,使いづら
くなら
使いやすくし過ぎれば,安全
でなくなる
電子メールのセキュリティ
WEBのセキュリティ
リモートログインのセキュリ
ティ
‡
セキュリティは多様
„
„
それぞれが相互に影響・補
完
それぞれが必要な「安全」を
提供
セキュリティ構造の一例:
ネットワーク
セキュリティ
ホスト
セキュリティ
情報
の
セキュリティ
社会基盤としてのセキュリティ
使い易さ
安全性
200
パーソナル・セキュリティに向けて
自分をまもる
通信路をまもる
情報の確からしさの保証
‡
個人で守るべきこと
„
„
„
3確からしさの保証
„
‡
心構え
„
1自分をまも
る
Windowsユーザは定期的にWindows Update
自分の使っているソフトウェアの更新に注意
必要に応じてPersonal Firewall & AntiVirus
通信は盗聴されているつもりで暗号化する
„
„
自分のいるネットワークが安全とは限らない
悪い奴はいるものだ
自分の身は自分で守る(守れる!)
2通信網の保証
201
202
セキュリティのたとえ話
「強固な堤防もアリの穴から崩壊が起こる」
セキュリティは
「最も弱い輪が鎖の強度を決める」
(weakest link)
203
34