1.信息收集(更新中)

1.1信息收集概述

1.1.1信息收集的基本要求

1.全面:
对目标所有的业务和非业务存在点进行全面的信息收集。

2.准确:
对收集到的信息尤其是重要信息要再三确认其信息的准确性。

3.失效:
注意信息产生时间和手机时间,是否具有时间差,时间差能否接受。

4.清晰:
对于收集到的信息要做到逻辑清晰,能清楚分辨出各个收集到的信息之间的逻辑关系和资产之间的相对位置。

5.拓步:
以信息起点由点到面。

1.1.2.信息搜集注意点

信息搜集底层逻辑: 通过各种渠道对已公开或未公开的信息进行搜集,尽可能搜集薄弱点。

注意事项:
1.降低被发现度,提高隐蔽性。
2.细心,耐心。

1.1.3收集目标

服务器ip
域名
操作系统
web容器 tomcat
端口
协议 http https
cdn 多地(国外)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 requests
from bs4 import BeautifulSoup
import 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基本流程

  1. 第三⽅的信息收集机构或平台已经收集到⽬标的信息
  2. 第三⽅的信息收集机构或平台将信息存储在某处
  3. 攻击者从存储信息的地⽅查询信息
  4. 攻击者得到相应信息

2.2被动信息收集优缺点

1.优点:
1.隐蔽性高,不容易被发现
2.收集的信息量和覆盖面比较大
2.缺点
1.收集到的信息准确性与时效性不高
2.无法收集到敏感或未公开信息

应用场景:通过被动信息收集获取目标基本要素,根据信息要素判断目标特点与薄弱点

2.3 常见手段

1.Google语法

https://www.google.com
常用google语法:

site: 指定站点的内容(域名)
例如site:edu.cn site:qq.com

filetype:搜索指定的文件类型(log,txt,rar,bak,pdf,xls,dat)
例如 filetype:pdf

inurl: 搜索url中有指定内容的网页
例如 url:uploads 文件上传

intitle: 网页标题中含有关键字
例如 intitle:泛微

intext:网页中正文含有关键字
例如 intext:用户名/密码/登录

cache:
已经删除的缓存网页,可能有信息

Google语法查询对应漏洞database
https://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/#/index

censys: 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.主动信息收集的基本结构

基本流程:

  1. 由攻击者主动发起⾏为或请求
  2. ⽬标受到⾏为或请求影响并发出反馈
  3. 攻击者获得反馈并判断特征

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.oneforall
config目录下有api.py用于配置api,配置的越全,搜集到的信息越全
项目仓库:https://github.com/shmilylty/OneForAll

根据文档安装
高版本中from re import sre_parse报错,只需将该语句更改为import sre_parse
python oneforall.py --help 验证安装成功
python oneforall.py --target example.com run
python 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.ksubdomain
Go编写,速度快
项目地址: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 80
nmap [ip] -p 80,3389
nmap [ip] -p 20-1000

TCP全连接扫描:
nmap [ip] -p 80 -sT

SYN半连接扫描:
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.txt
nmap [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.cn
https://webiplookup.com
https://viewdns.info/iphistory
https://toolbar.netcraft.com/site_report

3.多地ping/国外ping
可能国内采用cdn
https://ping.aizhan.com
https://ping.chinaz.com

4.证书查询
域名的证书可能存在真实ip信息,如果目标站点配有https证书,我们可以查到所有相同证书的站点
https://search.censys.io
https://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/xray
xray文档:https://docs.xray.cool/#/

2.nuclei
项目地址:https://github.com/projectdiscovery/nuclei
nuclei文档: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/