【ネスぺ対策】似ているプロトコルの違い

本稿ではIPA試験で必要とされる知識をまとめます。

目次

ネットワークインタフェース関連

Bluetooth/Zigbee/無線LANを比較せよ
スクロールできます
BluetoothZigbee無線LAN
規格IEEE 802.15.1IEEE 802.15.4IEEE 802.11n/ac
主な一次変調PSK/DQPSKQPSKBPSK/QPSK/QAM
主な二次変調FHSSDSSSMIMO-OFDM
最大到達範囲10m30m100m
最大スループット3Mbps250kpps6.93Gbps
Bluetooth/Zigbee/無線LANの比較
アナログ電話回線とADSLの違いはなにか

電話回線はアナログ回線のうち音声帯域のみを抽出した回線であり,ADSLはそれ以外の帯域を活用した回線である。電話局の交換機手前までの回線にスプリッタと呼ばれる分配器を設置して音声帯域とデータ通信用の帯域を分離・混合する。ADSL以外のVDSL/HDSL/SDSLを総称してxDSLと呼ぶこともあるが,ADSLが最も普及していた方式である。

CSMA/CDとCSMA/CAの違いを述べよ
スクロールできます
方式詳細ユースケース
CSMA/CD衝突検出ランダムな時間経過後に再送を行う衝突の検出が信頼できる
CSMA/CA衝突回避全てのデータの送信前にランダムな時間を挿入する衝突の検出が信頼しにくい
CSMA/CDとCSMA/CAの違い
1000BASE-Tと1000BASE-TXの大きな違いを説明せよ

1000BASE-Tは4ペアそれぞれが送受信兼用となっており,1000BASE-TXは2ペアが送信専用,もう2ペアが受信専用となっている。Xなので「クロス」を想像して送受信兼用と誤解しやすいため注意する。送受信兼用の1000BASE-TではIのような文字をイメージし,送信専用と受信専用が別々の1000BASE-TXではXという文字をイメージするとよい。

リピータとL2スイッチの違いを説明せよ
  • リピータ:波形を整形して転送するだけ。エラーはそのまま転送する。
  • L2スイッチ:エラーフレームをチェックして転送する。エラーは破棄する。
オートネゴシエーションとAutomatic MDI/MDI-Xの違いを説明せよ
  • オートネゴシエーション:全二重/半二重の識別や接続先ポートの速度を自動判別
  • Automatic MDI/MDI-X:ストレートケーブル/クロスケーブルを自動判別
アクセスポートとトランクポートの違いを説明せよ
  • アクセスポート:ポートVLAN
  • トランクポート:タグVLAN

アクセスポートで許可するVLAN IDは1つのみで,トランクポートで許可するVLAN IDは複数となる。いずれもホワイトリスト形式であることに注意。

IP関連

IPv4とIPv6の代表的な違いを説明せよ
  • 可変長のオプションフィールドを拡張ヘッダーに切り出して固定長に変更
  • ヘッダーのフィールド数を削減
DHCPのプラグ&プレイ機能についてIPv6とIPv4の違いについて述べよ

IPv4のプラグ&プレイ機能はDHCPに内包されているが,IPv6ではICMPv6の近隣探索で実現する。

IPv4/IPv6/TCP/UDP/RTPのヘッダ長を述べよ
  • IPv4:20byte
  • IPv6:40byte
  • TCP:20byte
  • UDP:8byte
  • RTPヘッダ:12byte

TCPヘッダ長=UDPヘッダ長+RTPヘッダ長と覚える。

6to4/ISATAP/Teredoをそれぞれ説明せよ

6to4はグローバルIPv4アドレス(32bit)と割り当てたIPv6プレフィックス(16bit)を組み合わせてIPv6アドレスを生成し,IPv4パケットをIPv6パケットでカプセル化する。IPv4アドレスをIPv6アドレスの中に埋め込む手法である。6to4を利用するためには6to4リレールータが必要になるほか,IPv4グローバルアドレスが必要になるためNAT配下では利用できない。ISATAPは6to4をプライベートIPv4アドレスでも利用できるように改良した手法であるが,6to4同様にNAT配下では用いることができない。TeredoはIPv6パケットをIPv4のUDPメッセージに加工して送信する技術で,NAT配下でも利用することができる。ただし,NAT環境の判別や送信先情報を取得するためにTeredoサーバを経由する必要があったり,Teredoリレールータを用いる必要があったりするなど,やや複雑な構成になることに注意する。

IPv4とIPv6でブロードキャスト通信にはどのような違いがあるか

IPv6ではブロードキャストは廃止された。IPv6ではマルチキャストを使って同報通信を実現する。

ルーティング関連

BGPとBGP-4の違いを説明せよ。

BGPとBGP-4はほぼ同義で用いられている。BGP-4は1994年に提案されて2006年にはRFC 4271に更新されており,BGPのデファクトスタンダードとなっている。BGP-4以前のBGPを詳しく知る必要性はそこまでない。

RIPとRIP2/OSPFでルーティング情報の更新に使う通信の種類は何か
  • RIP:ブロードキャスト
  • RIP2/OSPF:マルチキャスト

TCP/UDP関連

TCPとUDPを使うプロトコルをそれぞれできる限り列挙せよ
  • TCP:HTTP/SMTP/POP3/SSH/FTP/Telnet/DNSゾーン転送...
  • UDP:DNS問合せ/SNMP/DHCP/TFTP/NTP...

UDPを用いるプロトコルをおさえてしまい,それ以外がTCPと理解すると分かりやすい。

FCSとIP/TCP/UDPのヘッダチェックサムのバイト長・計算対象・要不要を述べよ
スクロールできます
FCSIPTCPUDP
バイト長4byte2byte2byte2byte
対象Ethernetフレーム全体IPヘッダデータ全体データ全体
要不要必須必須必須推奨
FCSとチェックサムの比較
TCPがUDPと異なる部分を一言で表すとどのようになるか

再送機能があるかどうか

FCoEではTCPとUDPのどちらを用いるか

どちらも用いられない。FCは高品質の光ファイバで基本的にはビット誤りはゼロであるという仮定があるため,FCoEではIPによるルーティングは行われない。物理層ではイーサネットを拡張したプロトコルが利用され,以下の仕様が含まれている。

  • IEEE 802.1Qbb:優先度ベースフロー制御(PFC)
  • IEEE 802.1Qaz:トラフィックごとの帯域制御(ETS)
  • IEEE 802.1DCBX:スイッチ間の情報交換プロトコル(DCB)
  • IEEE 802.1Qau:輻輳通知

ただし,DCBXはData Center Bridging Exchangeの略称である。

DNSはTCPとUDPのどちらを利用するか

どちらも利用する。512byteを超える応答やゾーン転送に対してはTCP/53,主にそれ以外の通信に対してはUDP/53が利用される。

OpenFlowコントローラとスイッチ間の通信はTCPとUDPのどちらを利用するか

TCP

VPN関連

代表的なWANサービスとそのキーワードを述べよ
スクロールできます
レイヤーサービス名技術
データリンク層高域イーサネットVLAN
ネットワーク層IP-VPN(閉域VPN)MPLS
ネットワーク層インターネットVPNIPSec
代表的なWANサービスとそのキーワード
PPTPとIPsecの違いを述べよ
スクロールできます
レイヤー送受信のトンネルセキュリティ
PPTPデータリンク層同一×
IPsecネットワーク層別々
PPTPとIPsecの違い

トンネルはSA(Security Association)と呼ばれることもある。

IPsecとSSL-VPNの違いを述べよ
  • IPsec:ESPヘッダを使ってレイヤ3で認証・暗号化
  • SSL-VPN:TCPのポート番号443を使ってレイヤ4で認証・暗号化
IPsec-VPN/SSL-VPN/VDIの違いを説明せよ。

VPNはネットワーク仮想化を表し,VDIはデスクトップ仮想化を表す。IPsec-VPNはネットワーク層におけるVPNであり,任意のルータ間のネットワーク仮想化を行う。SSL-VPNはセッション層におけるVPNであり,ブラウザ・サーバ間のネットワーク仮想化を行う。IPsecはモードによってブラウザ・サーバ間の仮想化を行うこともできる。

アプリケーション関連

ICMPとHTTPの関係について述べよ

HTTPでICMPが使われるという関係

FTPを暗号化したプロコトルを二つ述べよ
  • SFTP:SSH
  • FTPS:SSL/TLS

SSHだから頭にS,TLSだから後ろにSと理解する。

TFTPとFTPの違いを二つ述べよ
  • TFTPはユーザ認証をしない
  • TFTPはTCPではなくUDPを利用する
MQTTをHTTPと対比させながら説明せよ

HTTPにおけるクライアントは,MQTTでは送信者であるpublisherと受信者であるsubscriberに分かれる。HTTPにおけるサーバはMQTTではブローカーと呼ばれ,publisherとsubscriberを中継する役割を果たす。MQTTではpublisherがメッセージをpublishするとき,もしくはsubscriberがメッセージをsubscribeするときにメッセージの品質を指定するQoSレベルを設定できる。MQTTヘッダは数十バイトであり数百バイトのHTTPヘッダと比べて軽量であることから,HTTPと比べて使用電力やデータ量が少ないプロトコルとなっている。

HTTPの1.0/1.1/2/3の特徴をそれぞれまとめよ
スクロールできます
HTTP特徴弱点
1.0・テキストファイル以外への対応
・リクエスト/レスポンスの形式策定
毎回TCPコネクションを張ること
1.1・キープアライブ
・パイプライン(リクエストを連続させる機能)
パイプラインを並列できない
2・バイナリ形式によるオーバーヘッド削減
・ストリームごとの並列処理(マルチプレキシング)
・HPACK(メッセージヘッダーの圧縮)
・サーバープッシュ(必要となるファイルの予測送信)
TCPの仕様に基づくボトルネック
3・UDPを採用することによるTCPハンドシェイク廃止
・TLA1.3を採用することによるTLSハンドシェイク軽量化
-
HTTPプロトコル一覧
HTTP/2はHTTP/1.1のパイプラインを改善したが,HTTP/3は更に何を改善したか

HTTP/2では,リクエストの順番とレスポンスの順番が同じでなければならないというHTTP/1.1の制限をストリームの導入によって改善したが,1つのTCPコネクションでしか通信できないというHTTP/2の制限がボトルネックとなっていた。具体的には,パケットの再送中は後続のパケットを送れなくなっていた。そこで,HTTP/3ではTCPの代わりにUDPを利用し,複数のストリームを並列してパケットを送れるようにした。

HTTP/2とHTTP/3の違いをまとめよ
スクロールできます
変更点詳細
遅延最小化TCPハンドシェイク+TLSハンドシェイクをTLSハンドシェイクのみに変更した
トランスポート層をTCPからUDPにすることにより実現
再送時ボトルネック解消ストリームの並列化を可能にした
コネクションを1本しか張れないTCPからUDPにすることにより実現
暗号化範囲拡大L4ヘッダも暗号化範囲できるようになった
TCPをUDPにした上でTLS1.3のハンドシェイクを利用することにより実現
ネットワーク切り替え対応コネクションIDで接続の識別子を管理することにより実現
HTTP/3での改善点
メールに関するプロトコルを構造化してまとめよ
スクロールできます
種別プロトコル
送信SMTP
POP before SMTP
SMTP AUTH
受信POP3
APOP
IMAP4
メールに関するプロトコル
SIP/SDP/RTP/音声/動画の関係性を図示せよ

呼制御にSIPが利用され,SIPのボディ部の記述方法を定めたものがSDPである。SDPの中でデータをやり取りするためのプロトコルであるRTPが利用されるという関係。

VoIPとそれにまつわるプロトコルを階層化してまとめよ
スクロールできます
種別プロトコル形式
呼制御データH.323バイナリ
SIP/SDPテキスト
※ ボディ部はSDPでプロトコルやポート番号を記述
音声データRTPUDP+シーケンス順序管理+タイムスタンプ
VoIPに関するプロトコル
IoTの代表的なプロトコルを二つ答えよ
  • CoAP(Constrained Application Protocol):性能が限られた機器でも効率的に通信を可能にする
  • MQTT(Message Queuing Telemetry Transport):メッセージングのための軽量プロトコル

MQTTは「メッセージ」がキーワードである。

SIPとRTPの通信経路の違いは何か

SIPはIP-PBXやSIPサーバを経由し,RTPはUA同士が直接通信する

VoIPで利用される音声符号化方式を二つ挙げ,それらを説明せよ
  • PCM:音声を信号レベルのデジタルデータで再現。64kbps。
  • CS-ACELP:音声を予め用意しておいたデジタルパターンで再現。8kbps。

CS-ACELPはコードブックからパターンを比較するリードタイムがかかるため,ビットデートはPCMよりも大幅に遅くなる。高速な回線であればPCM,低速な回線であればCS-ACELPという使い分けを行う。なお,コードブックのパターンを利用するアイディア自体はACELPであり,CSは共役構造のことを指している。共役構造を利用することにより,メモリ節約や計算効率化を実現している。

2G時代はACELPの進化前であるVSELP,およびVSELPのビットレートを半分にしたPSI-CELPが利用されていた。これらは同じくコードブックを利用する方式であり,音量や音質を表す適応符号帳と五十音などの違いを示す雑音符号帳を使い分けていた。特定ビットの損失によって激しく音質が低下するため,ビットによって誤り訂正の優先度を調整する「不均一誤り訂正」と呼ばれる仕組みが導入されていた。

セキュリティ/監視関連

TLS1.2と1.3の違いを説明せよ。

TLS1.3はTLS1.2と比べて下記のような違いがある。

  1. セキュリティ強度の高い暗号アルゴリズムを強制
    • 暗号化には認証付き暗号の一つであるAES-GCM(Galois/Counter Mode)を利用
    • 鍵交換にはDHE(Ephemeral Diffie-Hellman)およびECDHE(Ephemeral Elliptic curve Diffie–Hellman key exchange)を利用
    • 暗号スイートから「鍵交換_署名」を除き「暗号化_ハッシュ関数」の組で表す
  2. セッションのネゴシエーション方式の変更
    • Session Ticketに基づくセッション再開の廃止
    • 1往復のハンドシェイクで暗号化通信可能(1.2では2往復していた)

TLS1.3において「鍵交換_署名」の情報は,Client Helloに含まれる拡張属性で指定する。

TLS1.2/TLS1.3における共通鍵の生成方法を簡単に説明せよ。

クライアントで生成した乱数・サーバで生成した乱数・クライアントで生成したプリマスタシークレット(鍵のもとになる乱数)の三つの情報から共通鍵を生成する。TLS1.2では,クライアントで生成した乱数・サーバで生成した乱数・プリマスタシークレットという順番で,二往復のネゴシエーションを行う。TLS1.3では,クライアントで生成した乱数とプリマスタシークレット・サーバで生成した乱数という順番で一往復のネゴシエーションを行う。

TLSのバージョンと具体的なハッシュアルゴリズムをまとめよ
  • TLS1.0/TLS1.1:MD5/SHA-1
  • TLS1.2:SHA-256
  • TLS1.3:SHA-256/SHA-384
SPFとDNSの逆引きの違いを述べよ
スクロールできます
何をどこから
SPF送信サーバのIPアドレスDNSのSPFレコード
逆引き受信サーバのIPアドレスDNSのPTRレコード
SPFとDNSの逆引きの違い
DKIM/SPF/POP before SMTPの違いを述べよ。
  • DKIM:受信側で送信元メールサーバのディジタル署名を検証する技術
  • SPF:受信側で送信元IPアドレスを元に正当性を検証する技術
  • POP before SMTP:通信前に認証を行うことで一定期間メールの送信が可能になる仕組み
電子メールのセキュリティリスクとその対策を洗い出せ
スクロールできます
分類リスク対策
全体本文が暗号化されていないS/MIME・SMTPS
送信認証機能がないPOP before SMTP・SMTP AUTH
送信元が詐称されるSPF・DKIM
大量のメールが送信されるOP25B
受信認証パスワードが暗号化されていないAPOP・POP3S
電子メールのセキュリティリスクとその対策
EAP-TLSとPEAPの違いを表にまとめよ
スクロールできます
方式サーバ認証クライアント認証特徴
EAP-TLSサーバ証明書クライアント証明書安全性が高いが証明書の管理に手間がかかる
PEAPサーバ証明書ID/パスワード安全性は高くないが証明書の管理が楽
EAP-TLSとPEAPの違い

いずれもサーバ認証はサーバ証明書を利用する。クライアントがルート証明書を持っていない場合に,PEAPではサーバ認証を省略してID/パスワード認証のみで接続できる仕様になっているものもある。

EAPとRADIUSの違いは何か
  • EAP:サプリカント↔︎Authenticatorの認証要求/認証許可の通信プロトコル
  • RADIUS:Authenticator↔︎認証サーバの認証要求/認証許可の通信プロトコル

RADIUSと並列のプロトコルとしてLDAPも使える。

PSK/IEEE 802.1X/PEAP/EAP-TLSを構造化せよ

WPA2では

  • PSK認証(パーソナルモード)
  • IEEE 802.1X認証(エンタープライズモード)

の二つがあり,IEEE 802.1X認証には

  • PEAP(ユーザID/パスワードによる認証)
  • EAP-TLS(クライアント証明書による認証)

がある。

デバイスの監視方法に関して二つの下位互換方式と一つの上位互換方式を述べよ
  • 下位互換方式:ping+SYSLOG
  • 上位互換方式:SNMP

pingはサーバがダウンしている/していない程度しか検知できず,複数のポートがある場合などは対応が不可能である。SYSLOGはデバイス側から監視サーバへの単方向的な監視に限られてしまう。SNMPでは監視サーバから能動的にデバイスの情報を取得できるだけでなく,ポートごとの監視も可能になる。

WPA2とWPA3の違いを述べよ

WPA2はIEEE802.11iの必須部分を実装したAESベースのプロトコル。パスワードは利用者間で共有する方式で,AESはデータをある一定の長さに分割して置換と並べ替えを繰り返す暗号化アルゴリズムのことを指す。WPA2では中間者攻撃を用いるKRACKsという攻撃に対して脆弱性が存在する。WPA3では楕円曲線暗号を用いた認証および鍵交換の方式であるSAEを利用してWPA2の脆弱性を克服する。

EAP/RADIUS/SSID/WPA2では暗号化通信の機能が規定されているか
  • EAP:PPPの拡張認証プロトコルで暗号化通信の機能はない
  • RADIUS:認証と利用ログの記録を行うプロトコルだが暗号化通信の機能はない
  • SSID:APと端末に設定する識別子
  • WPA2:TKIP(Temporal Key Integrity Protocol)を使用して動的に暗号鍵を更新する
802.1X認証における各層ごとのプロトコルを可視化せよ
TLS・PGP・S/MIMEの違いを説明せよ

TLSは通信を暗号化し,PGPとS/MIMEはメールを暗号化する。PGPは「信頼している秘密鍵で署名されている公開鍵は同様に信頼できる」というWeb-of-trust(信頼の輪)に基づいているが,S/MIMEは認証局による署名に基づいている。

STARTTLSとSMTPSの違いを説明せよ
  • STARTTLS:SMTPのポート番号(25 or 587)を利用し,クライアントとサーバの双方がSTARTTLSに対応していることを確認してからTLS化を行う
  • SMTPS:SMTPのポート番号以外のポートを利用し,最初からTLS通信上でSMTPを動作させる
HTTPSとSTARTTLSの違いを説明せよ

HTTPSは相手がSSL/TLSに対応していなくても一方的にハンドシェイクを仕掛けるが,STARTTLSではSMTPSにお互いが対応していることを確認してからハンドシェイクを行う。

SMTPSとSMTP over SSL/TLSの違いは何か

同じ

SAMLとOpenID Connectの違いを簡単に説明せよ
スクロールできます
方式形式利用者同意利用者↔︎IdP利用者
SAMLXMLベースの証明書×利用者→IdP企業内のユーザ
OpenID ConnectJSONベースのトークンIdP→利用者Webサービスの消費者
SAMLとOpenID Connectの比較

SAMLはドメイン間で認証情報を安全に交換するためのプロトコルであるためSSOという用途としてはオーバースペックで,XMLを利用するためやや扱いにくい。OpenID ConnectはREST形式のAPIベースであるためWebサービスに組み込みやすく,JSON(JWT)を利用しているため扱いやすい。SAMLはIdPとサービス提供者(SP)の証明書を利用するが,OpenID Connectはトークンベースで認証を行う。SAMLは情報連携に利用者の同意を得ないが,OpenID Connectは利用者の同意を得る。SAMLはサービス提供者(SP)が利用者をIdPへリダイレクトさせて認証するが,OpenID ConnectはIdPが利用者を直接認証する。SAMLは企業内で使われ,OpenID Connectは消費者に使われる傾向にある。例は以下の通り。

  • SAML:企業内のIdPにログイン後Slackにログイン(ADで管理されたユーザ向け)
  • OpenID Connect:Facebookにログイン後Instagramにログイン(Webアプリで管理されたユーザ向け)
OAuth・SAML・OpenID Connectを構造化せよ
  • OAuth:認可のための方式
  • SAML:SSOを実現するための方式
  • OpenID Connect:SSOを実現するためにOAuth 2.0を拡張した方式
DNSキャッシュポイズニングとカミンスキー攻撃の違いを説明せよ
  • DNSキャッシュポイズニング:標的サーバの偽IPアドレス(Aレコード)をキャッシュさせる
  • カミンスキー攻撃:標的権威DNSサーバの偽IPアドレス(NSレコード+Aレコード)をキャッシュさせる

カミンスキー攻撃では存在しないサブドメインの名前解決を要求したり大量のクエリIDを送りつけたりすることで,DNSキャッシュポイズニング対策を回避しようとする。そのため,送信元ポート番号を53に固定するのではなくランダム化し,電子署名を使って正当な権威DNSサーバであることを確認(DNSSEC)する必要がある。キャッシュDNSサーバと権威DNSサーバ間の通信は盗聴や中間者攻撃の恐れがあるため,HTTPS通信を利用するDoH(DNS over HTTPS)が利用される。

SSHとTLSの違いを説明せよ

SSHは裸の公開鍵を扱いTLSはPKI基盤上の証明書で公開鍵を扱うため,SSHでは公開鍵の管理はクライアント側の責務となる。SSHはアプリケーション層までまたがるプロトコルであり,TLSはトランスポート層のプロトコルである。他にも,SSHではユーザ認証が必須であり,TLSではクライアント認証はオプションである。

KRACKsとPOODLEの違いは何か
  • KRACKs(Key Reinstallation AttaCKs):WPA2の脆弱性を突いた中間者攻撃
  • POODLE(Padding Oracle On Downgraded Legacy Encryption):SSLの脆弱性を突いた中間者攻撃

いずれも原義を理解すると覚えやすい。一般にセキュリティプロトコルは

  • ハンドシェイク
  • 暗号通信

の2つのフェーズに分けられるが,WPA2の脆弱性はハンドシェイク,POODLEの脆弱性は暗号通信にある。KRACKsは鍵再インストール攻撃の総称であり,異なるパケットで同一の乱数を発生させることで鍵を解析する情報を得る攻撃である。

SSLで利用するCBCには「最後のバイトにパディング長を入れる」という仕様がある。POODLEはこの仕様を悪用し,暗号文の末尾を徐々に復号する攻撃である。なお,CBCは暗号利用モードとも呼ばれ,ブロック暗号の強度を高めるために導入されるオプションのことを指す。CBCは認証機能を持たないためGCMやCCMを利用する流れになっている。

FWとWAFの違いは何か

FWはネットワーク制御を行い,WAFはWebアプリケーション用FWである。DNSサーバやメールサーバへの攻撃はWAFでは防げないためIDSやIPSを利用する。FWをWAFと読み間違えないようにする。

用語使い分け関連

チェックサムとFCSの違いを述べよ

チェックサムはIPとTCP/UDPのヘッダで利用される誤り検知方式で,同時にアルゴリズムのことも指す。FCSはイーサネットのヘッダで利用される誤り検知方式で,アルゴリズムはCRCを利用することが多い。

フラグシーケンスとフレームチェックシーケンスの違いは何か
  • フラグシーケンス:HDLCにおけるフレームの開始と終了の合図
  • フレームチェックシーケンス:伝送誤りの検知(FCS)
パケット/フレーム/データグラム/セグメント/メッセージの違いを述べよ
  • パケット:汎用性の高い用語
  • フレーム:データリンク層のパケット
  • データグラム:ネットワーク層以上におけるパケット単位のデータ構造
  • セグメント:ストリームベースのTCPに含まれるデータ
  • メッセージ:アプリケーションプロトコルのデータ単位
シェアはこちらからお願いします!

コメント

コメントする

※ Please enter your comments in Japanese to distinguish from spam.

目次