TOPIC 2004 年 4 月 21 日に公開された TCP の脆弱性! Transmission Control Protocol: TCP について! 脆弱性発見の背景! 脆弱性情報の流通過程! 脆弱性の内容について! 実際の脆弱性への対応 脆弱性の対象となる製品 脆弱性の回避策と対策 公開情

Similar documents
PowerPoint Presentation

2.5 トランスポート層 147

第1回 ネットワークとは

I TCP 1/2 1

2004 SYN/ACK SYN Flood G01P014-6

Internet Initiative Japan Inc. プロトコルの脆弱性 ( 株 ) インターネットイニシアティブ 永尾禎啓 Copyright 2004, Internet Initiative Japan Inc.

<4D F736F F F696E74202D DB A B C C815B E >

2 1: OSI OSI,,,,,,,,, 4 TCP/IP TCP/IP, TCP, IP 2,, IP, IP. IP, ICMP, TCP, UDP, TELNET, FTP, HTTP TCP IP

Microsoft PowerPoint pptx


修士論文進捗報告

TFTP serverの実装

JPCERT/CC インターネット定点観測レポート[2014年7月1日~9月30日]

Microsoft PowerPoint - network8forPDF

第1回 ネットワークとは

情報通信ネットワーク特論 TCP/IP (3)

スライド 1

IPsec徹底入門

橡c03tcp詳説(3/24修正版).PDF

Microsoft PowerPoint ppt [互換モード]

技術的条件集別表 35 IP トランスポート仕様

スライド タイトルなし

Microsoft PowerPoint network8.pptx

Mobile IPの概要

ボンドグラフと熱伝導解析による EHA熱解析ツールの開発

LSFE_FW

ブロードバンドルータにおける問題(オープンリゾルバ)の解説、対策の説明

Microsoft PowerPoint - ie ppt

キャッシュポイズニング攻撃対策

パケットモニター (Wireshark) の使い方 第 1 版 1.Wireshark とは ネットワーク上 (LAN ケーブルに流れている ) のパケットを取得して その中の情報を画面に表示するソフトウェア (LAN アナライザーまたはパケットモニター ) の 1 つに Wiresh

インターネット,LAN,ネットワークに関する知識

卒業論文審査

Microsoft Word - トンネル方式(3 UNI仕様書5.1版)_ _1910.doc

F コマンド

Microsoft PowerPoint ISC203(印刷版).ppt

山添.pptx

Microsoft PowerPoint - about_stack_ ppt [互換モード]

PowerPoint プレゼンテーション

2. 機能 ( 標準サポートプロトコル ) NTT ドコモの Android スマートフォン / タブレットでは標準で対応している VPN プロトコルがあります 本章では 動作確認を実施している PPTP L2TP/IPSec IPSec Xauth について記載します PPTP(Point-to-

本製品に接続された端末の IPv6 情報が表示されます 端末に割り当てられた IPv6 アドレス IPv6 アドレスを取得した端末の MAC アドレスが確認できます 注意 : 本ページに情報が表示されるのは本製品が 上位から IPv6 アドレスを取得した場合のみとなります DDNSサービス :DDN

第5回_ネットワークの基本的な構成、ネットワークの脆弱性とリスク_pptx

2. 機能 ( 標準サポートプロトコル ) SECURITY for Biz 対応スマートフォンでは標準で対応している VPN プロトコルがあります 本章では NTT ドコモで動作確認を実施している PPTP L2TP/IPSec IPSec Xauth について記載します PPTP(Point-t

講座内容 第 1 回オープンネットワークの概念と仕組み ( 講義 90 分 ) 基本的なネットワークの構成及び伝送技術について大規模化 マルチプロトコル化を中心に技術の発展と 企業インフラへの適用を理解する その基本となっている OSI 7 階層モデルについて理解する (1) ネットワークの構成と機

bitvisor_summit.pptx

付録 2 システムログ一覧 () 攻撃経路 1. ファイアウォール (FW) ネットワーク型 IPS/IDS Web サーバ AP サーバ DB サーバ プロキシサーバ エラーログ SSL ログ AP ログ ホストログ 非 日時 ファイアウォールホスト名 ファイアウォールルール名及び番号 インバウン

PowerPoint プレゼンテーション

MIRACLE LoadBalancerを使用したネットワーク構成と注意点

Stealthwatch System v6.9.0 内部アラーム ID

Microsoft PowerPoint - IPsec徹底入門.ppt

スライド 1

MPLS での traceroute コマンド

4-5. ファイアウォール (IPv6)

4-4. ファイアウォール (IPv4)

延命セキュリティ製品 製品名お客様の想定対象 OS McAfee Embedded Control 特定の業務で利用する物理 PC 仮想 PC や Server 2003 Server 2003 ホワイトリスト型 Trend Micro Safe Lock 特定の業務で利用するスタンドアロン PC

SMB スイッチ CLI に SSH を使用してアクセスするか、または Telnet で接続して下さい

中村隼大 鈴木秀和 内藤克浩 渡邊晃 名城大学理工学部愛知工業大学情報科学部

5GHz 作 15-4 DFS 試験時の通信負荷条件定義について 2019 年 3 月 1 日 NTT 東芝 クアルコムジャパン 1

卒研 .PDF

一般的に使用される IP ACL の設定

Contents Part1: TCP Part2: TCP Part3: TCP Part4: Part5: TCP Part6:

F O M A P P P 接続参考資料 DTE~FOMA パケット網間インタフェース 第 1.4 版 株式会社 NTT ドコモ Unpublished copyright 2007 NTT DoCoMo, Inc. All rights reserved. Unpublished copyrigh

Microsoft Word - r0703.doc

コンテンツセントリックネットワーク技術を用いた ストリームデータ配信システムの設計と実装

[ 参照規格一覧 ] JIS C5973 (F04 形単心光ファイバコネクタ ) JIS C6835 ( 石英系シングルモード光ファイバ素線 1991) JIS C6832 ( 石英系マルチモード光ファイバ素線 1995) IETF RFC791(Internet Protocol

リモートアクセス Smart Device VPN ユーザマニュアル [ マネージドイントラネット Smart Device VPN 利用者さま向け ] 2015 年 10 月 20 日 Version 1.6 bit- drive Version 1.6 リモートアクセス S

2. ネットワークアプリケーションと TCP/IP 2.1. クライアント / サーバモデル TCP/IP プロトコルに従うネットワークアプリケーションの典型的モデルは, クライアント / サーバモデルである. クライアント / サーバモデルでは, クライアントからの要求に対してサーバがサービスを提

ict2-.key

Cisco CSS HTTP キープアライブと ColdFusion サーバの連携

home-unit2_quickguide_ras_v1.1

IPv4

本資料について

概要

初めてのBFD

チェックしておきたいぜい弱性情報2009< >

15群(○○○)-8編

ESET Smart Security 7 リリースノート

Fujitsu Standard Tool

第1回 ネットワークとは

注意事項 本文書は 2014 年 10 月 15 日時点で公開されている脆弱性情報にもとづいて作成されています 脆弱性の影響を受ける条件 改善策及び回避策等は公開情報をもとに記載しており 今後新 たに公開される情報により変更される可能性がありますのでご注意ください 目 次 1. 脆弱性の概要...

030403.インターネット問題

情報通信の基礎

Quad port LANカード(10GBASE) 取扱説明書

IPSEC(Si-RG)

技術的条件集別表 26.2 IP 通信網 ISP 接続用ルータ接続インタフェース仕様 (IPv4 トンネル方式 -10GBASE LR インタフェース )

Information Security

6 接続の使用準備ができました 画面が表示されます 閉じる をクリックします 認証に事前共有キーを使う の キー に リモートアクセス接続用シークレットキー を入力後 OK をクリックします 今すぐ接続します はクリックしません. アダプターの設定 (Window 7) コントロールパネル - ネッ

オペレーティング システムでの traceroute コマンドの使用

オートビュー

Attack Object Update

課題 4 クライアント GUI プログラム 再実験 / 追加課題 UDP 通信プログラム 2

議案1説明資料

2ACL DC NTMobile ID ACL(Access Control List) DC Direction Request DC ID Access Check Request DC ACL Access Check Access Check Access Check Response DC

(Microsoft PowerPoint - 2.\(\220\274\222J\202\263\202\361\)JANOG ppt [\214\335\212\267\203\202\201[\203h])

インターネットVPN_IPoE_IPv6_fqdn

Template Word Document

ニトリ労働組合アンケートシステム 利用者向け操作説明書 第 1.2 版 平成 25 年 10 月 08 日

パススルー IPSecトンネル インターフェイスに AVC トラフィックを有効に する 回避策

技術的条件集別表 26.3 IP 通信網 ISP 接続用ルータ接続インタフェース仕様 (IPv6 トンネル方式 )

Microsoft Word - u-CAT’Ý™è…K…C…

スライド 1

Transcription:

プロトコルの脆弱性の実例 TCP の脆弱性から 2004 年 10 月 5 日 ( 火 ) JPNIC JPCERT/CCセミナー 2004 JPCERT/CC 鎌田敬介 KAMATA Keisuke 1

TOPIC 2004 年 4 月 21 日に公開された TCP の脆弱性! Transmission Control Protocol: TCP について! 脆弱性発見の背景! 脆弱性情報の流通過程! 脆弱性の内容について! 実際の脆弱性への対応 脆弱性の対象となる製品 脆弱性の回避策と対策 公開情報 2004 年 5 月 13 日に公開された IEEE802.11 の脆弱性 まとめ : プロトコルの脆弱性について 2

Transmission Control Protocol TCP について -1 オリジナル仕様は RFC793 にて定義! 1981 年 9 月に出された RFC! インターネットの前身である米国 DoD の ARPA ネットワークで使われていたものがベース! コネクション型で 信頼性の高い通信を実現! Internet Protocol (IP) の上位層に位置するプロトコル TCP の主な構成要素! ポート番号 (Port Number)! シーケンス番号 (Sequence Number)! 確認応答番号 (Acknowledgment Number)! ウィンドウサイズ (Window)! フラグ (URG,ACK,PSH,PST,SYN,FIN) 3

Transmission Control Protocol TCP について -2 TCPセグメントはIPデータグラムにカプセル化される 上位層のプロトコル(HTTP,FTP,SMTPなど) の下位に位置する 実際の電気信号の伝達等は下位層に任せる 上位層 TCP IP 下位層 IP データグラム TCP セグメント IP ヘッダ TCP ヘッダ TCP データ 4

Transmission Control Protocol [TCP セグメント ] TCP について -3 Source Port (16bit) Destination Port(16bit) Data Offset ヘッダ長 4bit Sequence Number( シーケンス番号 ) 32bit Acknowledgment Number( 確認応答番号 ) 32bit Reserved 予約済み 6bit URG ACK PSH Checksum チェックサム 16bit PST SYN FIN オプション部 Window ウィンドウサイズ 16bit Urgent Pointer 緊急ポインタ 16bit データ部 オプションが指定されない限りヘッダは通常 20 バイト 5

Transmission Control Protocol TCP について -4 パケットキャプチャ結果を用いた解説 6

脆弱性発見の背景 コーディネーションの背景 セキュリティの研究者による指摘 論文の発表が目的 製品開発ベンダとのモチベーションの違い 昔から指摘されている既知の問題 ネットワークの高速化による攻撃の現実化 OS やアプリケーションの設計の問題 window サイズの増加 シーケンス番号や送信元ポートの規則性 現実社会のインターネットへの依存度の高まり 既知の問題が再び脚光を浴びる マスコミによる報道 実際の攻撃の危険性 7

脆弱性情報の流通過程 概要図 パートナーシップに基づく情報交換 研究者 情報の提供 英国 NISCC 情報の提供 JPCERT/CC 対策の作成 対策の作成 国際製品開発者 国際製品開発者 日本国内製品開発者 日本国内製品開発者 国際製品開発者 国際製品開発者 日本国内製品開発者 日本国内製品開発者 8

脆弱性情報の流通過程 2004 年 2 月下旬! 英国 NISCCよりJPCERT/CCに情報が入る! この時点での情報の公開日は7 月に設定! JPCERT/CC から日本国内製品開発者へ連絡を開始 2004 年 3 月下旬! 英国 NISCC より公開日変更の連絡 英国時間で 4/21 に設定! 日本国内にて製品開発者を集めたミーティング 2004 年 4 月 : 特に BGP を対象とした回避策 (TCP MD5) の情報提供! JPCERT/CC Weekly Report での紹介! ネットワークの運用グループ (AS ホルダ ) を集めたミーティング 2004 年 4 月 21 日! 情報の公表日が英国時間で 4/21 と設定されていたが 情報リークによりマスコミの報道があり 4/20 に早まる ( 日本時間 4/21) 調整の期間は およそ 2 ヶ月 9

脆弱性の内容 概要! 10

脆弱性の内容 概要図 正常な通信 通信の切断 偽装データの挿入 安定した通信の阻害 ファイル転送が途中で切れてしまう ログイン中のセッションが途切れてしまう オンラインショッピングが完了できない 11

1:RST セグメントによる攻撃 攻撃者 ホスト A Port=5555 ホスト B Port=6666 正常な通信 SEQ=777 [RST] SEQ=780 LEN=0 上手い具合に RST を飛ばすと受信側ホストが受理してしまう 12

2:SYN セグメントによる攻撃 攻撃者 ホスト A Port=5555 ホスト B Port=6666 SEQ=500 LEN=500 [ACK] ACK=1001 [SYN] SEQ=1500 LEN=0 [RST] ACK=1501 上手い具合に SYN を飛ばすと セッションが切れてしまう 13

3: データの差し込み 攻撃者 ホスト A Port=5555 ホスト B Port=6666 DATA SEQ=500 [ACK] ACK=501 DATA SEQ=501 上手い具合にデータセグメントを飛ばすと データの差し込みが行えてしまう 14

脆弱性の内容実際の攻撃方法 攻撃の成立には以下の情報が必要! IPアドレス対! ポート番号対! セッションで使用中のシーケンス番号 シーケンス番号は総当たり! windowが大きいのでそれほど困難ではない! ネットワークが高速! マシンの性能も高い 15

脆弱性の内容 実際の攻撃方法 パケットキャプチャ結果を用いた解説 16

脆弱性の内容 対象になりやすいサービス 経路情報を流している BGP! 経路情報を送受信するルータの IP アドレス対! 受け側ルータは 179/tcp 送り側は?? 番! シーケンス番号は?? 番 リモートログイン (telnet や ssh など )! ログイン先の IP とログイン元の IP! ログイン先のポート番号は22/tcp ログイン元は?? 番! シーケンス番号は?? 番 DNS(TCP) や IRC, 果てはオンラインゲームなど長時間に渡るセッションを張るようなサービスが対象となる 17

脆弱性の検証結果 実際に切断することの出来た OS (IP アドレス対 ポート番号がわかっている SSH のログインセッションを対象としてシーケンス番号総当たり )! NetBSD1.5! Darwin 7.5.0 (MacOS X 10.3)! Linux-2.2.20 Window サイズが大きいことを利用してシーケンス番号総当たり的に RST セグメントを投げ続けて 90 秒以内で切断 攻撃の対象とするサービスが決まれば src_port も総当たりで攻撃可能 OS によって範囲がある程度推測可能 OpenBSD 2.5, 3.5 は切断できず 18

脆弱性の対象となる製品 対象となるのはプロトコルの実装部分! TCPのプロトコルスタックそのもの! 多くの場合 OSレベルの実装に影響! 具体的にはルータやOSそのものなど 複数のベンダに影響の及ぶ脆弱性! OS だけでなくハードウェアベンダも プロトコルスタックとして社外製品を利用している場合は 実際に製品を販売している社で対応しきれない場合がある 19

脆弱性の回避策 TCP MD5 Signature Option! RFC2385 にて定義! BGP セッションを保護するために考えられた! TCP ヘッダのオプションフィールドへの拡張! 相手から送られてきたパケットの認証機構 GTSM(Generalized TTL Security Mechanism)! RFC3682 にて定義! IP パケットの TTL 値を用いた一種の認証方法 IPSec! RFC2401 など多数の RFC で定義! 通信の暗号化 相手の認証も可能 20

TCP MD5 の構造 0 2 4 Kind=19 MD5 値続き MD5 値続き MD5 値続き Length=18 MD5 値 (Last 4 bit) MD5 値 (128bit=16bytes) MD5 digest を TCP オプションとして格納 TCP オプションフィールドの kind( タイプ ) は 19 length( データ長 ) は 18(=1+1+16)bytes 後ろに MD5 digest (16 バイト ) を付ける 32 21

脆弱性への対策 1:RST Attack 1. 期待しているシーケンス番号の範囲外 (window の外 ) にある RST bit がセットされたセグメントが来た場合には そのまま捨てる 2. RST bit がセットされており 期待しているシーケンス番号そのもの (window 範囲内であっても不可 ) である場合にはコネクションをリセットする 3. RST bit がセットされており 期待しているシーケンス番号ではないが window 範囲内である場合には ACK を返す 22

RST Attack 対策 1 について 攻撃者 ホスト A Port=5555 ホスト B Port=6666 ホスト A Port=5555 ホスト B Port=6666 [RST] SEQ=778 LEN=0 [RST] SEQ=777 [ACK] ACK=779 [ACK] ACK=778 [RST] SEQ=778 攻撃があった場合 攻撃ではない場合 23

脆弱性への対策 2:SYN Attack 1. SYN bit がセットされたセグメントを受け取った場合には シーケンス番号にかかわらず ACK を返すようにする 1/(2^32) の確率で問題が発生する詳細は付録 [6] の3.2 をご覧ください 24

SYN Attack 対策 2 について 攻撃者 ホスト A Port=5555 ホスト B Port=6666 ホスト A Port=5555 ホスト B Port=6666 SEQ=500 LEN=100 [ACK] ACK=1001 [SYN] SEQ=1011 LEN=0 CRASH SEQ=500 LEN=500 [SYN] SEQ=1500 [ACK] ACK=1001 [ACK] ACK=1011 [RST] SEQ=1001 攻撃があった場合 攻撃ではない場合 25

脆弱性への対策 3: データの差し込みを防ぐ 1. 入力されたデータセグメントに関しては 通常よりも厳重なチェックを行うようにする 適切な ACK 値になっていることをチェックすることで シーケンス番号の推測だけでは攻撃が成立できなくなるという効果がある 詳細は付録 [6] の 4.2 をご覧ください 26

公開情報 NISCC によるアドバイザリ http://www.uniras.gov.uk/vuls/2004/236929/index.htm NISCCの情報公開ページから抜粋 英国 NISCC より公開され世界的に注目された 日本の製品開発者の情報も紹介 各国各種メディアからの反応 27

公開情報 IETF によるインターネットドラフト この問題を受けて IETF の tcpm のグループからドラフトが公開されている ( 付録 [6]) TCP の実装への対策方法に Cisco の特許が存在する可能性がある IETF60 での議論の末 現在考えられている以外の対策も視野に入れ現在活動中 ゆくゆくは RFC 化? 28

2004 年 5 月 13 日公開 IEEE802.11 DSSS 無線機器の脆弱性 研究者の論文として発表 低速モードで動作する無線 LAN 機器が対象! 802.11 と 802.11b 及び 20Mbps 以下の低速で通信を行う 802.11g が該当 DSSS という変調方式自体の脆弱性! DoS が成立する! 無線 LAN を止めることができてしまう 製品開発者のレベルでは対処不可能 回避策は??! 重要なネットワークへの無線 LAN 利用の回避 29

まとめ プロトコルの脆弱性について プロトコルの脆弱性 = 標準仕様の脆弱性! 標準仕様の変更が必要になる上に 完璧な対応は難しい! 製品を開発しているベンダでは直接対応しにくい! 回避策があっても妥当かどうかわからない 十分な検証も難しい 複数のベンダにまたがる問題である! 製品開発ベンダとの調整に時間がかかる! 問題が深いため各社内でも対応に時間がかかる! 社内にて脆弱性を取り扱う体制の構築を 今後 プロトコルの脆弱性は増える?! 発見者 ( 研究者?) のモチベーション! 製品開発ベンダのモチベーション 30

付録 : 外部情報へのリンク集 31

以上です ありがとうございました JPCERT コーディネーションセンター [Web] http://www.jpcert.or.jp/ [Mail] office@jpcert.or.jp 32