#author("2023-09-19T14:03:51+09:00","default:irrp","irrp") →ネットワーク関連 →TCP関連 →IP(Internet Protocol)関連 →脆弱性関連 #contents *一般 [#m804499f] -[[1.1.1.1 は一部の多段 CNAME を解決してくれない>https://zenn.dev/happy_elements/articles/cloudflare_cname_chain]] 2023.9 -[[EC2インスタンスの終了保護の方法を教えて下さい | DevelopersIO>https://dev.classmethod.jp/articles/ec2-termination-protection/]] 2022.12 -[[アプリケーションエンジニアが知るべきDNSの基本/Basics_of_DNS_that_application_engineers_should_know - Speaker Deck>https://speakerdeck.com/mamy1326/basics-of-dns-that-application-engineers-should-know]] 2018 -[[新gTLDに対する各国政府からの事前警告>http://www.geekpage.jp/blog/?id=2012/11/23/1]] 2012.11.23 -[[知ってますか? DNSの浸透問題や親子同居問題、検閲の影響>http://www.atmarkit.co.jp/news/201209/07/dnssummerdays.html]] 2012.9.7 -[[DNSブロッキングは筋が悪いのか?>http://www.geekpage.jp/blog/?id=2012/6/27/1]] 2012.6.27 -[[DNSのIPv6設定でやっていいこと、悪いこと>http://www.atmarkit.co.jp/fnetwork/rensai/v6net04/v6net01.html]] -[[DNSの仕組みの基本を理解しよう>http://www.atmarkit.co.jp/fnetwork/rensai/dns01/dns01.html]] -http://ja.wikipedia.org/wiki/.arpa -[[DNS Tips>http://www.atmarkit.co.jp/fnetwork/dnstips/index.html]] -[[キャッシュ/逆引きDNSの構築と運用>http://www.atmarkit.co.jp/flinux/rensai/bind904/bind904a.html]] *Route53 [#jabe1c20] -[[【小ネタ】VPC内外で自ドメインの名前解決で違う結果が返ってきて困った話 - DENET 技術ブログ>https://blog.denet.co.jp/route53-resolve-from-vpc/]] 2022.12 -[[Route53でCAAレコードは設定してますか?? - Qiita>https://qiita.com/Takao_/items/0935694040da1899e040]] 2022.5 -[[DNSド素人がdigコマンドとRoute 53を使って、DNSについてあれこれ学んでみた>https://dev.classmethod.jp/articles/dig-route53-begginer/]] 2018 *ゾーンファイル [#v4992f69] -各サーバで管理しているDNSの単位をゾーンと呼び、その情報を保存しているファイルをゾーンファイルと呼ぶ。 -[[【図解】DNSゾーン転送の仕組みとシーケンス〜フォワーダとの違い,AD統合ゾーン,notify,スタブゾーンのメリット/デメリット〜 | SEの道標>https://milestone-of-se.nesuke.com/l7protocol/dns/zone-transfer/]] 2018 **ゾーンファイルのレコード [#h6877e92] ゾーンファイルは以下の種類のレコードで構成される -SOA:Start of Authority DNSサーバの管理情報など -NS:Name Server ゾーンファイルを管理するDNSサーバ(権威DNSサーバ=コンテンツサーバ)を指定する。 -MX:Mail Exchange メールサーバのFQDNを設定する -A:Address ホスト名をアドレスに紐付ける情報 -AAAA:Address IPv6用のAレコード -CNAME: Canonical Name ホストの別名 -PTR:Pointer IPアドレスをホスト名に紐付ける逆引き情報。 --IPv4の場合 999.999.999.999.in-addr-arpa. --IPv6の場合 [16byte x 2 =32個の 4bit毎の16進数].ip6.arpa --例えば、2001:dc4::1というIPv6アドレスを持つホストのホスト名を調べるためには、1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.4.c.d.0.1.0.0.2.ip6.arpaをDNSに問い合わせる -NAPTR: ENUMドメイン名を別のURIへ変換する。VoIPの電話番号をURIに紐付ける --ここでいうURIは sip:username@example.jp のようなもの -OPT:Option EDNS0(Extention Mechanisms for DNS (RFC2671))パケットサイズ広告など -TXT:任意のテキスト情報 --[[SPFレコードとは?正しい書き方を徹底解説 - カゴヤのサーバー研究室>https://www.kagoya.jp/howto/it-glossary/mail/spf/]] 2020 -下位ゾーンは上位ゾーンに対して必ずNSレコードとそのネームサーバのAレコードを登録する必要がある -ダイナミックDNS(DDNS)=DNS UPDATE --ゾーンファイルに自動でIPアドレスの変更を反映させる方式 *プライマリDNSとセカンダリDNS [#f555c70b] -プライマリDNS:そのドメインにおける資源レコードを登録 -セカンダリDNS:プライマリDNSからゾーン転送によってコピーされる -プライマリDNSもセカンダリDNSもNSレコードに登録されているなら権威サーバである -NSレコードはMSレコードのような優先順位情報を持っていないためプライマリDNSとセカンダリDNSは外のネットワークから見たとき見分けはつかない *ドメイン [#ef1396d8] -DNSのルートサーバは世界に13台あり、TLD(Top Level Domain)のゾーンを管理している -TLDは xxx.co.jp の jp の部分に相当する。co がセカンドレベルドメイン、xxxがサードレベルドメインと呼ばれる。 -ドメイン名の書式は相対ドメイン名と絶対ドメイン名(FQDN)がある。 -相対ドメイン名 --SOAレコードの $ORIGIN ディレクティブ相対パスの原点(xxx.co.jpなど)を設定し、他のレコード中にある @ と置き換える -絶対ドメイン名(FQDN) -- .(ドット)で終了する **ENUMドメイン [#kd3eef72] -E.164 NUmber Mappingの略 --ENUM (E.164 NUmber Mapping) は、公衆交換電話網の電話番号体系をインターネットのIPアドレス体系と統合する電話番号マッピング (telephone number mapping) の代表的な規格。電話番号はE.164規格で体系化されており、インターネットはIPアドレスや他のリソース情報とドメイン名のリンクに Domain Name System (DNS) を用いる。電話番号マッピングシステムは、DNSを単に参照することで与えられた電話番号に対応したサービスを提供するインターネット上のサーバを決定するものである。ENUMでは特別なDNSレコードタイプを使い、電話番号からインターネット通信に使える Uniform Resource Identifier やIPアドレスに変換する。(Wikipediaより) -末尾にe164.arpa.が着く -E.164番号が +81-3-3470-ABCD の場合、ENUMドメインは D.C.B.A.0.7.4.3.3.1.8.e164.arpa. となる -参考:http://ja.wikipedia.org/wiki/ENUM **ドメインサービス [#oc7760be] -http://muumuu-domain.com/ --CNAMEの編集はできない。提携サイトに独自ドメインを振ることは可能 -[[無料ブログで独自ドメインを使いましょう>http://mydomain.jugem.jp/?eid=6]] -http://www.zonedit.com/ --無料DDNS.5つのドメインまで無料 -http://www.value-domain.com/ 格安ドメイン取得 *リゾルバ [#d9090a68] -DNSのクライアントのこと。フルサービス・リゾルバとスタブ・リゾルバがある。 -フルサービス・リゾルバ:再帰検索をして完全に名前解決ができる。 -スタブ・リゾルバ:フルサービス・リゾルバに要求して名前を受け取る。通常のPC -スタブ・リゾルバの機能だけを持っているDNSサーバをスレーブ・サーバと呼ぶ。 *マルチホーミングと逆引き設定 [#x00f3b76] -マルチホーミング(ISP側から引きこむ回線を複数ISPの回線に二重化する構成)の場合、送信元メールサーバのIPアドレスのPTRレコードは経由しうる接続先ISPごとのIPアドレスをすべて登録する必要がある。登録されていないISPを経由した電子メールを受信した受信側メールサーバが逆引きに失敗し「セキュリティ上問題あり」として受信拒否される可能性があるため *DNSのセキュリティ [#r4a49f80] -[[JPCERT/CC、DNSを不正に用いる手法に関する文書公開 | TECH+(テックプラス)>https://news.mynavi.jp/techplus/article/20230710-2722357/]] 2023.7 -DNSキャッシュポイズニング --脆弱性関連のページを参照 -DNS-Reflection=DNS amp攻撃=DNSリフレクタ攻撃 --DNSを使ったDDos攻撃の一種。送信元IPアドレスを偽装した名前解決要求を外部DNSサーバに送ることによってそのサーバを踏み台とし、攻撃対象の第三者サーバへ大量のDNSパケットを送り付ける。 --[[技術解説:「DNS Reflector Attacks(DNSリフレクター攻撃)」について>http://jprs.jp/tech/notice/2013-04-18-reflector-attacks.html]] 2013.4.18 --参考URL:http://web-tan.forum.impressrd.jp/e/2009/01/15/4414 --http://www.itmedia.co.jp/enterprise/articles/0612/11/news035.html ---512バイトを超えた場合のDNSサーバの挙動としては、TCPフォールバックかEDNS0のいずれかを取ることになるが、森氏によると、いずれの場合も通信に影響が生じる恐れがある。TCPフォールバックの場合は、EDNS0の場合と比べレスポンス低下が見られ、「やっぱりTCPの場合はそれなりにペナルティが大きい」(同氏)。一方EDNS0の場合、フラグメントされたパケットが送信される可能性があり、「パケットドロップ率が高い環境だと、とても悲しいことになる」という。 -DNSSEC --DNSのレスポンスに公開鍵によるデジタル署名をつけ、ゾーンデータの申請性、完全性を確保する仕組み。RFC4033,4034 -DNS over TLS(DoT) RFC7858 -DNS over HTTPS(DoH) --[[DNS over TLS/HTTPSについて考える | IIJ Engineers Blog>https://eng-blog.iij.ad.jp/archives/2954]] 2019 --DoT,DoH はクライアントとキャッシュDNSサーバの間を暗号化するもので、キャッシュサーバと権威サーバの間には使われない。 *公開DNS [#h8810ff0] -[[1.1.1.1 や 8.8.8.8 という IPアドレスのDNSサーバとは何か>http://tooljp.com/qa/1.1.1.1-DNS-D152.html]] 2018.10 --1.1.1.1 APNIC(Asia-Pacific Network Information Centre) が提供するDNSサーバ。クライアントのIPアドレスを記録しないこと、Google 提供DNSより高速と言われている。 --8.8.8.8 Google PublicDNS。Google が提供するDNSサーバ。高速。 -[[今はGoogle Public DNSが日本国内にあるらしい>http://www.geekpage.jp/blog/?id=2011/9/16/2]] 2011.9.16 --Googleは日本国内の多くのISPと直接接続しているので、Google Public DNSも多くのユーザの「お隣のASさん」という感じになっており、2年前よりもかなり高速化してると思います。 -[[Googleの無料パブリックDNSサービス「Google Public DNS」を使ってネットのアクセス速度を上昇させる方法>http://gigazine.net/index.php?/news/comments/20091204_google_public_dns/]] 2009.12.4 --http://code.google.com/intl/ja/speed/public-dns/ --[[Google Public DNSについて調べてみた>http://www.geekpage.jp/blog/?id=2009/12/4/1]] -http://opendns.com/ *DNS概要 [#v624740e] -DNS=Domain Name Serviceの略 -ポート53を使用する(UDP/TCPともに) --参考:[[DNSが使用するポート番号・nslookupコマンド | ネットワーク入門 Part? | 演習で学ぶネットワーク>https://net-skills.net/intro-menu2/dns-nslookup/]] -レスポンスのサイズが512byteを超えるとTCPで再送する。これをTCPフォールバックと呼ぶ **プロトコル [#n7c07aed] -DNSはアプリケーション層のプロトコルである -トランスフォーム層ではUDPとTCPの両方を使う。 -通常の名前解決にはUDPを使うが以下の場合はTCPを使う。 --1.名前解決でUDPのデータグラム長512byteに返信が入りきらない場合、共通ヘッダ内のTCビットが立ったデータが返信される。それをうけたリゾルバはTCPで接続しデータを受け取る。 --2.プライマリDNSからセカンダリDNSへゾーンファイルを転送する際にTCPを使用する。 **DNSパケット [#z269c89f] -[[DNSパケットフォーマットと、DNSパケットの作り方:DNS Tips(1/2 ページ) - @IT>https://atmarkit.itmedia.co.jp/ait/articles/1601/29/news014.html]] 2015 --&ref(DNSパケット.png); -共通ヘッダ内の制御ビット [#zc0c10e7] --TCビット:DNS返答メッセージが512byteを超えたときに1になる。その場合DNS返答メッセージは改めてTCPを使ってやりとりされる。これをDNSフォールバックという。 --RDビット:Recursion Desired. 1のとき再帰的問い合わせを行う。0ならば反復問い合わせを行う。