集中講義
インターネットテクノロジー
第5回
一井信吾
東京大学大学院数理科学研究科
ichii@ms.u-tokyo.ac.jp
本日の内容
{
IPv6
{
セキュリティ
{
レポート課題
IPv6
{
最大の目的
z
32ビットのIPアドレスは 2008 までになくなってしまう
{
そのほかの目的
z
ヘッダフォーマットを
streamline して処理を高速化する
z
QoS 制御のためのヘッダフィールドを追加する
z
“anycast” アドレスの定義
{anycast: 「どれでもいいから(近くの)サーバに接続したい」という
IPv4アドレスの寿命
{
ICANN Ad Hoc Group on
Numbering and Addressing
z
McFadden/Holmes Report of the Ad Hoc
Group on Numbering and Addressing
(8 March 2001)
{
最悪
: 2006
{
もって
: 2017
IETF IPng ワーキンググループ
{
Web page
z
http://playground.sun.com/pub/ipng/ht
ml/ipng-main.html
{
Specifications
z
http://playground.sun.com/pub/ipng/ht
ml/specs/specifications.html
IPv6 Header
Priority:
データグラムのフロー中の優先順位
Flow Label:
「フロー」を識別する
(何が「フロー」か?未解決)
Next header:
上位プロトコル、または拡張ヘッダ
IPv4からのそのほかの変更点
{
TTL:
hop limitに
{
Checksum
:
なくなった
{
Options:
“Next Header” として定義
{
ICMPv6:
z
“Packet Too Big”など新しい型の定義
z
マルチキャストグループ管理(
v4ではIGMP)
IPv4 から IPv6 へ
{
全ルータを一度に変えられるわけではない
zIPv4とIPv6のエンドシステム、ルータをどのように混在させる
か
{
2つのやりかた
zデュアルスタック
{v4, v6 両方のスタックを持つエンドシステムを使う
{v4, v6 両方のスタックを持つ
ルータがデータグラムの変換を
行う
zトンネリング
{IPv4ネットワークの中にIPv6の「島」がある場合
{IPv6データグラムをIPv4データグラムのペイロードとしてIPv4
ルータで転送する
{逆も可能(将来)
トンネリング
IPv6 ready?
{ルータ
z 主要メーカのルータ(バックボーン用、 LAN用)は全て対応済 z アクセス系(ADSLルータ等)はまだ {ホスト
z Unix系OSはほぼ全て対応 { Kameプロジェクト z Linuxは開発中(一応動く) { Usagiプロジェクト z Microsoft Windows { XPには入っている z Macitosh { OS Xの次期バージョンで対応 {組み込み機器
{ソフトウェア
z WWW関係 { IE { apache z DNS { bind z MTA { sendmail { qmail { postfix z login { SSH z その他のアプリケーションはまだまだ これからIPv6 ready!
purple: [265] % ifconfig wx0
wx0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST>
link type ether 0:3:47:3f:c9:4e mtu 1500 speed 1Gbps
media auto (1000baseT full_duplex rx_flow tx_flow) status active inet 157.82.20.25 netmask 255.255.255.192 broadcast 157.82.20.63 inet6 fe80::203:47ff:fe3f:c94e%wx0 prefixlen 64 scopeid 0x0002 inet6 2001:200:180:2010:203:47ff:fe3f:c94e prefixlen 64 autoconf purple: [266] % traceroute www.kame.net
traceroute to www.kame.net (2001:200:0:4819:210:f3ff:fe03:4d0), 40 hops max, 60 byte packets 1 2001:200:180:2010:260:3eff:fe4e:4040 (2001:200:180:2010:260:3eff:fe4e:4040) 3.997 ms 4.098 ms 4.382 ms 2 2001:200:0:1c01:260:3eff:fe4e:3000 (2001:200:0:1c01:260:3eff:fe4e:3000) 4.821 ms * 4.983 ms 3 * pc3.yagami.wide.ad.jp (2001:200:0:1c04::1000:2000) 6.134 ms * 4 2001:200:1b0:1000:260:97ff:fec2:8009 (2001:200:1b0:1000:260:97ff:fec2:8009) 6.924 ms * 6.931 ms 5 * 2001:200:0:4819:210:f3ff:fe03:4d0 (2001:200:0:4819:210:f3ff:fe03:4d0) 7.031 ms *
セキュリティ:何が問題か?
{
問題になる事態
z
コンピュータウィルス
{
ビデオ
を見てください
z
(ウィルスの中でも、特に)ワームウィルス
{
Code Red
,
Nimda
z
(依然として)
SPAM(中継)
z
不正アクセス
法律で処罰される
{
刑法
z
電磁的記録不正作出及び供用(
162の2)
z
電子計算機損壊等業務妨害(
234の2)
z
電子計算機使用詐欺(
246の2)
z
公用電磁的記録毀棄(
258)
z
私用電磁的記録毀棄(
259)
{
不正アクセス禁止法
z
不正アクセス行為の禁止等に関する法律(
2000.2.13
施行)
不正アクセスとは
{
(
...)不正アクセス行為とは、次の各号の一
に該当する行為をいう
z
ネットワークを通じて他人のユーザ
ID、パスワー
ドを入力
z
ネットワークを通じてセキュリティホールを利用
z
他の装置で認証などを行っている機械に対して
より広くとらえると
{
社会に迷惑をかける行為全般
z
SPAM中継
z
プライバシー侵害
z
著作権等の侵害
z
不正アクセスと紛らわしい行為
{
どこかの会社のサーバに意味もなく
telnetしてみる
{
データベースなどに必要以上に頻繁にアクセスす
る
被害者にならないために
{
何に注意するか
z
ネットワーク経由の攻撃
{
侵入を目的とした攻撃
{
サービス不能攻撃
(Denial of Service attack)
z
コンピュータウィルス
{
特にWindows PCやMacintosh
{最近はほとんどメール経由で感染
侵入を目的とした攻撃
{
不用意にあけられたポートを狙う
z
telnet, ftp, ssh, IRC, WWW etc.
z
ユーザ名がわかったら、パスワードを推測
{
脆弱なソフトウェアを攻撃
z
プログラムミス(バグ)
z
バッファあふれ
z
race condition
{
もはや、技術を要しない
z
script kiddies
サービス不能攻撃
{
聞きなれない言葉だが
z
Denial of Service attack
{
特定のシステムに多数のデータを集中して送りつ
ける
z
特定のシステムが動作しなくなるデータを送りつける
z
侵入監視システムを混乱させるデータを送りつける
ネットワーク経由の攻撃を
どうやって防ぐか
{
システムの脆弱性(セキュリティホール)をなくす
z
メーカーからの情報
z
ソフトウェア作成者からの情報
z
システム監査ソフトウェアの利用
{既に知られている攻撃のパターンをシミュレート
{
ファイアウォール、パケットフィルタを使う
z
万能ではないし、場合により
DoS攻撃の標的ともなる
{
侵入検知システム
(Intrusion Detection
System)を使う
z
同上
自分はいかに危ないか
{
うっかりミス
z
システム設定のミスにより侵入を許すことに
z
ログインしたまま席を離れてはいけない
{
さぼり
z
ソフトウェアの更新をサボると危ない
z
OSやアプリケーションソフトのアップデートを忘れず
加害者にならないために
{
自ら不正行為をするのは論外
z
法に触れればつかまります
z
大学のその他のシステムでも、しかるべき処分
{
被害者即加害者となるご時世
z
不正に侵入され、踏み台にされる
z
不正に侵入され、
DDoS (Distributed DoS)に使われ
る
z
SPAM中継
z
他人事ではない!
パスワードに注意!
{
パスワードは暗号化されていても危ない
{
辞書+いろいろなアルゴリズムで探す
z
解析ソフト、辞書はいろいろ出回っている
{
これでパスワードがばれてしまった人は
要注意!
{
どのようなパスワードを選ぶとよいか?
z
ユーザIDと同じでないこと(絶対!)
z
辞書に載っている単語、人名を利用していないこと
暗号化はなぜ必要か
{
パスワードをネットワーク経由で入力すると危ない
z
ネットワーク上を流れる情報は、盗み見可能
z
通信業者内は、多くは
point-to-pointなので漏れる可能
性が比較的小
{通信の秘密保持義務もある
z
大学内ネットワークなど、
LAN (Local Area Network)
が一番危ない
{
管理が不十分なマシンがある
NATとファイアウォール
{
NAT (and NAPT)
z
Network Address (and Port) Translation
zローカルな
IPアドレスをLAN上で用いる
z外部との接続点でグローバル
IPアドレスと相互変換
zIPアドレスを埋め込んでいるアプリケーションプロトコルがあると複雑
zIPアドレスでend識別をしているアプリケーションは困難(例:H.323)
{ファイアウォール
zフィルタ型
{通過できる通信の種類を制約
{IPアドレス、ポート
{TCP SYN(内→外は可、外→内は不可、という制御ができる)
最近の法律の動向
{
プロバイダ責任法
z
特定電気通信役務提供者の損害賠償責任の制限及び
発信者情報の開示に関する法律
z
2002年5月末までに施行
z
プロバイダ等の損害賠償責任の制限
z
発信者情報の開示請求
昨日の補足
プログラミングに関する日本語の参考書
{
「定本」の翻訳
z
Douglas Comer, David Stevens、 TCP/IPによるネットワーク構
築 第
3巻 クライアント・サーバプログラミングとアプリケーション(共立
出版、
1995)
zW. リチャード・スティーヴンス、UNIXネットワークプログラミング−ネッ
トワーク
API : ソケットとXTI(ピアソン・エデュケーション、1998)
{その他(未見)
zジョン・
C. スネーダー、TCP/IPプログラミング徹底解説(日経BP社、
2001)
z村山公保、基礎からわかる
TCP/IP ネットワーク実験プログラミング−
Linux/FreeBSD対応(オーム社、2001)
南山智之、佐々木彬夫、
TCP/IPとソケット―クライアント/サーバ構築
レポート
以下のうち、1つ選択
1.