当前位置: 首页 > news >正文

微站直播平台太原网站建设公司排名

微站直播平台,太原网站建设公司排名,discuz做资讯网站,犀浦网站建设一#xff1a;DNS协议 DNS#xff08;Domain Name System#xff09;协议是计算机网络中的一种基础协议#xff0c;它用于将域名#xff08;如www.baidu.com#xff09;转换为IP地址#xff08;如192.168.0.1#xff09;#xff0c;从而实现计算机之间的通信。 DNS 分…一DNS协议 DNSDomain Name System协议是计算机网络中的一种基础协议它用于将域名如www.baidu.com转换为IP地址如192.168.0.1从而实现计算机之间的通信。 DNS 分为查询请求和查询响应请求和响应的报文结构基本相同。DNS 报文格式如图所示 上图中显示了 DNS 的报文格式。其中事务 ID、标志、问题计数、回答资源记录数、权威名称服务器计数、附加资源记录数这 6 个字段是DNS的报文首部共 12 个字节。         整个 DNS 格式主要分为 3 部分内容即基础结构部分、问题部分、资源记录部分。下面将详细地介绍每部分的内容及含义。 基础结构部分 DNS 报文的基础结构部分指的是报文首部如图所示。   该部分中每个字段含义如下。 事务 IDDNS 报文的 ID 标识。对于请求报文和其对应的应答报文该字段的值是相同的。通过它可以区分 DNS 应答报文是对哪个请求进行响应的。标志DNS 报文中的标志字段。问题计数DNS 查询请求的数目。回答资源记录数DNS 响应的数目。权威名称服务器计数权威名称服务器的数目。附加资源记录数额外的记录数目权威名称服务器对应 IP 地址的数目。 基础结构部分中的标志字段又分为若干个字段如图所示。   标志字段中每个字段的含义如下 QRResponse查询请求/响应的标志信息。查询请求时值为 0响应时值为 1。Opcode操作码。其中0 表示标准查询1 表示反向查询2 表示服务器状态请求。AAAuthoritative授权应答该字段在响应报文中有效。值为 1 时表示名称服务器是权威服务器值为 0 时表示不是权威服务器。TCTruncated表示是否被截断。值为 1 时表示响应已超过 512 字节并已被截断只返回前 512 个字节。RDRecursion Desired期望递归。该字段能在一个查询中设置并在响应中返回。该标志告诉名称服务器必须处理这个查询这种方式被称为一个递归查询。如果该位为 0且被请求的名称服务器没有一个授权回答它将返回一个能解答该查询的其他名称服务器列表。这种方式被称为迭代查询。RARecursion Available可用递归。该字段只出现在响应报文中。当值为 1 时表示服务器支持递归查询。Z保留字段在所有的请求和应答报文中它的值必须为 0。rcodeReply code返回码字段表示响应的差错状态。当值为 0 时表示没有错误当值为 1 时表示报文格式错误Format error服务器不能理解请求的报文当值为 2 时表示域名服务器失败Server failure因为服务器的原因导致没办法处理这个请求当值为 3 时表示名字错误Name Error只有对授权域名解析服务器有意义指出解析的域名不存在当值为 4 时表示查询类型不支持Not Implemented即域名服务器不支持查询类型当值为 5 时表示拒绝Refused一般是服务器由于设置的策略拒绝给出应答如服务器不希望对某些请求者给出应答。 问题部分 问题部分指的是报文格式中查询问题区域Queries部分。该部分是用来显示 DNS 查询请求的问题通常只有一个问题。该部分包含正在进行的查询信息包含查询名被查询主机名字、查询类型、查询类。 问题部分格式如图所示。   该部分中每个字段含义如下 查询名一般为要查询的域名有时也会是 IP 地址用于反向查询。查询类型DNS 查询请求的资源类型。通常查询类型为 A 类型表示由域名获取对应的 IP 地址。查询类地址类型通常为互联网地址值为 1。 资源记录部分 资源记录部分是指 DNS 报文格式中的最后三个字段包括回答问题区域字段、权威名称服务器区域字段、附加信息区域字段。这三个字段均采用一种称为资源记录的格式格式如图所示。   资源记录格式中每个字段含义如下 域名DNS 请求的域名。类型资源记录的类型与问题部分中的查询类型值是一样的。类地址类型与问题部分中的查询类值是一样的。生存时间以秒为单位表示资源记录的生命周期一般用于当地址解析程序取出资源记录后决定保存及使用缓存数据的时间。它同时也可以表明该资源记录的稳定程度稳定的信息会被分配一个很大的值。资源数据长度资源数据的长度。资源数据表示按查询段要求返回的相关资源记录的数据。 资源记录部分只有在 DNS 响应包中才会出现。下面通过 DNS 响应包来进一步了解资源记录部分的字段信息。 二构造DNS报文 scapy具有强大的报文构造能力和修改能力我们一般定制化DNS报文都是修改DNS请求里的域名和响应里的IP地址。最方便的方法就是基于一个现有的DNS请求和响应报文去修改我们目标字段。 我们可以先看看scapy解析dns的能力 scapy解析请求和响应 ###[ DNS ]### id 49586qr 1opcode QUERYaa 0tc 0rd 1ra 1z 0ad 0cd 0rcode okqdcount 1ancount 23nscount 2arcount 0\qd \|###[ DNS Question Record ]### | qname upload-z1.qbox.me.| qtype A| qclass IN\an \|###[ DNS Resource Record ]### | rrname upload-z1.qbox.me.| type CNAME| rclass IN| ttl 516| rdlen None| rdata upload-z1.clouddn.com.|###[ DNS Resource Record ]### | rrname upload-z1.clouddn.com.| type CNAME| rclass IN| ttl 80| rdlen None| rdata upload-z1-oss.clouddn.com.|###[ DNS Resource Record ]### | rrname upload-z1-oss.clouddn.com.| type CNAME| rclass IN| ttl 54| rdlen None| rdata bc-gate-up.qiniu.com.|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.121|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.33|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.13.229.82|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.13.229.81|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.13.229.68|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.13.229.74|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.20|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.13.229.73|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.19|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.122|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.23|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.21|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.13.229.78|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.123|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.18|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.22|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.13.229.75|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.13.229.80|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.25|###[ DNS Resource Record ]### | rrname bc-gate-up.qiniu.com.| type A| rclass IN| ttl 104| rdlen None| rdata 111.31.48.24\ns \|###[ DNS Resource Record ]### | rrname qiniu.com.| type NS| rclass IN| ttl 78188| rdlen None| rdata ns3.dnsv5.com.|###[ DNS Resource Record ]### | rrname qiniu.com.| type NS| rclass IN| ttl 78188| rdlen None| rdata ns4.dnsv5.com.ar None[Finished in 2.3s] 可以看到scapy具备完整的DNS解析能力那我们的目标就是利用scapy的解析能力去修改我们的目标字段另外修改目标字段后报文的各种校验和也需要重新计算。 下面给出完整的构造DNS报文的代码 def dnsPcapProc(self):savefile dns_ datetime.now().strftime(%H%M%S) .pcapsrcpcap rdpcap(self.dnsPcapFilePath)srcpcap[1][DNS].show2()oriDomainLen len(srcpcap[0][DNS].fields[qd].fields[qname])diff len(self.dnsDomainInputEntry)1 - oriDomainLenoriIPLen srcpcap[0][IP].lenoriUDPLen srcpcap[0][UDP].lensrcpcap[0][IP].len oriIPLen diffsrcpcap[0][UDP].len oriUDPLen diffsrcpcap[0][DNS].fields[qd].fields[qname] self.dnsDomainInputEntry.encode(utf-8)try:del srcpcap[0][IP].lendel srcpcap[0][IP].chksumexcept:srcpcap[0][DNS].fields[qd].fields[qtype] 28del srcpcap[0][IPv6].plendel srcpcap[0][IPv6].chksumflg 6del srcpcap[0][UDP].lendel srcpcap[0][UDP].chksumsrcpcap[0][IP].len oriIPLen diffsrcpcap[0][UDP].len oriUDPLen diffip_list list()ip_list.append(self.dnsIPInputEntry)srcpcap[1][UDP].payload.ancount len(ip_list)srcpcap[1][UDP].payload.qd.qname self.dnsDomainInputEntry.encode(utf-8)dns_anser_as_ord []for ip in ip_list:ipstr,flg self.ipstr_trans2_hexlist(ip)if flg 4:dns_anser_as_ord [0xc0, 0x0c, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x1c, 0x20, 0x00, 0x04]else:dns_anser_as_ord [0xc0, 0x0c, 0x00, 0x1c, 0x00, 0x01, 0x00, 0x00, 0x1c, 0x20, 0x00, 0x10]dns_anser_as_ord ipstrhexByteOri .join([%02x % c for c in dns_anser_as_ord]).encode(utf-8)hexByte binascii.a2b_hex(hexByteOri)srcpcap[1][UDP].payload.an hexBytetry:del srcpcap[1][IP].lendel srcpcap[1][IP].chksumexcept:del srcpcap[1][IPv6].plendel srcpcap[1][IPv6].chksumdel srcpcap[1][UDP].lendel srcpcap[1][UDP].chksum#srcpcap[0].show2()#wrpcap(savefile, srcpcap)pktdump PcapWriter(savefile, appendTrue, syncTrue)ether_layer srcpcap[0][Ether]newpcap Ether(srcether_layer.src, dstether_layer.dst) / srcpcap[0].getlayer(IP)newpcap2 Ether(srcether_layer.dst, dstether_layer.src) / srcpcap[1].getlayer(IP)pktdump.write(newpcap)pktdump.write(newpcap2)
http://www.hkea.cn/news/14371286/

相关文章:

  • 淘宝联盟怎么做自已的网站北京昌平网站设计
  • 襄阳住房和城乡建设局网站首页深圳网站建设首选上榜网络
  • drupal 网站建设网站模版购买
  • 云南网站建设公司排行网站开发有哪些常用工具
  • 正规网站开发流程学校网站建设先进事迹
  • 校体育网站建设的好处桂林生活网招聘信息网
  • 中国水电建设集团网站重庆有什么好玩的
  • 做网站一般有什么题目微信公众号如何做网站
  • 爱心互助网站开发网站备案号注销查询系统
  • 打折网站运营思路wordpress 付费下载
  • 网站建设需要注意哪些关键细节5g空间大吗企业网站
  • 官方网站建设意义网站开发指什么
  • 基于wordpress的网站网站建设用电脑
  • 杨凌开发建设局网站全国水利建设市场信用信息平台门户网站
  • 设计素材网站名称搭建域名服务器
  • 郑州企业网站建设费用商贸公司名字推荐
  • 400电话 网站建设万州那家做网站
  • 优猫券网站怎么做个人备案的网站可以做淘宝客吗
  • 网站建设排名软件做网站企业经营范围
  • 网页设计免费网站推荐东莞石龙网站建设莞网站制作
  • 迅速提高网站排名株洲做网站的
  • 网站首页模板管理百度指数排行榜哪里看
  • 长春建站费用万维网站域名
  • 门户网站建设好如何维护软件定制开发系统
  • 顺义的网站建设公司seo短视频网页入口营销
  • 山东省建设公司网站惠州做网站的公司有哪些
  • 织梦网站漏洞三个字的公司名称大气
  • 网站建设评选打分网络品牌营销推广
  • 陕西企业营销型网站建设宝塔网站搭建教程
  • 网站换新域名装修设计网站排行