开源情报搜集

信息搜集

整理自开源情报(OSINT)搜集技术详解

主要搜集内容:

  • 目标服务器真实IP、所属组织
  • 目标域名、子域名、DNS服务器
  • 目标外网架构(DMZ区和外网可以触碰到的,公开+非公开),技术栈、硬件设备
    • 邮件服务器:版本、地址
    • 门户端口、管理接口、cms版本、http方法、敏感文件
    • OA
    • 文件(内容)管理服务器
    • DNS服务器、出口路由
    • 其他C段服务器
  • 现实社会关系,人员构成
  1. Whois信息:可查找到目标的管理员联系人及其电子邮件地址、IP地址的历史信息、域名信息

    • 通过HaveIBeenPwned可以搜索邮箱地址是否在泄露的数据库中
    • 在线查询平台:
      • https://www.arin.net/
      • http://whois.domaintools.com/
    • 可用工具:
      • WhoisLookup
      • whois [Metasploit内置命令]

    whois(读作“Who is”,非缩写)是用来查询域名的IP以及所有者等信息的传输协议。简单说,whois就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商)。

  2. Google Hacking:搜索目标敏感文件、子域名

  • site:*.example.org ext:php | ext:txt | ext:log搜索指定站点的php、txt、log文件
    • 谷歌高级搜索
    • Exploit DB 的GoogleHacking语法模板
    • 留意incbaktxtsql文件
  1. LinkedIn资料(或其他人力资源资料):目标人员构成
  • 尝试找到非技术管理人员作为弱口令突破
    • 公司电子邮件地址格式
    • 员工用户名命名规则
    • 通过msf辅助搜索Email地址search_email_collector
  1. 检查IP地址
  • 反查是否托管多个域名
    • 服务器开放端口
    • 综合工具:端口检查、地理位置、路由路径
    • IP反查工具:IP反查、国内反查
    • http://dns.aizhan.com
    • http://s.tool.chinaz.com/same
    • 对IP的地理位置进行查询:除了shodan、fofa之外,MaxMind、国内纯真数据库、IPIP、Ip Geolocation API、
    • IP相关信息:https://www.ipip.net/ip.html
  • Bypass CDN:
    • 利用目标的邮件功能:邮件订阅、反馈、注册认证等,查看邮件服务器源IP(QQ邮箱中“显示邮件原文”即可)

    • XSS盲打、命令执行、SSRF

    • 子域名:https://x.threatbook.cn/、https://dnsdb.io/zh-cn/

    • 尝试使用国外地址访问站点:https://asm.ca.com/en/ping.php(类似于多地PING)

    • 查询历史DNS解析记录:https://dnsdb.io/zh-cn/、https://x.threatbook.cn/、http://toolbar.netcraft.com/site_report?url=

    • 查询CDN提供商相关信息:https://tools.ipip.net/cdn.php

    • 网络空间引擎信息:按照title、body等特征,尝试在其数据库中搜索历史信息,可能会包含真是IP。

      • 请求无头域名,比如目标是www.xxx.com,可以尝试请求xxx.com
    • https://github.com/vincentcox/bypass-firewalls-by-DNS-history

    • 查看泄露的敏感文件中是否存在真实地址

    • 诡异的方法:https://github.com/Ridter/get_ip_by_ico/blob/master/get_ip_by_ico.py

    • 利用证书信息:

      https://crt.sh

      
      # -*- coding: utf-8 -*-
      # @Time    : 2019-10-08 22:51
      # @Author  : Patrilic
      # @FileName: SSL_subdomain.py
      # @Software: PyCharm
      
      import requests
      import re
      
      TIME_OUT = 60
      def get_SSL(domain):
          domains = []
          url = 'https://crt.sh/?q=%25.{}'.format(domain)
          response = requests.get(url,timeout=TIME_OUT)
          # print(response.text)
          ssl = re.findall("(.*?).{}".format(domain),response.text)
          for i in ssl:
              i += '.' + domain
              domains.append(i)
          print(domains)
      
      if __name__ == '__main__':
       get_SSL("baidu.com")
      
    • 正面上了管理员,拿到CDN账号,直接查看配置信息。

  1. DNS相关:子域名
  • 在线查询:DNSdumpster、virustotal、SecutiyuTrails、云溪资产、https://viewdns.info/

  • 历史DNS查询:

    • https://dnsdb.io/zh-cn/
    • https://x.threatbook.cn/
    • http://toolbar.netcraft.com/site_report?url=
  • nslookup查询

    • 输入nslookup进入命令行
    • 设置查询类型set type=XX
      • A为对IP地址进行解析,显示域名解析的地址
      • MX为查找其邮件转发服务器
    • 使用ls -d domain.com来测试域传送漏洞
  • dig命令可以指定使用特定的域名解析服务器进行查询,同时会触发解析服务器向官方权威DNS服务器进行一次递归查询,以获得权威解答

  • 域传送漏洞测试:

    • 使用digdig @指定的DNS服务器 -t axfr 域名
    • 使用nslookup:在输入server DNS服务器后,使用ls -d 域名测试
  • 子域名枚举:

    https://github.com/lijiejie/subDomainsBrute  lijiejie
    https://github.com/ring04h/wydomain zhuzhuxia
    
  • 网络上的查询接口:

    http://api.hackertarget.com/reversedns/?q=youku.com
    https://crt.sh/?q=%25baidu.com
    http://i.links.cn/subdomain/baidu.com.html
    
  • 集成化工具:OneForAll、aquatone(子域名爆破、常见端口扫描、互联网API、搜集HTTP响应)、fierce、dnsrecon

  • OneForALL + ESD(Enumeration sub domains(枚举子域名),一个py脚本) + JSfinder

  • 爆破工具:subbrute、 gobuster、gobuster

    域名泛解析:在域名前添加任何子域名,均可访问到所指向的WEB地址。也就是客户的域名#.com之下所设的*.#.com全部。

  1. 检查HTTP响应头、状态码:尝试构建异常、细微错误的报头
  2. 在线对网站服务进行查询:Netcraft、https://builtwith.com/
  3. 通过网络扫描器搜索目标域名,查看相关信息
    • Shodan
    • Censys
    • FOFA
  4. 搜过Github中的敏感内容:Gitrob
  5. 页面历史相关:
  • 在线查询网站历史页面
  • 网站历史信息数据库,要自己写程序调用API
  • Wayback Machine,go get github.com/tomnomnom/waybackurls waybackurls icann.org
  1. SSL/TLS证书信息域名、子域名、电子邮件、所属机构

    • 利用CT日志查找子域名脚本
    • 批量扫描地址段的SSL证书中的域名脚本
    • 查看网站SSL/TLS信息:SSLyzeTestSSLSSLScan
  2. 子域名枚举的艺术

  3. Rapid7 数据库:

    • DNS(正向、反向)
    • HTTP(s) 响应
    • SSL证书
    • 各类扫描
  4. 自动化工具:

    Maltego:一个交互式数据挖掘工具

  5. 摄像头:http://www.opentopia.com/


Google & Github 关键词

Google

后台地址

site:xxx.xxx 管理后台/登陆/管理员/系统

site:xxx.xxx inurl:login/admin/system/guanli/denglu

敏感文件

site:xxx.xxx filetype:pdf/doc/xls/txt

site:xxx.xxx filetype:log/sql/conf

测试环境

site:xxx.xxx inurl:test/ceshi

site:xxx.xxx intitle:测试

邮箱/QQ/群

site:xxx.xxx 邮件/email

site:xxx.xxx qq/群/企鹅/腾讯

其他

site:xxx.xxx inurl:api

site:xxx.xxx inurl:uid=/id=

site:xxx.xxx intitle:index of

Github

搜索特殊关键词

@xxx.com password/secret/credentials/token

@xxx.com config/key/pass/login/ftp/pwd

搜索连接凭证

@xxx.com security_credentials/connetionstring

@xxx.com JDBC/ssh2_auth_password/send_keys

工具

https://github.com/FeeiCN/GSIL

企业级敏感信息泄露监控,国人项目。

https://github.com/az0ne/Github_Nuggests

自动爬取GitHub,提取邮箱密码自动尝试登陆

https://github.com/laramies/theHarvester

国外项目,自动化开源情报搜集

你可能感兴趣的:(开源情报搜集)