Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- import logging
- logging.getLogger("scapy.runtime").setLevel(logging.ERROR)
- from scapy.all import *
- import random, threading
- def gen_ip():
- try:
- while True:
- yield ".".join([str(random.randint(0,255)) for i in range(4)])
- except KeyboardInterrupt:
- exit()
- def check_answer_len(ip):
- packetlen = len(IP(dst=ip)/UDP(dport=53)/DNS(rd=1,qd=DNSQR(qname="mibbit.com", qtype="ALL")))
- answer = sr1(IP(dst=ip)/UDP(dport=53)/DNS(rd=1,qd=DNSQR(qname="mibbit.com", qtype="ALL")),verbose=0, timeout=1)#Mibbit gives good gainz
- try:
- print("Sent packet of size: "+str(packetlen))
- print(str(ip)+" returned reply of length: "+str(len(answer)))
- print("Size increased by "+str(100*(float(len(answer))/float(packetlen)-100))+"%")
- with open("./dnsips","a") as f:
- if len(answer) > packetlen:
- try:
- f.write(ip+"\t"+str(packetlen)+"->"+str(len(answer))+"\n")
- except:
- print("erro writn")
- return
- except Exception as e:
- print(str(e))
- def server_scan():
- for ip in gen_ip():
- try:
- print(ip)
- resp = sr1(IP(dst=ip)/UDP(dport=53)/DNS(qd=DNSQR(qname="google.com", qtype="A")),timeout=1,verbose=0)
- if not resp:
- continue
- check_answer_len(ip)
- except Exception as e:
- print("Exception: "+str(e))
- break
- for i in range(50):
- try:
- threading.Thread(target=server_scan).start()
- except:
- exit()
- server_scan()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement