Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Networking 伪造DNS响应_Networking_Dns_Wifi_Wireshark_Scapy - Fatal编程技术网

Networking 伪造DNS响应

Networking 伪造DNS响应,networking,dns,wifi,wireshark,scapy,Networking,Dns,Wifi,Wireshark,Scapy,我使用scapy拦截DNS请求并伪造响应。拦截和伪造部件工作正常,伪造数据包的发送似乎正常(至少我可以看到指示sendp功能成功的点)。但是,在目标站我没有收到数据包——或者我在Wireshark上没有看到它 我不知道我的问题在哪里,但我猜它不在DNS/UDP部分(数据包在Wireshark中可见)。因此,它可能位于802.11或IP层 这是一个请求: 192.168.2.117 (a4:4e:31:5c:54:78) -> 194.2.0.50 (00:14:d1:ad:9f:88) D

我使用scapy拦截DNS请求并伪造响应。拦截和伪造部件工作正常,伪造数据包的发送似乎正常(至少我可以看到指示
sendp
功能成功的点)。但是,在目标站我没有收到数据包——或者我在Wireshark上没有看到它

我不知道我的问题在哪里,但我猜它不在DNS/UDP部分(数据包在Wireshark中可见)。因此,它可能位于802.11或IP层

这是一个请求:

192.168.2.117 (a4:4e:31:5c:54:78) -> 194.2.0.50 (00:14:d1:ad:9f:88)
DNS request for www.youtube.com.
###[ RadioTap dummy ]###
version   = 0
pad       = 0
len       = 38
present   = TSFT+Flags+Rate+Channel+dBm_AntSignal+b14+b29+Ext
notdecoded= ' \x08\x00\xa0 \x08\x00\x00\xc8+\xa3\x10\x00\x00\x00\x00\x10l\x9e\t\xc0\x00\xd5\x00\x00\x00\xcd\x00\xd4\x01'
###[ 802.11 ]###
 subtype   = 8L
 type      = Data
 proto     = 0L
 FCfield   = to-DS
 ID        = 11264
 addr1     = 00:14:d1:ad:9f:88
 addr2     = a4:4e:31:5c:54:78
 addr3     = 00:25:9c:9a:aa:b1
 SC        = 4272
 addr4     = None
###[ 802.11 QoS ]###
    TID       = 0L
    EOSP      = 0L
    Ack Policy= 0L
    Reserved  = 0L
    TXOP      = 0
###[ LLC ]###
       dsap      = 0xaa
       ssap      = 0xaa
       ctrl      = 3
###[ SNAP ]###
          OUI       = 0x0
          code      = 0x800
###[ IP ]###
             version   = 4L
             ihl       = 5L
             tos       = 0x0
             len       = 61
             id        = 213
             flags     = 
             frag      = 0L
             ttl       = 128
             proto     = udp
             chksum    = 0xb489
             src       = 192.168.2.117
             dst       = 194.2.0.50
             \options   \
###[ UDP ]###
                sport     = 50648
                dport     = domain
                len       = 41
                chksum    = 0x7b3c
###[ DNS ]###
                   id        = 64118
                   qr        = 0L
                   opcode    = QUERY
                   aa        = 0L
                   tc        = 0L
                   rd        = 1L
                   ra        = 0L
                   z         = 0L
                   rcode     = ok
                   qdcount   = 1
                   ancount   = 0
                   nscount   = 0
                   arcount   = 0
                   \qd        \
                    |###[ DNS Question Record ]###
                    |  qname     = 'www.youtube.com.'
                    |  qtype     = A
                    |  qclass    = IN
                   an        = None
                   ns        = None
                   ar        = None
###[ Padding ]###
                      load      = '\xb2\x17\xa3\x8a'
以及伪造的答复:

###[ RadioTap dummy ]###
version   = 0
pad       = 0
len       = 38
present   = TSFT+Flags+Rate+Channel+dBm_AntSignal+b14+b29+Ext
notdecoded= ' \x08\x00\xa0 \x08\x00\x00\xc8+\xa3\x10\x00\x00\x00\x00\x10l\x9e\t\xc0\x00\xd5\x00\x00\x00\xcd\x00\xd4\x01'
###[ 802.11 ]###
 subtype   = 8L
 type      = Data
 proto     = 0L
 FCfield   = from-DS
 ID        = 11264
 addr1     = a4:4e:31:5c:54:78
 addr2     = 00:14:d1:ad:9f:88
 addr3     = 00:25:9c:9a:aa:b1
 SC        = 14272
 addr4     = None
###[ 802.11 QoS ]###
    TID       = 0L
    EOSP      = 0L
    Ack Policy= 0L
    Reserved  = 0L
    TXOP      = 0
###[ LLC ]###
       dsap      = 0xaa
       ssap      = 0xaa
       ctrl      = 3
###[ SNAP ]###
          OUI       = 0x0
          code      = 0x800
###[ IP ]###
             version   = 4L
             ihl       = 5L
             tos       = 0x0
             len       = None
             id        = 213
             flags     = 
             frag      = 0L
             ttl       = 128
             proto     = udp
             chksum    = None
             src       = 194.2.0.50
             dst       = 192.168.2.117
             \options   \
###[ UDP ]###
                sport     = domain
                dport     = 50648
                len       = None
                chksum    = None
###[ DNS ]###
                   id        = 64118
                   qr        = 1L
                   opcode    = QUERY
                   aa        = 0L
                   tc        = 0L
                   rd        = 1L
                   ra        = 1L
                   z         = 0L
                   rcode     = ok
                   qdcount   = 1
                   ancount   = 1
                   nscount   = 0
                   arcount   = 0
                   \qd        \
                    |###[ DNS Question Record ]###
                    |  qname     = 'www.youtube.com.'
                    |  qtype     = A
                    |  qclass    = IN
                   \an        \
                    |###[ DNS Resource Record ]###
                    |  rrname    = 'www.youtube.com.'
                    |  type      = A
                    |  rclass    = IN
                    |  ttl       = 900
                    |  rdlen     = 4
                    |  rdata     = '192.168.2.100'
                   ns        = None
                   ar        = None
###[ Padding ]###
                      load      = '\xb2\x17\xa3\x8a'
我试图用一个有效的DNS响应进行检查,我看不出有任何差异可以解释我的问题。我试图修改
ID
SC
字段,但没有任何改变。
addr3
不会更改


您是否看到一个错误,解释了为什么目标没有收到它?

嗯,您的IP响应的长度是“无”。这在处理过程中并不顺利。:)这是显而易见的突出点。此外,即使添加了数据,顶部的总长度也不会改变

我不确定sport/dport=domain是什么意思;我假设那是53号端口


IP ID字段在查询/响应中通常应该不同,但这不会影响此处的结果

那么,您的IP响应的长度是“无”。这在处理过程中并不顺利。:)这是显而易见的突出点。此外,即使添加了数据,顶部的总长度也不会改变

我不确定sport/dport=domain是什么意思;我假设那是53号端口


IP ID字段在查询/响应中通常应该不同,但这不会影响此处的结果

你检查过窃听器上的东西了吗?您的问题可能是数据报不是通过内核堆栈发送的。您也可以使用最新的github版本重试,它在处理RadioTap标头方面有很多改进(您不会得到“notdecoded”部分)您是否检查了wiresharks在拦截机上看到的内容?您的问题可能是数据报不是通过内核堆栈发送的。您也可以使用最新的github版本重试,它有很多改进处理RadioTap头(您不会得到“notdecoded”部分)不不不,scapy在构建数据包时填充了很多None字段。如果他提供了
packet.show2()
(构建后的数据包)的结果会更好。关于顶部,你是对的。他可以将其设置为None,以便scaly处理它。不,scapy在构建数据包时会填充许多None字段。如果他提供了
packet.show2()
(构建后的数据包)的结果会更好。关于顶部,你是对的。他可以将其设置为“无”,以便scaly处理它