1.信息收集(更新中)1.1信息收集概述1.1.1信息收集的基本要求1.全面:对目标所有的业务和非业务存在点进行全面的信息收集。
2.准确:对收集到的信息尤其是重要信息要再三确认其信息的准确性。
3.失效:注意信息产生时间和手机时间,是否具有时间差,时间差能否接受。
4.清晰:对于收集到的信息要做到逻辑清晰,能清楚分辨出各个收集到的信息之间的逻辑关系和资产之间的相对位置。
5.拓步:以信息起点由点到面。
1.1.2.信息搜集注意点信息搜集底层逻辑: 通过各种渠道对已公开或未公开的信息进行搜集,尽可能搜集薄弱点。
注意事项:1.降低被发现度,提高隐蔽性。2.细心,耐心。
1.1.3收集目标服务器ip域名操作系统web容器 tomcat端口协议 http httpscdn 多地(国外)ping 查历史域名解析记录https://www.ip138.com/ 主站 流量⼤ 有cdn ⼦域名的站 流量⼩,没有cdn https 证书
⽤的什么语⾔ login.php index.jsp index.asp thinkphp框架 tp cms数据库 不是绝对: php——>mysql 开发难度低 中⼩公司 mysql免费 jsp——>oracle/mysql oracle 收费⽽且很贵 流量⼤的⼤型公司 asp——>sqlserver 微软⾃家的 (sqlserver堆叠注入+xpcmdshell)负载均衡waf代码泄露:扫目录扫到备份文件微信⼩程序信任域名界面上的js:看调用路径,有的不是调用的本地,调用的其他域名可能也是资产接口
1.1.4信息收集分类信息搜集主要分为两类:1.被动信息搜集2.主动信息搜集
1.2.信息收集流程1.3.信息收集工具编写示例1.子域名爆破
import requestsfrom bs4 import BeautifulSoupimport time#用户输入域名domain = input("请输入域名:")for i in range(48): # i = i*10 #代理头 heads={ 'User-Agent': 'Mozilla/5.0(Windows NT 6.1; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0' } url='https://cn.bing.com/search? q=site%3A'+domain+'&qs=n&form=QBRE&sp=-1&pq=site%3Adgjy.net&sc=2- 11&sk=&cvid=C1A7FC61462345B1A71F431E60467C43&toHttps=1&redig=3FEC4F2BE86247E8AE3BB965A6 2CD454&pn=2&first={}&FROM=PERE'.format(i) html=requests.get(url,headers=heads) soup=BeautifulSoup(html.content,'html.parser') job_bt = soup.findAll('h2') for i in job_bt: time.sleep(3) print(i.a.get('href'))
2.fofa查询
# -*- coding: utf-8 -*- import fofa if __name__ == "__main__": email, key = ('904945036@qq.com','b4b5d6d0c4afae6a9cb82939f03b10b4') #输⼊email和key client = fofa.Client(email, key) #将email和key传⼊fofa.Client类进⾏初始化和验证,并得到⼀个fofa client对象 query_str = raw_input('请输⼊条件') print(query_str) for page in range(1,51): #从第1⻚查到第50⻚ data = client.get_data(query_str,page=page,fields="ip,port") #查询第page⻚数据的ip和端⼝ for ip,port in data["results"]: print "%s,%s"%(ip,port) #打印出每条数据的ip和端⼝```
2.被动信息收集2.1基本流程
第三⽅的信息收集机构或平台已经收集到⽬标的信息
第三⽅的信息收集机构或平台将信息存储在某处
攻击者从存储信息的地⽅查询信息
攻击者得到相应信息
2.2被动信息收集优缺点1.优点: 1.隐蔽性高,不容易被发现 2.收集的信息量和覆盖面比较大2.缺点 1.收集到的信息准确性与时效性不高 2.无法收集到敏感或未公开信息
应用场景:通过被动信息收集获取目标基本要素,根据信息要素判断目标特点与薄弱点
2.3 常见手段1.Google语法https://www.google.com常用google语法:
site: 指定站点的内容(域名)例如site:edu.cn site:qq.comfiletype:搜索指定的文件类型(log,txt,rar,bak,pdf,xls,dat) 例如 filetype:pdfinurl: 搜索url中有指定内容的网页 例如 url:uploads 文件上传intitle: 网页标题中含有关键字例如 intitle:泛微intext:网页中正文含有关键字例如 intext:用户名/密码/登录cache:已经删除的缓存网页,可能有信息
Google语法查询对应漏洞databasehttps://www.exploit-db.com/google-hacking-database
2.网络空间搜索引擎语法及基本使用常用推荐
fofa: https://fofa.info/鹰图: https://hunter.qianxin.com/zoomeye: https://www.zoomeye.org/360 quake https://quake.360.net/quake/#/indexcensys: https://search.censys.io/shodan: https://www.shodan.io/onyphe: https://www.onyphe.io/
fofa为例fofa常用:
title="abc" 标题中存在abc的站点header="abc" http头中存在abc的站点body="abc" html正文中存在abc的站点domain="qq.com"搜索根域名带有qq.com的站点host="login" 从url中搜索域名带有logih的站点port="443" 查找对应443端口的资产ip="1.1.1.1" 从ip搜索包含1.1.1.1的网站,搜索要用ip作为名称protocol="https" 搜索指定协议类型city="Hangzhou" 搜索指定城市的资产region="Zhejiang"搜索行政区的资产country="CN" 搜索指定国家(编码的资产)cert="baidu" 搜索证书中包含baidu的资产ip_country="Hangzhou" 搜索指定城市ip的资产
高级搜索
使用 () && || !=
推荐使用工具 fofa_view项目地址:https://github.com/wgpsec/fofa_viewer配置相关信息后即可使用
3.企业信息收集国内:天眼查https://www.tianyancha.com/爱企查https://aiqicha.baidu.com/小蓝本https://www.xiaolanben.com/企查查https://www.qcc.com/启信宝https://www.qixin.com/
国外OpenCorporateshttps://opencorporates.com/Wayback Machinehttp://web.archive.org/
零零信安:https://0.zone/
3.主动信息收集3.1.主动信息收集的基本结构基本流程:
由攻击者主动发起⾏为或请求
⽬标受到⾏为或请求影响并发出反馈
攻击者获得反馈并判断特征
3.2.主动信息收集的特点主动信息收集的优缺点: 优点: 1.信息的针对性强 2.信息的准确度和时效性⾼ 3.能收集到未公开的敏感信息(robots.txt,.rar) 缺点: 1.容易暴露,被发现的⻛险⾼(请求敏感内容,短时间同一ip访问次数大于某个值) 2.收集的信息量和覆盖⾯⽐较少
主动信息收集的应⽤场景:主动信息通常在被动信息收集后分析出重要攻击面或敏感点再去针对性去做主动信息收集,在主动信息收集的时候通常持续时间比较长,而且会通过各种不同的方式与目标交互,实战中最常用的手段是模拟或伪装在正常业务流程与目标交互。
3.3.主动信息收集手段域名1.搜索引擎
Googlewww.google.com
Bingwww.Bing.com
Baiduwww.baidu.com
2.网站备案
ICP备案-站长之家http://icp.chinaz.com/
ICP/IP/域名备案管理https://beian.miit.gov.cn/
ICP备案信息查询https://www.icplist.com/
3.ip反查
微步在线https://x.threatbook.cn
Ip138反查https://site.ip138.com
爱站网https://dns.aizhan.com
站长之家https://stool.chinaz.com/same
RapidDNS Sameiphttps://rapiddns.io/sameip
4.AppinfoScanner项目地址: https://github.com/kelvinBen/AppInfoScanner
支持对andriod,ios,web文件进行扫描可设置并发线程\设置过滤
子域名1.oneforallconfig目录下有api.py用于配置api,配置的越全,搜集到的信息越全项目仓库:https://github.com/shmilylty/OneForAll
根据文档安装高版本中from re import sre_parse报错,只需将该语句更改为import sre_parsepython oneforall.py --help 验证安装成功
python oneforall.py --target example.com runpython oneforall.py --targets ./domain.txt run
扫描出的结果会放在results目录下的csv文件中
2.layer子域名挖掘机
双击layer.exe运行目录下的dic.txt为子域名爆破字典完成相关设定后开始扫描右键导出域名可导出域名(.txt)
3.jsfind爬取指定目标中的链接等内容,从而进一步爬取子域名和URL信息项目地址:https://github.com/Threezh1/JSFinder
简单爬取python JSFinder.py -u [target]深度爬取python JSFinder.py -u [target] -d批量爬取pyrhon JSfinder.py -f text.txt-c 指定cookie -ou 指定文件名保存url链接-os 指定文件名保存子域名
4.subDomainsBrute项目地址:https://github.com/lijiejie/subDomainsBrute结果是子域名和对应ip
5.google语法site:”baidu.com”
6.ksubdomainGo编写,速度快项目地址:https://github.com/knownsec/ksubdomain
7.fofa查询domain=”baidu.com”
8.威胁情报网站例如:微步在线-子域名选项https://x.threatbook.cn
站长之家:https://tool.chinaz.com/subdomain/
端口扫描1.masscan项目地址:https://github.com/robertdavidgraham/masscan
单端口:masscan [ip] -p80多端口:masscan [ip] -p80,443范围端口:masscan [ip] -p20-1000
2.nmap官网地址:https://nmap.org/
默认端口扫描:nmap [ip]指定端口扫描:nmap [ip] -p 80nmap [ip] -p 80,3389nmap [ip] -p 20-1000TCP全连接扫描:nmap [ip] -p 80 -sTSYN半连接扫描:nmap [ip] -p 80 -sS网段主机探测nmap -sP 192.168.31.0/24服务识别nmap [ip] -p 80 -sV操作系统扫描nmap [ip] -O结果导出nmap [ip] -p 80 -oN result.txtnmap [ip] -p 80 -oX result.xml
3.goby官网地址:https://gobies.org/完成相关设定后直接扫
指纹识别1.Wappalyzer谷歌应用商店链接:https://chrome.google.com/webstore/detail/wappalyzer-technology-pro/gppongmhjkpfnbhagpmjfkannfbllamg?hl=zh-CN
2.Ehole
可查指纹,可查C段权重EHole [command] --help查看用法例如 Ehole finger -u [ip]扫完会列出重点资产
项目地址:https://github.com/EdgeSecurityTeam/EHole
3.Goby下载地址:https://gobies.org/
4.whatweb
可以搜集网站的一些文字信息
项目地址:https://github.com/urbanadventurer/WhatWeb
5.潮汐指纹http://finger.tidesec.com/
C段扫描1.Ehole项目地址:https://github.com/EdgeSecurityTeam/EHole
扫描后自动列出重点资产Ehole finger -u [ip]
2.Eeyes项目地址:https://github.com/EdgeSecurityTeam/Eeyes
筛选真实IP并整理C段Eeyes -f [目标]
3.fscan项目地址:https://github.com/shadow1ng/fscan
网综合扫描工具,方便一键自动化、全方位漏扫扫描fscan.exe -h 192.168.1.1/24
4.ServerScan项目地址:https://github.com/Adminisme/ServerScan
使用Golang开发且适用于攻防演习内网横向信息收集的高并发网络扫描、服务探测工具
CDN绕过CDN通过不同地理位置的缓存来加快访问速度,所以我们有可能访问的⽹⻚不是真实ip提供的⽹⻚挂了CDN的服务器解析到的是cdnip并不是真实的目标ip
1.CDN价格昂贵,旁站,子域名,c段可能没有CDN
2.DNS历史解析CDN基于解析,所以查看较早的CDN解析记录解析到真正主机查询网站https://x.threatbook.cnhttps://webiplookup.comhttps://viewdns.info/iphistoryhttps://toolbar.netcraft.com/site_report
3.多地ping/国外ping可能国内采用cdnhttps://ping.aizhan.comhttps://ping.chinaz.com
4.证书查询域名的证书可能存在真实ip信息,如果目标站点配有https证书,我们可以查到所有相同证书的站点https://search.censys.iohttps://crt.sh
5.邮箱服务器cdn不支持邮箱邮件查看注册原文(信头),里面的邮箱服务器ip可能是真实ip实战中让目标邮箱服务器向自己的伪造邮箱发送邮件,查看邮箱服务器ip
6.边缘业务的子域名例如app,小程序子域名指向的ip
7.fofa查找网站标题查找title=“”得到站点ip,判断ip是否为主站
8.ajax应用架构应用架构:前后端不分离,bp返回包为html源码前后端分离,返回包一般直接返回数据,通常是json数据
ajax请求不规范,以ip的形式进行调用前端ajax去调用后台的api,他会访问后台的ip,此ip大概率为真实ip
目录扫描1.dirsearch项目地址:https://github.com/maurosoria/dirsearch
2.御剑扫描
漏洞扫描1.xray项目地址:https://github.com/chaitin/xrayxray文档:https://docs.xray.cool/#/
2.nuclei项目地址:https://github.com/projectdiscovery/nucleinuclei文档:https://nuclei.projectdiscovery.io/nuclei/get-started/#running-nuclei
3.Goby官网地址:https://gobies.org/
其他搜集搜集员工信息,招标信息,github,百度贴吧,新浪微博,手机号,支付宝,论坛,博客,邮箱等
1.邮箱收集:EmailAll项目地址:https://github.com/Taonn/EmailAll
api.py里配置信息settings.py里配置代理实例: python3 emailall.py check python3 emailall.py --domain example.com run python3 emailall.py --domains ./domains.txt run
2.公众号/文章搜集:https://weixin.sogou.com/
3.网盘资源搜集
凌风云:https://www.lingfengyun.com
大力盘:https://www.dalipan.com/
代理池ProxyPool项目地址:https://github.com/jhao104/proxy_pool
3.4.全方位收集1.灯塔项目地址:https://github.com/TophantTechnology/ARL
2.水泽项目地址: https://github.com/0x727/ShuiZe_0x727/
3.Goby官网地址:https://gobies.org/