こんにちは、こじろうです。
この記事では、N/Wスペシャリスト令和元年午後Ⅱ問2に挑戦していきたいと思います。
別記事のネットワークエンジニアのススメでも紹介しましたが、文系SEからするとシステムエンジニアよりもネットワークエンジニアになった方が良いキャリアを気づかる可能性があります。
僕自身も、プログラマ➡システムエンジニア➡ITコンサルタントとキャリアチェンジしてきましたが、所々、ネットワークエンジニアとして活動し、成果を出すことに成功してきました。
文系SEのみなさまにも是非、ネットワークの知識を蓄えて頂きたく、IPAが主催しているネットワークエンジニアの資格試験について、僕なりの解答方法と、IPAが公表している模範解答を紹介していきたいと思います。
【この記事でわかること】
- N/Wスペシャリストの問題を解く上で持つべき考え方
- 令和元年午後Ⅱ問2における各設問の考え方
- 1 設問を解き始める前の前提
- 2 問題文を読みながら僕が考えていった内容
- 3 表1中の[空欄ア]について…
- 4 「スキャンに対応している」
- 5 下線部①”~偽装されたパケットは届かないように…”
- 6 下線部②”DMZ上のブロードキャスト”
- 7 UDPパケットを送ると、RFC792で規定されたパケットが送信元宛に返送される…
- 8 表1中の項番cのルールによって…
- 9 SYN Flood攻撃手法と対策技術~装置処理の手順
- 10 下線③④⑤
- 11 フルリゾルバによるインターネット上の名前解決は[空欄d],[空欄e]からの~
- 12 表2 表1の変更内容
- 13 設問5(1)表3中の問合わせパケットに対して、フルリゾルバが正当な応答パケットと判断するパケットの内容について、[空欄キ]~[空欄サ]に入れる適切な字句を入れよ
- 14 下線部⑥”攻撃者はコンテンツサーバから正しい応答が返ってくる前に大量の偽の応答パケットを標的のフルリゾルバサーバ宛に送信する”
- 15 下線部⑦”外部DNSサーバの構成変更によって、インターネットからのDNSサーバ2への キャッシュポイズニング攻撃は防げると判断した”
- 16 図4中のDNS名前解決時のパケット通過ルート
- 17 キャッシュしたDNSレコードの生存時間
- 18 C&Cサーバを効果的に隠ぺいする方法。
- 19 下線部⑨FPサーバとFWのログを定期的に検査することにした。
- 20 設問6の⑸について
- 21 ネットワークの勉強をして良かったなーと思うこと
設問を解き始める前の前提
詳細は以下の記事を読んで頂きたいのですが、過去問に挑戦する前に頭に入れておいて欲しいことが2つあります。参考:【文系SE】ネットワークスペシャリストー解答時のフレームワークー
- 問題文を読みつつ設問を推測する。(設問を読んでから考えていては間に合わない)
- 問題文を読んでいく中で「これ、聞かれるだろうな」と推測する。
それでは、いってみましょう!!😃
問題文を読みながら僕が考えていった内容
表1中の[空欄ア]について…
設問2の問題に絡んできますが、空欄アは、TCP/53の通信であるため、DNSに絡む通信にて利用されるポートであることが自明です。
更に、インターネットからDMZへの通信におけるルールであることと、P.14の序盤で「外部DNSサーバはDMZのゾーンサーバを管理するだけでなく、再帰的な名前解決をするフルリゾルバとしても機能している。外部DNSサーバはマスタDNSサーバであり、インターネット上のR社のDNSサーバをスレーブDNSサーバとして利用している 」とあり、’フルリゾルバとして機能する’ということは、‘外部DNSサーバは、コンテンツサーバ等へ’このURLのIPアドレス知らない??’と、聞いて回って、結果をクライアントPCへ教えてくれることが分かります。(参考:DNS)
インターネット~DMZ間で、DNSのゾーンファイルの転送(情報の同期)がなされていることが、問題文を読んだときに想起できなければ解答は厳しく、是非、こちらのページで勉強しておきたいところです。
模範解答は
ア:x.y.z.1
通信の名称:ゾーン転送
でした。
「スキャンに対応している」
設問1のaについてですか、スキャンの種類と言えば、ポートスキャン、IPスキャン、アドレススキャンとありますが、表1からこれらの実行を妨げる、もしくは実現するような記載が見当たらないですね。
おそらく、pingコマンドでの生死確認ができないようなFW設定になっているので、上記のいずれのスキャンも受け付けない設定となっている、ということが言いたいのでしょう。
そうなると、既にポートスキャンについては問題文に記載があるので、設問1のaはアドレス(模範解答はホストでもOK)としている。)となるのでしょう。
「スキャン」という単語を見て、「ポートもしくはアドレススキャンのことだな」という考えが浮かなければ、解答は厳しいですね。
是非、こちらのページから勉強しておきましょう。(参考:セキュリティ系の記事、スキャンに関しての記事)
模範解答は
a:ホストまたはアドレス
でした。
下線部①”~偽装されたパケットは届かないように…”
設問3⑴についての問題ですが、フィルタリングの内容を問われています。
要は、偽装されたパケットがどのように遮断されるかを問われています。
uRPFという技術で遮断しているようです。つまり、uRFPが何なのか分からなければ、解答は厳しいですね。
正解としては、ルーターが受信したパケットのIPアドレスが、ルーティングテーブルに存在しない場合、受信したパケットを破棄する、なんですが、これはuRPFが何なのか分かっていなければ、正直、NO CHANCEなんですよね。
当初は、設定された送信元IPアドレスが実在しない、もしくは経由してきたルータのネットワークアドレスの範囲外の場合、当該パケットを破棄する、という、明後日且つややこしい回答をしておりました。
模範解答は
ルータが受信したパケットの送信元IPアドレスがルーティングテーブルに存在しない場合、受信したパケットを破棄する
でした。
下線部②”DMZ上のブロードキャスト”
設問3⑵についてですが、上記に該当するIPアドレスを問われています。
OSI参照モデルの第二層、同一ネットワーク上の全ての機器へ情報(フレーム)を送ることを、ブロードキャストフレームを送出する、と言い、その際の宛先IPアドレスはそのネットワークにおいて、各オクテットの数値が最大となるアドレスになります。
このアドレスは、該当ネットワークのネットワークアドレス(図1の注記1:DMZの公開サーバ用のネットワークアドレスはα.β.γ.0/28)で決まります。
α.β.γ.0/28とあるため、ブロードキャストアドレスはα.β.γ.15となる。
上記のブロードキャストアドレスの算出方法が分からない場合は、解答は厳しく、ブロードキャストアドレスという単語が出てきたときに上記のの内容がパット出てこない場合は正直、NO CHANCEでしょう。
(当初、α.β.γ.16と回答しておりました。。)
模範解答は
α.β.γ.15
でした。
UDPパケットを送ると、RFC792で規定されたパケットが送信元宛に返送される…
要はICMP(ping)のことです。
実際、pingを打って失敗したことがある人は分かるんですが、ICMP Unreachableが返ってくるんです。
これはRFCを読むのが好きな人か、自分で上記を経験していないとNO CHANCEです。
表1中の項番cのルールによって…
設問1についてですが、cの前後の文章”インターネットか”図1中のメール中継サーバ宛に送信されるTCP/25のSYNパケットは、表1中の項番cのルールによってメール中継サーバに転送~”とありますね。
これを読んだときに、
- インターネットからメール中継サーバの通信の話なのだから表1項番1~5のどれかの話だと分かる
- TCP/25とかいてあるのだから、項番3以外の情報は関係ない。
上記がパット浮かばなければ解答は厳しいと思います。
模範解答は
c:3
でした。
SYN Flood攻撃手法と対策技術~装置処理の手順
設問4の⑴、空欄のイ、ウ、エですが、情報をやり取りする際のTCPヘッダ内のどの情報が更新されていくか、が問われています。
確認応答番号=シーケンス番号+データビット数であることが、問題文を読んだ瞬間に思い浮かばなければ、解答は厳しいでしょう。
全然関係ないですが、フロー制御についても押さえておきましょう。
参考:【TCPの機能(ウィンドウ制御、フロー制御)】
模範解答は
イ:シーケンス
ウ:確認応答
エ:1
でした。
下線③④⑤
設問4の⑵だが、ディレイド・バインディング方式により、メモリ消費量が少なく済む理由を問われています。
TCPコネクションが張られるときのシーケンス(クライアント側からSYNパケットが送られてからACKを返すまでの流れ)がパット頭に浮かばないと解答は厳しいでしょう。
(当初は、ACKパケットを返してこない相手向けのメモリ確保は不要だから、と回答しておりました。。)
模範解答は
コネクション確立の準備段階では、メモリの確保は不要だから
でした。
設問4の⑶だが、FPサーバについては、FPサーバの設定にて、踏み台攻撃を未然に防げると判断した理由について問われています。
‘FWの設定’とあるので、FWの設定内容を確認するのがマスト。FPサーバ(α.β.γ.2)への外部からのアクセスルートがFWでどう設定されているかというと、表1の通信を許可するFWのルール:項番1~5が対象なわけだ、FPサーバ(α.β.γ.2)に関する通信が記載されていませんね。つまり、許可されていないということなのです。
当初は、FPサーバにはインターネットからのコネクションを確立できないから、と、言いたいことは分かるが、いろいろ足りていない感のある回答をしてしまっておりました。。
模範解答は
本サーバへの通信は、DMZの内部LAN上の機器のみ許可されているから
でした。
さらに設問4の⑷だが、メール中継サーバについても踏み台にされないような設定・処理とは何か、問われています。
この問題はセキュリティ関連の問題であり、転送=踏み台にされる(されないように何か策を講じなければならない)ということです。
つまり、このメール中継サーバから、別のネットワークへメールが転送されることが無いようにしなければならないわけです。
これを防ぐには、メールの宛先がこの会社の内部LAN向け以外のメールは転送しない、とするべきでしょう。
当初は、OP25Bを設定し、インターネット上のメールサーバからのメール転送は受け付けない、という、超局所的な回答をしてしまっておりました。
模範解答は
インターネットから受信したW社のメールアドレス宛て以外のメールは破棄する
でした。
フルリゾルバによるインターネット上の名前解決は[空欄d],[空欄e]からの~
設問1ですが、インターネット上のホスト名解決…、つまり、内部LAN(DMZ経由)でインターネットへのアクセスが発生するパケットは、①WebサイトへのアクセスつまりFPサーバか、メールかの2通り。その他の代理店サーバetcは、インターネットから内部LANへのアクセス時に通過するサーバであるため、dやeに入る余地はない。
「名前解決」という単語が出てきたときに、DNSの名前解決の段取りが想起されないうちは、挑戦する問題ではない。(参考:DNS )
模範解答は
d:FPサーバ
e:メール中継サーバ
でした。
表2 表1の変更内容
下線部d,eと同様に、DNSの名前解決の流れを理解していないと正答が厳しいです。
特に
- コンテンツサーバ=名前解決の依頼に対して欲しがっているURLに紐づくIPアドレスを教えてあげる
- フルリゾルバ=自分自身は情報を持っていないが名前解決の依頼は受け付け、コンテンツサーバetcへ何度も問い合わせを行い、名前解決を依頼したクライアントへアクセスしたいサイトのIPアドレスを教えてあげる。
以上2点を理解していないと解答はかなり厳しい問題です。
また、”踏み台にされる可能性が低くなる”とあるが、変更前の設定では、攻撃者がまず外部DNS(α.β.γ.1)にアクセスし、ここから攻撃対象のサーバへアクセスする、という動作を指していることがパット頭に浮かぶかどうか。
上記の内容がスッと頭に入ってこなければ、解答は厳しいでしょう。
設問5(1)表3中の問合わせパケットに対して、フルリゾルバが正当な応答パケットと判断するパケットの内容について、[空欄キ]~[空欄サ]に入れる適切な字句を入れよ
模範解答は
キ:コンテンツサーバのIPアドレス ←当初はα.β.γ.1と回答…
ク:フルリゾルバサーバのIPアドレス ←当初はanyと回答…
ケ:53
コ:n
サ:m
でした。
下線部⑥”攻撃者はコンテンツサーバから正しい応答が返ってくる前に大量の偽の応答パケットを標的のフルリゾルバサーバ宛に送信する”
設問5⑵ですが、大量の偽応答パケットが送信される中、当該パケットの中でパケットごとに異なる内容が設定される表3中の項目を問われています。
下線部d,eと同様に、DNSの名前解決の流れを理解していないと正答が厳しいです。
また、DNSのやりとりで交換される情報のIPヘッダ、UDPヘッダの情報は、受信時に送受信のIPアドレス並びにポートを入れ替えて送りあうこと、加えて、DNSヘッダ内の識別子は常に同じであることがパット浮かぶかどうか。
上記の内容がスッと頭に入ってこなければ、解答は厳しいでしょう。
当初、”送信元ポート番号、識別子”と回答してしまっておりました。。
模範解答は
宛先ポート番号、識別子
でした。
下線部⑦”外部DNSサーバの構成変更によって、インターネットからのDNSサーバ2への キャッシュポイズニング攻撃は防げると判断した”
設問5⑶ですが、上記のように”防げる”と判断した理由を問われています。
下線部d,eと同様に、DNSの名前解決の流れを理解していないと正答が厳しいでしょう。
また、設定というのは、表2 表1の変更内容を指しています。
上記の内容がスッと頭に入ってこなければ、解答は厳しいでしょう。
模範解答は
攻撃者が送信するDNSキャッシュポイズニングのための名前解決要求パケットは、FWにて破棄されるから
でした。
図4中のDNS名前解決時のパケット通過ルート
設問6⑴ですが、これまでの問題の設定の流れから
- NPC上のマルウェアがexample.comへアクセスするには内部DNSを経由しない方法しかない
- P.18の末尾に、”DNSサーバ1はα.β.γ.1(表1 通信を許可するFWのルールを見ると、このサーバはDMZ→インターネットへの通信が許可されていない(項番6-8)、つまり、外部やインターネットへのアクセス・名前解決は行わない=攻撃者が設置したサーバへアクセスはできない。)、DNSサーバ2:α.β.γ.6(外部DNS、つまり外部との通信を行う=攻撃者が設置したサーバへのアクセスを行う。)
- example.comへはアクセスできるDNSサーバは、内部DNS1のみ
- 「名前解決」となると、対象のアクションはクライアントサーバからのFQDNへのアクセスからと思いがちだが、この問題ではフルリゾルバがスタート地点。
上記の内容がスッと頭に入ってこなければ、解答は厳しいでしょう。
当初は、a→c→g→h→d→eと回答してしまっておりました。
模範解答は
e→g→h→f
でした。
キャッシュしたDNSレコードの生存時間
設問6⑵ですが、DNSサーバ2がキャッシュしたDNSレコードが消去されるまでの時間を問われています。
DNSレコードについての知識をそのまま利用すれば正答できます。
DNSレコードの各情報が想起できなければ、解答は厳しいですね。
模範解答は
3
でした。
C&Cサーバを効果的に隠ぺいする方法。
設問6の⑶ですが、C&Cサーバを効果的に隠ぺいするためのマルウェアによるC&Cサーバへのアクセス方法について問われています。
P.21中断の’毎回異なるIPアドレスで~’と、同ページ終盤に’あらゆるホスト名に対して同一のIPドレスで応答~’とある。
つまり、適当なURLを入れても、常にC&Cサーバへアクセスできるんです。
C&CサーバのIPアドレスを突き詰めて遮断したい管理者側からしたら、’どれが本物のC&Cサーバ?’と混乱しますね。
設問にある’効果的に~’という文言は、言い換えれば’管理者が混乱するような~’ということなので、毎回異なるURL(FQDN)でアクセスすることが回答となるのです。
当初は、”直接コンテンツサーバへ任意のFQDN問い合わせを行う”と回答してしまっておりました。
模範解答は
アクセス先のホスト名をランダムに変える
でした。
下線部⑨FPサーバとFWのログを定期的に検査することにした。
設問6の⑷ですが、マルウェアの活動が疑われる異常な通信とは何か、問われています。
こういったセキュリティ系の攻撃の記録としては、攻撃対象にすんなりアクセスできることは少ないので、攻撃成功までに認証の失敗等のエラーログが多く出力されるものなのです。(そのエラーログを確認次第、システム管理者は対策を講じる必要があります。)
当初は、一つのFQDNへのDNS問い合わせが殺到する、という、大分、明後日な方向の回答をしておりました。。
模範解答は
FPサーバでの認証エラーが短時間で繰り返される
でした。
設問6の⑸について
内部LANのNPCに侵入したマルウェアが、FPサーバを経由せずにC6CサーバのFQDN宛てのサーバアクセスを試みた場合は、マルウェアによるC&Cサーバとの通信は失敗するが、その理由を問われています。
プロキシサーバを経由しない場合のアクセスの失敗理由なので、アクセス元である自分自身にグローバルIPアドレスが設定されないから、と答えてしまいましたが、模範解答は’C&CサーバのIPアドレスを取得できないから’でした。
どちらも解答になっているように思うのですが…
プロキシサーバを経由せず、自分自身がプライベートアドレスしか保持していない状態で外部のサーバ(C&C)へアクセスしようとすると、なぜ失敗するのか?という設問になります。
グローバルIPアドレスを持っていないわけですから、行ってみれば、我々の持っているPCにおいて、Wi-Fiに接続しないでインターネットにアクセスしようとして失敗しているのと同じ状況です。
あれって、なんで失敗してしまうんでしょうね??改めて聞かれると…
当初は”FWがステートフルインスペクション機能を搭載しているから”と回答してしまっておりました。
模範解答は
C&CサーバのIPアドレスを取得できず宛先を設定できないから
でした。
ネットワークの勉強をして良かったなーと思うこと
ITコンサルタントとしての現場において、プロジェクト内でトラブルシューティングやシステムインフラ設計において最も頼られる存在になり、安定した案件・プロジェクトアサインが実現できるようになりました。
参考:コンサルファームでアベイラブルになったら
文系SEであっても、こういった知識があると一目置かれた存在になれますし、キャリアアップの一助になります。
実際、僕はプログラマ➡SE(ネットワークエンジニア)➡ITコンサルタントとキャリアップしてきましたが、ITコンサルタントとして活動している今も本記事の様な技術的な部分を大事にしているため、’他のコンサルタントとは差別化された人材になれているな’と感じています。
本記事は技術的な内容でしたが、キャリアに関する情報をお探しの方はこちらも是非、ご覧ください。
参考:【文系 SE】ネットワークエンジニアのすすめ
それでは、Tchau◎
こじろう