goo blog サービス終了のお知らせ 

コンピュータ・プログラミング日誌

記録をつけていきます。

OP25Bとはなんじゃいな

2019-08-13 13:55:38 | 情報処理安全確保支援士
https://www.nic.ad.jp/ja/basics/terms/OP25B.html

OP25B(Outbound Port 25 Blocking)とは、 自ネットワークから外部ネットワークへのTCP 25番ポートの通信を遮断することにより、 spamメールやvirusメールの送信を抑制しようとする技術です。


言い換えると、 spamメールやvirusメールの送信制御で送ることをしないようにするためにTCP 25番ポートの通信を遮断します、それは自ネットワークから外部ネットワークへの通信です、と言うことになる。

ちなみにtcp25はSMTPのことでメール送信に使用されるポート番号。

ISP(インターネットサービスプロバイダ)がこれを適用するのは、自己のネットワーク内部のユーザーが外に向けてスパムやウィルスメールを送らないように制御したいがため。


無線LANセキュリティのすべて

2019-08-13 13:54:53 | 情報処理安全確保支援士
ということで代表的な説明のみだが、分類を全て体系化するとこんな感じになる。
無線のセキュリティ規格の話である。

規格は古い規格と新しい企画の二種に分かれており、更にその中で暗号化と認証方式の2つの規格にそれぞれ分かれる。



1.規格 IEEE 802.11(古い、推奨されない)
 暗号化規格:WEP(Wired Equivalent Privacy)。もう使われない。推奨されない。
 認証方式:オープンシステム共通鍵

2.規格 IEEE 802.11i(今のところのスタンダード)
 2つある。WPA、WPA2の2つである。WPA2の方が改善されていて性能がいい。

 (1)WPA
  暗号化方式:TKIP/MIC
   「TKIP」(Temporal Key Integrity Protocol:一時キー整合性保証プロトコル)は端末と無線アクセスポイント(AP)の間で暗号通信を行う際の暗号鍵の生成方式を規定、暗号化自体はこの鍵を用いてストリーム暗号の一種であるRC4により行う。
   「MIC」(Message Integrity Code)は、MACの亜種。メッセージ完全性コード。
   MACとはメッセージ認証符号で、共通鍵暗号方式やハッシュ関数を使って作られる、メッセージが改竄されていないかをチェックするチェック用のデータのこと。
   このMACで鍵を使わないバージョンがMIC。

  認証方式:(これはWPA2と同じ。)

   個人用:PSK(Pre-Shared Key:事前共有鍵)。スケーラビリティがない。アクセス可能なコンピュータには全て同じパスフレーズを与える。

   企業用:EAP(IEEE 802.1X)(Extensible Authentication Protocol:拡張認証プロトコル)。
    代表的な認証方式

    EAP-MD5
ユーザー名とパスワードによる認証だが、平文を流さないためにMD5ハッシュを用いる。クライアント側のみ認証される。

    EAP-TLS (Transport Layer Security)
サーバ、クライアント双方に電子証明書を準備し、これによって認証を行う。

    EAP-TTLS (Tunneled TLS)
EAP-TLSの拡張版。まずはサーバ側にのみ電子証明書を準備してサーバ認証済みのTLS通信路を構築し、その暗号化通信路を通してパスワードによるクライアント認証を行う。

    EAP-PEAP (Protected EAP)
サーバ側にのみ電子証明書を準備してサーバの認証を行った後に、TLSによる暗号化通信路を用いてさらにEAP通信を行い、クライアントを認証する。この際クライアントの認証はパスワードやキートークンなど、電子証明書以外の認証手段を利用する事が一般的である。


 (2)WPA2
  暗号化方式:AES-CCMP
   AESとは、Advanced Encryption Standard(高度暗号基準)DESに代わる新しい標準暗号となる共通鍵暗号アルゴリズムである。
   DESとは、Data Encryption Standard(データ暗号基準)であり、今までスタンダードだった暗号化標準である。
   CCMP(Counter mode with CBC-MAC Protocol)はAESを元にした無線暗号化セキュリティの方式。

   CBC-MAC(cipher block chaining message authentication code:暗号ブロックチェーンにおけるメッセージ認証コード)とは、ブロック暗号からメッセージ認証符号を生成する手法である。

   ブロック暗号とは共通鍵暗号の一種。固定長のデータ(ブロックと呼ぶ)を単位として処理する暗号の総称である。
   (これに対して、ビット単位やバイト単位で処理を行う暗号はストリーム暗号と呼ばれる。 )

   メッセージ認証符号とは、メッセージの同一性の保証であり、コンピュータウイルス、不正侵入等を使った破壊行為によりメッセージが変更されていない事を保証する為の手続きをメッセージ認証という。

   Counter modeとかあるけれども何がカウンターやねんとか思うが、別に誰かを対抗してぶっとばすわけではない。
   CTRモード (Counter Mode) は、ブロック暗号を同期型のストリーム暗号として扱うものである。
   とのこと。はえ〜。

  認証方式:(これはWPA2と同じ。)




と言うことで、この辺りに関する問題を見ていこう。

まずは解説から。

EAP:IEEE 802.11iでのWPA/WPA2での認証規格。
  PPP拡張認証プロトコルとも呼ばれる。
  PPPが本来持つ認証の仕組みを拡張し、使用できる認証方式を増やす。
  PPPとはPoint-to-Point Protocolであり、2点間を接続してデータ通信を行うための通信プロトコルである。
  ペンギンアイドルのペパプではない。

RADIUS:元々1992年 米Livingston社(当時)の独自ユーザ認証プロトコルとして. 開発されていたが、それがデファクトスタンダードとなった。これ便利じゃん的なノリでRFCとかIEEE 802.1Xとかに採用される。UDPベースのプロトコルで、コネクションレスで情報のやり取りを行う。
 リモートアクセス環境でユーザー認証とアカウンティング(利用履歴などのログ記録)を一元化するために開発された認証システム。あるいはそのプロトコルを指す。

SSID:Service Set Identifier。無線LAN(Wi-Fi)におけるアクセスポイントの識別名。

WPA2-Enterprise:IEEE 802.1Xの規格に沿った利用者認証及び動的に配布される暗号鍵を用いた暗号化通信の実装方式。
 

令和元年秋期 情報処理安全確保支援士 パーフェクトラーニング過去問題集 P48

問13

ア EAPは、クライアントPCとアクセスポイントとの間で、あらかじめ登録した共通鍵による暗号化通信を実装するための規格である。

  →EAPは認証方式なのであって、暗号化通信の機能は規定されていない。ブー。

イ RADIUSは、クライアントPCとアクセスポイントとの間で後悔鍵暗号方式による暗号化通信を実装するための規格である。

  →RADIUSは、「認証」「利用ログの記録を単一のサーバに一元化すること」を目的としたプロトコル。
   暗号化通信の機能はない。ブー。

ウ SSIDは、クライアントPCごとの秘密鍵を定めたものであり、公開鍵暗号方式による暗号化通信を実装するための規格で規定されている。

  →SSIDはアクセスポイントの識別子のことなのであって、規格ではない。ブー。

エ WPA2-Enterpriseは、IEEE 802.1Xの規格に沿った利用者認証及び動的に配布される暗号鍵を用いた暗号化通信の実装方式。

  →正解。



VLAN機能の問題について

2019-08-13 12:35:34 | 情報処理安全確保支援士
ひっかけがあるから見ていこう。

令和元年秋期 情報処理安全確保支援士 パーフェクトラーニング過去問題集 P48

問12

VLAN機能をもった一台のレイヤ3スイッチに複数のPCを接続している。スイッチのポートをグループ化して複数のセグメントに分けると、スイッチのポートをセグメントに分けない場合に比べて、どのようなセキュリティ上の効果が得られるか。

ア スイッチが、PCから創出されるICMPパケットを全て遮断するので、PC間のマルウェア感染のリスクを低減できる。
イ スイッチが、PCからのブロードキャストパケットの到達範囲を制限するので、アドレス情報の不要な流出のリスクを低減できる。
ウ スイッチが、PCのMACアドレスから接続可否を判別するので、PCの不正接続のリスクを低減できる。
エ スイッチが、物理ポートごとに、決まったIPアドレスをもつPCの接続だけを許可するので、PCの不正接続のリスクを低減できる。


と言うことで正解はイ。
しかしその他の選択肢がどうして誤りなのかの解説がない。これを補足する。


ア・・・そもそもマルウェアはpingなどに代表されるICMPレベルのパケットで感染はしない(物理層に近いものなので、マルウェア感染するマルウェアソフトプログラムはそもそもその物理層を通って、上位のセッション、アプリケーション層で感染するものだろうと。)

ウ・・・
この解説の前に次の知識を。

平成25年秋期問20 VLAN機能のセキュリティ効果|ネットワークスペシャリスト.com
https://www.nw-siken.com/kakomon/25_aki/am2_20.html

VLAN(Virtual LAN)は、スイッチに接続された端末を物理的な構成に関係なくグループ化する機能、またはその機能で形成されたネットワークのことです。VLANにはセグメントの分割を基準により幾つかの方式があります。

ポートベースVLAN
スイッチの接続ポート単位でグルーピング
アドレスベースVLAN
MACアドレスやIPアドレスを基準にグルーピング
ポリシベースVLAN
IP、IPX、AppleTalkなどのネットワークプロトコルごとにグルーピング
タグVLAN
パケット内の拡張タグに指定された情報によってグルーピング

ポートベースVLANでは以下のように同一のグループにするポートに"VLAN ID"を設定することで、ネットワークの分割を行います。


と言うことでVLANには上記の4種がある。
問題分のものは、ポートベースVLAN。このウの選択肢はアドレスベースVLANの説明。なので非該当。

エ・・・ウと同じく、アドレスベースVLANにおけるセキュリティ効果。よって非該当。


物理か論理かポリシーか、パケット内拡張タグでの振り分けか、と言う感じですね。


リゾルバとは何か

2019-08-13 10:22:36 | 情報処理安全確保支援士

https://www.weblio.jp/content/%E3%83%AA%E3%82%BE%E3%83%AB%E3%83%90

リゾルバとは、名前解決のためのDNSクライアントのことである。

ドメイン名を元にIPアドレス情報を検索したり(正引き)、IPアドレスからドメイン名の情報を検索したり(逆引き)するのが目的である。名前解決を行うことから「解決するもの」(resolver)という意味でリゾルバと呼ばれている。

リゾルバでは、最低1つ以上のドメインネームサーバーのIPアドレスを保持しており、アプリケーションが名前解決を要求した場合、まず、リゾルバ内部にキャッシングされた情報があるかどうか調べる。情報がある場合は、その情報をクライアント(アプリケーション)に返す。ない場合は、リゾルバが知っているドメインネームサーバーへ問合せを行い、答えをクライアント(アプリケーション)に返す。その際、リゾルバ内部に結果をキャッシングする。これは、再度の問合せに伴う無駄な処理を省くためである。

リゾルバは、OSに付随するTCP/IPベースのプログラムに組み込まれている。nslookupやdigコマンドをイメージすればわかりやすい。

なお、DNSサーバー側で名前解決の問合せを受け付けるリゾルバはフルサービスリゾルバであり、ここでいうリゾルバ(スタブリゾルバ)とは異なる。




と言うことで、フルサービスリゾルバ(全部解決)とスタブリゾルバ(末端だけ解決)の二種があるらしい。
要は、このIPアドレスに対応するドメイン名が分からんから教えてね、と言うデータ集約所のデータベースサーバーがDNSで、その解決クライアントがリゾルバ、そしてそれが二種に分かれると。




「スタブリゾルバ」と「フルサービスリゾルバ」の違い
https://wa3.i-3-i.info/diff91dns.html

パソコンの中にいて、DNSサーバさんに問い合わせをしてくれるプログラム


他のDNSサーバさんに答えを教えてもらいに行くDNSサーバさん








ソースポートランダマイゼーションとは何か

2019-08-13 10:18:49 | 情報処理安全確保支援士
前回のDNSキャッシュポイズニングとの引き続きの話題です。

----

ソースポートランダマイゼーションとは何ですか?
https://www.atmarkit.co.jp/ait/articles/1501/05/news015.html

 ソースポートランダマイゼーションとは、クエリごとに、フルリゾルバ(いわゆるキャッシュDNSサーバー)が権威DNSサーバーに送るクエリパケットのソースポート番号をランダムに変化させることである。

 DNSキャッシュポイズニング(キャッシュ汚染)攻撃を防止するために、フルリゾルバはサーバーに送ったクエリを記録しており、クエリに対応するレスポンス以外を捨てる。図1に、DNSクエリ/レスポンスパケットフォーマットを示す。確認する情報は、権威DNSサーバーのアドレス(図1の「Auth server」)、ポート(53)、フルリゾルバのアドレス(図1の「FullResolver」、通常は1つ)、フルリゾルバのポート番号(図1の「f_source」)、クエリID(16ビット長、図1の「QID」)、クエスチョンセクションの内容(クエリ名、タイプ、クラス(図1の「qname/type」))である。

 レスポンスを推定して偽装応答を注入する場合、上記6つのパラメーターを推定する必要がある。権威DNSサーバーのアドレス数をNとし、権威DNSサーバーのポートは53固定で1、フルリゾルバのアドレス数は通常1、フルリゾルバのポート番号が固定ならばポート番号数1、クエリIDの取り得る数は 216の65536、問い合わせ内容を知っていればクエリセクションも分かるために既知であると仮定すると、推定する必要のある取り得る数はN×65536 となる。

 すると一度の試行による攻撃成功確率は 1÷(N×65536) となるが、推定には全てを試すという解決策(いわゆる「総当たり攻撃」)があり、N×65536回の試行を行うと確実に注入が成功することになる。現在のコンピューターやネットワークの処理能力では100万パケット程度の生成は容易であるため、攻撃は容易に成立する。

 ここで、取り得る数を増やせるパラメーターはないか考えると、先ほど固定としていたフルリゾルバのポート番号が16ビットある。つまり、クエリごとにポート番号を変更することで攻撃成功確率を下げることができる。

 ポート番号には使いにくいもの(0〜1023番)があるため、おおよそ6万4000程度の範囲を取り得るとすると、ポート番号をランダムにすることで一度の試行による攻撃成功確率を 1÷(N×65536×64000) にできる。毎秒100万回の試行を行っても、全ての場合を試すには N×65536×64000÷1000000=約4194×N秒かかることになり、その間には正当なレスポンスが戻ってきている。そのため、ソースポートランダマイゼーションで攻撃成功確率を下げることができる。

----