Dnsserver

被动信息收集之DNS爆破(二)

吃可爱长大的小学妹 提交于 2019-12-07 13:31:48
dns主要是得到主机记录,确定攻击面, 最常用的是dns字典爆破,大量的主机名会使用的字符串形成一个字典,用字典像dns发起暴力破解,尝试1万个的字典,就尝试1万次,dns有这个记录就会返回给ip地址,没有就拒绝,基于此,就可以把目标主机记录和子域记录给解析出来,爆破,需要字典,kail里掌握熟练一个就ok了。集成字典,使用一个命令调用专有的字典,工具是自带的字典尝试暴力破解。整个自己的字典。 dpkg -L fierce 显示相关的目录 找到字典有关 的 一个文件/usr/share/fierce/hosts.txt cat /usr/share/dnsenum/dns.txt |grep www 选择查看 find / -name dnsenum 在目录上逐级查(效率很低) 爆破工具使用:找一个顺手的,整合一个大字典,去做爆破 5)dnsrecon -d sina.com --lifetime(超时时间) 10 -t brt -D dnsbig.txt (暴力快,好用) 6)dnsrecon -t std -d sina.com (标准跟个字典,慢点) 2)dnsdict6 -d4 -t(指定线程数) 16 -x (什么级别的字典)sina.com(字典质量高)(自己安装,好使,不过工具列表里没了) dnsdict6 -h查看帮助 3)dnsenum -f dnsbig.txt

使用golang的net包进行域名解析过程分析

霸气de小男生 提交于 2019-11-29 08:54:30
背景: 在实际的互联网使用过程中,大家熟知的是使用域名来直接访问一个服务,但随着互联网业务架构的不断优化,可能对用用户来说访问一个域名获取到相关的资源是很简单的一步,但其实对于互联网整个请求过程其实是做了很多次调用,那最开始的一步就是dns解析。当然在linux环境下,用来做dns解析的工具有很多,比如 dig 和 nslookup 之类的,但是通常对于复杂问题的排查直接去机器上去很显然是不太现实的,因此打算使用golang的接口来封装域名解析服务,来提供后期的操作. 1. net包的使用 和dns相关结构体方法 # nameserver结构体 type NS struct { Host string } # srv记录 指定该域名由哪个DNS服务器来进行解析 type SRV struct { Target string Port uint16 Priority uint16 Weight uint16 } # dns正向解析(域名解析到cname或者实际的ip地址) ## 仅返回指定域名name的cname地址 func LookupCNAME(name string) (cname string, err error) ## 直接返回域名解析到地址. func LookupHost(host string) (addrs []string, err error) ##