#acl Known:read,write All:read = DNS/FCP = DNSSECだけに目を向けているのでは危ない。 [[/JPRS]] == Fragmentation Considered Poisonous == <> <> Fragmentation Considered Poisonous: Amir Herzberg and Haya Shulman を検討する。[[/考察]] -- ToshinoriMaeno <> https://u.cs.biu.ac.il/~herzbea/security/13-03-frag.pdf https://ieeexplore.ieee.org/document/6682711 FreeBSD : [[/net.inet.ip.random_id]] Arnir Herzber,Haya Shulman: 2013 IEEE Conference on Communications and Network Security (CNS) Fragmentation Considered Poisonous, or: one-domain-to-rule-them-all\.org https://www.researchgate.net/profile/Amir_Herzberg/publication/253954678_Fragmentation_Considered_Poisonous_or_One-domain-to-rule-them-allorg/links/56b1b53808aed7ba3feb7782/Fragmentation-Considered-Poisonous-or-One-domain-to-rule-them-allorg.pdf … The maximum safe UDP payload is 508 bytes. [[/UDPpayload]] https://stackoverflow.com/questions/1098897/what-is-the-largest-safe-udp-packet-size-on-the-internet 「第一フラグメント便乗攻撃」という呼び方は攻撃手法の一部しか示していない。 重要なのは返答パケットを分割送信させる部分だろうと思う。 分割させられれば、偽返答とすり替えることは簡単だから。 (防御としては、分割されたパケットは捨てるのが有効だ。) 13:30 - 2019年2月25日 第一フラグメント便乗攻撃(アイコラ攻撃)こやね (@xkoyane) http://www.convivial.ne.jp/dns/extra2019/aikora.pdf 部分差し替えができただけでは十分ではない。よくまとまっているスライドだ。 == なぜ == 2018年になって、偽サーバー証明書が取得できたという発表があった。([[/Brandt_abstract]] 公開) https://dl.acm.org/citation.cfm?id=3243790 [[/haya-abstract]] https://ieeexplore.ieee.org/document/8416351 原論文(2013) 見直しにより、脆弱な実装が複数あることが指摘された。(tss_ontap)  Unboundは修正ずみ、PowerDNS recursorは次の版で対応する。 == 手がかり == https://twitter.com/OrangeMorishita/status/1039451291934646274 PowerDNS Blog September 10, 2018 Spoofing DNS with fragments https://blog.powerdns.com/2018/09/10/spoofing-dns-with-fragments/ https://www.theregister.co.uk/2018/09/06/certificate_authority_dns_validation/ https://ds9a.nl/tmp/powerdns-xs4all-presentatie.pdf https://lists.dns-oarc.net/pipermail/dns-operations/2018-September/017959.html https://lists.dns-oarc.net/pipermail/dns-operations/2018-September/017950.html {{{ it being communicated clearly and widely as early as 2008 }}} [[/Let's_Encrypt]] の対応もあった。 [[/Path_MTU_Discovery]] [[/IPv4]] [[/フラグメント処理]] [[/kresd]] https://www.slideshare.net/MenandMice/dns-fragmentationattacks-slides フラグメント・ストーム警報: https://twitter.com/takasugi_mbsjk/status/1064349010041815040 https://twitter.com/takasugi_mbsjk/status/1064202022197424132 DNS message fragments draft-muks-dns-message-fragments-00 https://tools.ietf.org/id/draft-muks-dns-message-fragments-00.html == 2013 == [[/毒の例]] [[/Let's_Encrypt]] dns-operations [[/2013]] dns-operations ML: [[/haya]] https://lists.dns-oarc.net/pipermail/dns-operations/2013-September/010681.html DNSSEC mistake: In retrospect, not signing delegations and glue was a huge mistake. https://lists.dns-oarc.net/pipermail/dns-operations/2013-September/010678.html ---- Fragmentation Considered Poisonous: Amir Herzberg and Haya Shulman https://arxiv.org/pdf/1205.4011.pdf [[/abstract]] (Submitted on 17 May 2012)   https://www.ietf.org/proceedings/87/slides/slides-87-saag-3.pdf https://tools.ietf.org/id/draft-muks-dns-message-fragments-00.xml DNSSEC, the time has come! https://www.ietf.org/proceedings/87/slides/slides-87-saag-3.pdf 関連: IP Fragmentation Considered Fragile  R. Bonica https://tools.ietf.org/id/draft-ietf-intarea-frag-fragile-00.html https://tools.ietf.org/id/draft-ietf-intarea-frag-fragile-02.xml J. Heffner IPv4 Reassembly Errors at High Data Rates July 2007 https://tools.ietf.org/html/rfc4963 [[/mueller]] == [dns-operations] == [[/2018]] にも。 DNS Attack over UDP fragmentation Ondřej Surý ondrej.sury at nic.cz Wed Sep 4 13:08:55 UTC 2013 https://lists.dns-oarc.net/pipermail/dns-operations/2013-September/010627.html Haya Shulman haya.shulman at gmail.com Fri Sep 6 01:02:59 UTC 2013 https://lists.dns-oarc.net/pipermail/dns-operations/2013-September/010681.html Aaron Campbell July 2007 https://lists.dns-oarc.net/pipermail/dns-operations/2013-September/010679.html http://www.hpl.hp.com/techreports/Compaq-DEC/WRL-87-3.pdf {{{ Fragmentation Considered Harmful Christopher A. Kent Jeffrey C. Mogul December, 1987 }}} d i g i t a l Western Research Laboratory [[/長大返答]]   [[/BIND]] [[/root-dnskey]] [[/edns_size]] https://lists.dns-oarc.net/pipermail/dns-operations/2013-September/010719.html On Tue, Sep 10, 2013 at 07:14:04PM +0300, Haya Shulman wrote a message of 187 lines which said: {{{ > > the trouble with randomizing the IPID is that this would require > > kernel-level patches (as opposed to just DNS server software > > upgrade), I believe. This makes it somewhat harder to deploy. }}} https://lists.dns-oarc.net/pipermail/dns-operations/2013-September/010659.html DNSSECで解決できるのに、というPaulの意見; DNSSECにどれほどの費用をかければということは考察したのか。 -- ToshinoriMaeno <> http://www.circleid.com/posts/20130913_on_the_time_value_of_security_features_in_dns/ ---- この論文に気づかなかった。(検証、追認の論文が見当たらない)  原文に注釈をつけながら、読むことにする。 最近では、以下の記事があった。[[DNS/Bert]] September 10, 2018 Spoofing DNS with fragments https://blog.powerdns.com/2018/09/10/spoofing-dns-with-fragments/ -- ToshinoriMaeno <> == 対策 == [[/対策]] [[/Let's_Encrypt]]はフラグメント化を避ける。(2018) [[/ifconfig]] ---- 2012年頃か2013年か。最初の論文 https://ieeexplore.ieee.org/document/6682711 port random化により、DNS返答のエントロビーが少し大きくなったので、こちらの攻撃の方が成功しやすいと言える。 https://www.researchgate.net/profile/Amir_Herzberg/publication/253954678_Fragmentation_Considered_Poisonous_or_One-domain-to-rule-them-allorg/links/56b1b53808aed7ba3feb7782/Fragmentation-Considered-Poisonous-or-One-domain-to-rule-them-allorg.pdf 当初は長い返答の場合に危ない。(だからDNSSECを使うように、と言っていた)  Fragmentation の置換を狙う攻撃:長い返事にはDNSSEC関係レコードが有効 だが、DNSSECを使うと返答が長くなって、セグメント化が当たり前になる。(??)  そして、NSEC3が危ないという話に進化している。(マッチポンプのような気もするが。) NSEC3が防御の妨げになるということのようだ。否定的返答に現れる。 [[/nic.cz]]  DNSSEC採用でも、肯定的返答は短いことが多い。(と、主張も変化) 第2フラグメント以降に含まれるレコードをNSレコードで置換えてしまう攻撃が可能となる。  それを受け入れるのはリゾルバー側の問題だと考えるが。-- ToshinoriMaeno <> delegation返答が返るケース(DNSSECは関係しない?)、親子同居の場合はどうか。 [[/tss_test]] IP Fragmentation Attack https://www.incapsula.com/ddos/attack-glossary/ip-fragmentation-attack-teardrop.html <> https://blog.powerdns.com/2018/09/10/spoofing-dns-with-fragments/ IP fragmentation attack on DNS https://ripe67.ripe.net/presentations/240-ipfragattack.pdf https://jprs.jp/related-info/event/2013/0910IETF.html == DNS返答を分割させないために == [[/Let's_Encrypt]] Unbound conf edns-buffer-size: 512 にしている。 EDNS sizeを 1220 に制限する。超えるならTCPで再問合せさせる。 BIND9 options { edns-udp-size 1220; }; MTUを小さくさせる攻撃も存在するので、EDNS size 512 ! にするのが安全とか言うひともいる。  これを超える大きさの返答はTC onを返して、TCP queryしなおしてもらうというものです。 そんな心配をするなら、当初からTCPだけを使うのがよさそう。-- ToshinoriMaeno <> 共用リゾルバーが送ってくるqueryのEDNSサイズがいくらになっているか、調べてみたい。 pythonサーバーでやれるか。 -- ToshinoriMaeno <> Broken packets: IP fragmentation is flawed 18 Aug 2017 by Marek Majkowski. https://blog.cloudflare.com/ip-fragmentation-is-broken/ ICMP blackhole check http://icmpcheck.popcount.org/