kno DNS 03 Tips - DNS Cookies

3 篇文章 0 订阅

kno DNS 03 Tips - DNS Cookies

DNS cookies (RFC7873)是一种针对DDoS拒绝服务和放大攻击的轻量级安全机制,其主要思路是是过在Query/Answer 包中增加 OPT RR,在Query第一次交互时,通过 DNS Client 请求中 EDNS cookie 来验证 DNS Client 的真实性。
DNS Server & Client 都需要支持 DNS Cookies 机制;
DNS Server & Client 支持双向认证Cookie ;
DNS Server 会定期维护一个密匙(Server Secret),该值用于生成 Cookie & 响应 OPT RR 给 DNS Client;

knot mod-cookies

mod-cookies:
  - id: STR
    secret-lifetime: TIME
    badcookie-slip: INT
    secret: STR|HEXSTR
	

示例

全局启用DNS Cookie & 使用默认参数;

template:
    - id: default
      global-module: mod-cookies # 全局启用

全局启用DNS Cookie & 30 小时更新一次密匙(Server Secret) & 每3个DNS请求响应一次 Cookie;

mod-cookies:
  - id: default
    secret-lifetime: 30h # 每30小时更新一次 Server Secret
    badcookie-slip: 3    # 每3个DNS请求响应一次 Cookie

template:
 - id: default
    global-module: mod-cookies/default # 全局启用

DNS Cookie使用固定密匙(Server Secret), 长度必须等于16字节或32个16进制字符;

mod-cookies:
    - id: default
      secret: 0xdeadbeefdeadbeefdeadbeefdeadbeef

dig 验证

cookie

dig www.cnddos.com @127.0.0.1

注:

  • dig 包含在 bind-utils 工具包, bind 版本需使用 9.11 以上版本才可以支持 DNS Cookies;
  • dig 默认启用 +badcookie, 接收到 OPT RR 后设置 EDNS cookie 重新发起 DNS Query;

通过 tcpdump 抓包可以看到实际发生了 2 次 DNS Query 交互:

  • 第一次Query 返回 OPT RR & Cookie;
  • 第二次Query 返回 A 记录;

在这里插入图片描述
在这里插入图片描述
Wireshark 详细展示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

nobadcookie

dig www.cnddos.com @127.0.0.1 +nobadcookie 

在这里插入图片描述

在这里插入图片描述

参考

https://www.knot-dns.cz/docs/2.7/html/modules.html
https://tools.ietf.org/html/rfc7873

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值