信息打点:Web应用与企业资产情报收集

知识点

1、业务资产-应用类型分类

2、Web单域名获取-接口查询

3、Web子域名获取-解析枚举

4、Web架构资产-平台指纹识别

演示案例

应用-信息打点-某某企业

Web-信息打点-教育SRC

Web-信息打点-补天SRC

业务资产

1、WEB应用
小蓝本、企查查、爱企查等平台都可以查询,根据公司名称去查找资产信息

2、APP应用

3、PC端应用
PC端应用一般就是电脑桌面上下载安装,平常使用的软件

也可以在目标资产的官网中去查找PC应用的下载地址

4、小程序应用
一般是微信小程序、支付宝小程序等等

微信中也可以直接搜索微信小程序

5、微信公众号
公众号同理,可以使用企业信息查询站点去查询或者使用微信去搜索

6、其他产品等

web单域名

1、备案信息
可以根据业务资产的备案信息去查找相关的域名

https://beian.miit.gov.cn/
官当的ICP备案查询站点,输入网站的备案号后可以查询该备案号对应的其它域名信息

可以看到域名不是baidu.com的根域名,但是它仍然属于百度公司,这对于我们扩大资产来说很有利

2、企业产权
可以根据企业所拥有的只是产权等信息去查询

3、注册域名
可以去注册相关域名,根据是否注册去判断所属企业等信息

4、反查解析

我们只有一个IP地址,可以去根据dns解析记录去反查域名,可能可以找到服务器上的其它站点,以及未上线的系统等资产目标

web子域名

1、DNS数据
第三方平台长期收集全网 DNS 解析历史记录,不用直接发包探测目标,拿到历史出现过的全部子域名,属于被动信息收集,不会触发目标侧日志告警。

2、证书查询
所有公开 CA 颁发 HTTPS 证书,都会存入公开 CT 证书日志,证书 SAN 字段携带大量子域名。纯被动收集,不访问目标服务器,不会产生访问日志 可以挖到测试环境、旧后台、废弃资产;自签名证书不会出现在 CT 日志,查不到。

3、网络空间
原理:测绘引擎全网持续抓包,采集公网 IP、域名、端口、中间件、网站标题、证书、设备指纹。属于被动信息收集,不用自己发包探测目标,直接拿已经采集好的数据。
作用:批量获取子域名、开放端口、后台系统、设备资产、C 段网段资产。

4、威胁情报
威胁情报平台储存大量 PDNS 历史解析、IP 域名关联、历史安全事件、样本关联数据,纯被动收集,不访问目标,护网、SRC 高频使用。
作用:查历史 DNS 记录、IP 关联域名、历史 C 段、历史解析记录,用来挖掘已经下线的测试站、旧后台,也可辅助绕过 CDN 拿真实源站 IP。

微步在线

5、枚举解析

枚举解析 = DNS 字典爆破(主动子域名枚举) 原理:拿子域名字典,拼接主域名,批量发送 DNS 解析请求,判断子域名是否存在。
⚠属于主动探测,会给目标 DNS 服务器发包,会留下日志;必须拿到授权才能执行。

无影tscan工具集成域名枚举

oneforall工具扫描子域名

web架构资产

1、程序语言
判断站点是用什么语言写的。 识别方式:

  • 响应包Server、X‑Powered‑By响应头
  • URL 后缀:.php、.jsp、.aspx、.go、.py
  • 报错页面、404 页面泄露语言特征

常见语言:

  • PHP:php 站点,常见 CMS、文件上传、代码执行漏洞
  • Java (JSP):Java 站点,Spring 全家桶、Shiro 等框架漏洞
  • ASPX (C#):.NET 站点
  • Python:Django、Flask
  • Go:Golang 开发,很多自研后台

2、框架源码

识别使用什么 Web 框架、CMS 源码。
知道框架 / CMS,直接去搜对应版本历史 CVE 漏洞。

常见: Java:SpringBoot、SpringMVC、Shiro、Struts2 PHP:ThinkPHP、Laravel;CMS:织梦 DedeCMS、帝国 CMS、WordPress Python:Django、Flask

识别手段:

  • 页面特征路径、页面标记、JS 注释、ico 图标
  • 目录特征:/admin、/thinkphp、/static
  • whatweb、wappalyzer 浏览器插件
  • 指纹库匹配(fofa 指纹、xray 指纹)

3、搭建平台
Web 服务中间件,负责解析网页。 常见:Nginx、Apache、IIS、Tomcat、Jetty、Undertow、Resin

风险点:中间件本身存在漏洞,例如 Nginx 解析漏洞、Tomcat 弱口令、IIS 短文件名。 识别:HTTP 响应头Server字段。

注意:Nginx 经常作为反向代理,真实后端可能是 Tomcat、SpringBoot。

4、数据库类
网站使用什么数据库,一般无法直接对外看到,靠特征推断。

  • MySQL:PHP 站点最常搭配
  • SQL Server:.NET、ASPX 站点居多
  • Oracle:大型企业 Java 业务
  • PostgreSQL
  • MongoDB(NoSQL)

推断方法:

  • 语言 + 业务经验推断;
  • SQL 注入报错泄露数据库类型;
  • 某些报错页面泄露数据库版本。

5、操作系统
服务器底层操作系统:Linux / Windows

识别方式:

  • Nginx/Apache 大多部署 Linux;IIS 一般 Windows。
  • TTL 判断: Windows TTL=128;Linux TTL=64

    根据网站路径识别,一般linux不知道大小写,windows支持大小写