web渗透之信息收集

WEB/APP/PC/小程序信息收集

web

ip?域名?企业名?网址?

知识点

业务资产-应用类型分类

  • 了解不同类型的应用资产,包括Web应用、移动应用、桌面应用等。

Web 单域名获取-接口查询

  • 通过接口查询获取特定Web域名的相关信息。

Web 子域名获取-解析枚举

  • 使用解析枚举技术发现目标网站的子域名。

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

  • 识别Web平台的技术栈,包括使用的语言、CMS、中间件等。

Web

  • 语言:识别网站开发所用的编程语言。
  • CMS:确定网站是否使用内容管理系统,以及使用的具体类型。
  • 中间件:识别服务器上运行的中间件。
  • 数据库:探测网站后端使用的数据库类型。
  • 系统:了解网站服务器运行的操作系统。
  • WAF:检测网站是否部署了Web应用防火墙。

系统

  • 操作系统:识别服务器操作系统类型。
  • 端口服务:扫描开放的端口和服务。
  • 网络环境:分析网络结构和配置。
  • 防火墙:评估防火墙配置和规则。

应用

  • APP 对象:分析移动应用的相关信息。
  • API 接口:探索应用的API接口。
  • 微信小程序:研究微信小程序的功能和结构。
  • PC 应用:分析桌面应用程序的资产和潜在风险。

架构

  • CDN:识别是否使用内容分发网络。
  • 前后端:区分应用的前端和后端架构。
  • 云应用:了解应用是否部署在云平台上。
  • 站库分离:分析网站是否采用站库分离的架构。
  • OSS 资源:探测使用的对象存储服务。

技术

  • JS 爬虫:使用JavaScript爬虫获取网站信息。
  • 敏感扫描:探测网站潜在的敏感信息泄露。
  • 目录爬虫:枚举网站目录结构。
  • 源码获取:获取网站的源代码。
  • 接口泄漏:检测接口是否存在信息泄漏。

技术

  • 指纹识别:识别网站和应用的指纹信息。
  • 端口扫描:扫描服务器开放的端口。
  • CDN 绕过:绕过CDN以直接访问服务器。
  • WAF 识别:识别并分析Web应用防火墙。
  • Github 监控:监控Github上的代码库,寻找潜在的信息泄露。

信息收集与安全分析资源手册

一、企业信息查询
二、备案信息查询
三、公众号信息查询
四、注册域名查询
五、IP 反查
六、DNS 数据查询
七、证书查询
  • CertificateSearch
八、网络空间搜索
九、威胁情报
十、枚举解析工具
十一、指纹识别工具
十二、网络空间搜索引擎
十三、威胁情报

小程序应用

如何找到小程序

支付宝、微信、抖音等

生成小程序测试网址:

测试:https://qz.fkw.com/ 参考:https://blog.csdn.net/qq_52445443/article/details/122351865

先使用反编译工具进行反编译然后进行敏感信息的提取

1.主体结构

小程序包含一个描述整体程序的 app 和多个描述各自页面的 page。 一个小程序主体部分(即 app)由三个文件组成,必须放在项目的根目录,如下:

文件 必需 作用

app.js 是 小程序逻辑

app.json 是 小程序公共配置 a

pp.wxss 否 小程序公共样式表

2.一个小程序页面由四个文件组成,分别是:

xxx.js 页面逻辑

xxx.json 页面配置

xxx.wxml 页面结构

xxx.wxss 页面样式

3.项目整体目录结构

pages 页面文件夹

index 首页

logs 日志

utils util 工具类(mina 框架自动生成,你也可以建立一个: api)

app.js 入口 js(类似于 java 类中的 main 方法)、全局 js

app.json 全局配置文件

app.wxss 全局样式文件

project.config.json 跟你在详情中勾选的配置一样

sitemap.json 用来配置小程序及其页面是否允许被微信索引

APP/WEB源码

js源码

  • 前端 --> F12可以得到一些js的验证方式,或者一些其他站点,url
  • 接口
tools:
  • JsFind
  • UrlFinder
  • Packer-Fuzzer --> webpack
  • ffuf
  • Jsinfo-scan
本地工具
  • GotoScan

源码

泄露的地方

指纹平台识别

1. WhatWeb 在线指纹识别
2. Wappalyzer
  • 网址: https://github.com/AliasIO/wappalyzer
  • 描述: Wappalyzer 是一个开源工具,通过浏览器扩展和命令行界面识别网站的技术栈。适用于网页开发者和网络安全专家。
3. TideFinger(潮汐指纹)
  • 网址: http://finger.tidesec.net/
  • 描述: TideFinger 是基于 Python 开发的指纹识别工具,能够识别多种 CMS 和其他网络技术。
4. 云悉指纹
  • 网址: https://www.yunsee.cn/
  • 描述: 云悉指纹是一个在线指纹识别服务,提供网站技术栈的详细信息,包括 CMS、服务器信息和编程语言等。
5. WhatWeb(GitHub 版本)
6. 数字观星 Finger-P

文件夹下面含有 --> 压缩包、.git等文件

源码泄漏集合:

  • composer.json --> composer.json 文件是 PHP 项目的依赖管理文件,可能会包含敏感信息,如版本号、私有库地址等
  • git 源码泄露 --> Git 源码泄露通常发生在 .git 目录或相关配置文件未被正确地从生产环境中移除时
  • svn 源码泄露 --> SVN(Subversion)源码泄露发生在 .svn 目录或相关配置文件未被正确地从生产环境中移除时
  • hg 源码泄漏 --> HG(Mercurial)源码泄露通常是指 .hg 目录或相关配置文件在生产环境中未被正确移除。
  • 网站备份压缩文件 --> 网站备份文件,如 .zip.tar.gz 等,可能包含网站的完整源码,若未正确处理,会导致源码泄露。
  • WEB-INF/web.xml 泄露 --> WEB-INF/web.xml 文件是 Java Web 应用程序的配置文件,泄露后可能暴露敏感配置信息
  • DS_Store 文件泄露 --> .DS_Store 文件是 macOS 系统中用来存储文件夹的自定义属性的文件,可能会泄露文件结构或敏感信息。
  • SWP 文件泄露 --> .swp 文件是某些文本编辑器(如 Vim)创建的临时文件,可能包含未保存的文件内容
  • CVS 泄露 --> CVS(Concurrent Versions System)源码泄露通常是指 .cvsignore 文件或 CVS 元数据在生产环境中未被正确移除
  • Bzr 泄露 --> Bzr(Bazaar)源码泄露通常是指 .bzr 目录或相关配置文件在生产环境中未被正确移除

APP

获取app的配置,数据包,获取url,api,asskey,js等敏感信息

APP收集资产

1、抓包 --> 动态表现

2、提取 --> 静态表现 --> 反编译等

3、搜索 --> 网络搜索相关资产,静态表现

某app打开无数据包,登录有数据包

原因:打开界面是app本地资源,没有对外发送数据

静态提取

tools --> appinfoscanner、mobsf(推荐)

利用工具获取相关的资产 --> url、敏感信息

WEB服务识别

前端技术

html、jquery、bootstrap、vue等

开发语言

Java python php Ruby C# js等

Web服务器

Apache Nginx IIS lighttp等

应用服务器

Tomcat Jboss Weblogic Webshere

数据库类型

mysql sqlserver Oracle Redis MongoDB

操作系统

Win linux mac

WAF

云waf

百度云 阿里云 长亭雷池 华为云 亚马逊

硬件waf

绿盟 安恒 深信服 知道创宇

软件waf

宝塔 安全狗 D盾

代码waf

自己写的

端口识别

一些关键的端口开放可能导致一些服务开放从而产生漏洞

一、文件传输协议(FTP)

  • 端口:20, 21
  • 风险
    • 允许匿名上传下载
    • 爆破
    • 嗅探
    • Windows 提权
    • 远程执行(Proftpd 1.3.5)
    • 各类后门(Proftpd, vsftp 2.3.4)

二、安全壳协议(SSH)

  • 端口:22
  • 风险
    • 爆破
    • v1 版本可中间人攻击
    • SSH 隧道及内网代理转发
    • 文件传输

三、远程登录服务(Telnet)

  • 端口:23
  • 风险
    • 爆破
    • 嗅探
    • 弱口令

四、简单邮件传输协议(SMTP)

  • 端口:25
  • 风险
    • 邮件伪造
    • vrfy/expn 查询邮件用户信息
    • 使用 smtp-user-enum 工具自动跑

五、域名系统(DNS)

  • 端口:tcp/udp 53
  • 风险
    • 允许区域传送
    • DNS 劫持
    • 缓存投毒
    • 欺骗
    • 基于 DNS 隧道的远控

六、简单文件传输协议(TFTP)

  • 端口:69
  • 风险
    • 尝试下载目标及其重要配置文件

七、Web 服务端口

  • 端口:80-89, 443, 8440-8450, 8080-8089
  • 风险
    • 各类 Web 服务端漏洞利用
    • 经典的 topn, vpn, owa, webmail
    • 目标 OA
    • 各类 Java 控制台
    • 各类服务器 Web 管理面板
    • 各类 Web 中间件漏洞利用
    • 各类 Web 框架漏洞利用

八、邮件接收协议(POP3)

  • 端口:110
  • 风险
    • 爆破
    • 嗅探

九、网络文件系统(NFS)

  • 端口:111, 2049
  • 风险
    • 权限配置不当

十、Samba

  • 端口:137, 139, 445
  • 风险
    • 爆破
    • 各类远程执行类漏洞利用(如 ms08-067, ms17-010)
    • 嗅探

十一、互联网消息存取协议(IMAP)

  • 端口:143
  • 风险
    • 爆破

十二、简单网络管理协议(SNMP)

  • 端口:udp 161
  • 风险
    • 爆破默认团队字符串
    • 搜集目标内网信息

十三、Linux rexec

  • 端口:512, 513, 514
  • 风险
    • 爆破
    • rlogin 登陆

十四、远程同步(Rsync)

  • 端口:873
  • 风险
    • 匿名访问
    • 文件上传

十五、OpenVPN

  • 端口:1194
  • 风险
    • 钓取 VPN 账号,进入内网

十六、Lotus

  • 端口:1352
  • 风险
    • 弱口令
    • 信息泄漏
    • 爆破

十七、SQL Server

  • 端口:1433
  • 风险
    • 注入
    • 提权
    • sa 弱口令
    • 爆破

十八、Oracle

  • 端口:1521
  • 风险
    • tns 爆破
    • 注入
    • 弹 shell

十九、ISPmanager

  • 端口:1500
  • 风险
    • 弱口令

二十、PPTP

  • 端口:1723
  • 风险
    • 爆破
    • 钓取 VPN 账号,进入内网

二十一、cPanel

  • 端口:2082, 2083

蜜罐

低交互、高交互

以下是在 Quake 系统中用于搜索不同类型蜜罐的语法。这些语法可以帮助用户快速定位到特定类型的蜜罐服务。

StrutsHoneypot

  • 搜索语法:app:"StrutsHoneypot"

Conpot HTTP 蜜罐

  • 搜索语法:app:"Conpot Http 蜜罐"

Conpot MODBUS 蜜罐

  • 搜索语法:app:"Conpot modbus 蜜罐"

Conpot S7 蜜罐

  • 搜索语法:app:"Conpot s7 蜜罐"

Kippo 蜜罐

  • 搜索语法:app:"kippo 蜜罐"

Honeypy HTTP 蜜罐

  • 搜索语法:app:"Honeypy Http 蜜罐"

Honeypy ES 蜜罐

  • 搜索语法:app:"Honeypy ES 蜜罐"

Amun IMAP 蜜罐

  • 搜索语法:app:"amun imap 蜜罐"

Amun HTTP 蜜罐

  • 搜索语法:app:"amun http 蜜罐"

Nepenthes NETBIOS 蜜罐

  • 搜索语法:app:"Nepenthes netbios 蜜罐"

Nepenthes FTP 蜜罐

  • 搜索语法:app:"Nepenthes FTP 蜜罐"

SSHesame SSH 蜜罐

  • 搜索语法:app:"sshesame ssh 蜜罐"

OpenCanary 蜜罐管理后台

  • 搜索语法:app:"opencanary 蜜罐管理后台"

Dionaea SIPD 蜜罐

  • 搜索语法:app:"Dionaea sipd 蜜罐"

Dionaea SMBD 蜜罐

  • 搜索语法:app:"Dionaea smbd 蜜罐"

Dionaea HTTP 蜜罐

  • 搜索语法:app:"Dionaea Http 蜜罐"

Dionaea MSSQL 蜜罐

  • 搜索语法:app:"Dionaea MSSQL 蜜罐"

Dionaea FTP 蜜罐

  • 搜索语法:app:"Dionaea ftp 蜜罐"

Dionaea Memcached 蜜罐

  • 搜索语法:app:"Dionaea Memcached 蜜罐"

Kojoney SSH 蜜罐

  • 搜索语法:app:"Kojoney SSH 蜜罐"

WebLogic 蜜罐

  • 搜索语法:app:"weblogic 蜜罐"

MySQL 蜜罐

  • 搜索语法:app:"MySQL 蜜罐"

HFish 蜜罐

  • 搜索语法:app:"HFish 蜜罐"

HFish 蜜罐管理后台

  • 搜索语法:app:"HFish 蜜罐管理后台"

Honeything 物联网蜜罐

  • 搜索语法:app:"honeything 物联网蜜罐"

Elasticsearch 蜜罐

  • 搜索语法:app:"elasticsearch 蜜罐"

HostUS 蜜罐

  • 搜索语法:app:"HostUS 蜜罐"

Whoisscanme 蜜罐

  • 搜索语法:app:"whoisscanme 蜜罐"

未知蜜罐

  • 搜索语法:app:"未知蜜罐"

Cowrie Telnetd 蜜罐

  • 搜索语法:app:"Cowrie telnetd 蜜罐"

Glastopf 蜜罐

  • 搜索语法:app:"glastopf 蜜罐"

蜜罐采用jsonp去传输

CND

加速服务,提高访问速度

传统访问

用户访问域名 -> 解析服务器IP -> 访问目标主机

普通CDN

用户访问域名 -> CDN节点 -> 真实服务器ip -> 访问目标主机

带WAF的CDN

用户访问域名 -> CDN节点(WAF) -> 真实服务器ip -> 访问目标主机

国内服务器

阿里云 百度云 七牛云

又拍云 腾讯云 Ucloud

360 网宿科技 ChinaCache

国外服务器

CloudFlare StackPath Fastly

Akamai CloudFront Edgecast

CDNetworks Google Cloud CDN

CacheFly Keycdn Udomain CDN77

没有全球的话冷门国家可以获取真实ip

如何判断是否有CDN

超级ping 如果IP全部都一样就是没有CDN

获取真实ip可以使用邮件服务

2023年的APT邮件钓鱼中也提及

红蓝队项目

自动化收集

攻防收集

水泽

灯塔 ARL

各类红蓝队优秀工具项目集合

ALL Defense-Tool --> guchangan1/All-Defense-Tool: 本项目集成了全网优秀的攻防武器工具项目,包含自动化利用,子域名、目录扫描、端口扫描等信息收集工具,各大中间件、cms、OA漏洞利用工具,爆破工具、内网横向、免杀、社工钓鱼以及应急响应、甲方安全资料等其他安全攻防资料。 (github.com)

自动化-武器库部署-F8x

f8x --> ffffffff0x/f8x: 红/蓝队环境自动化部署工具 | Red/Blue team environment automation deployment tool (github.com)

网络空间

AsamF --> Kento-Sec/AsamF: AsamF是集成Fofa、Quake、Hunter、Shodan、Zoomeye、Chinaz、0.zone及爱企查的一站式企业信息资产收集、网络资产测绘工具。 (github.com)

nemo --> hanc00l/nemo_go: Nemo是用来进行自动化信息收集的一个简单平台,通过集成常用的信息收集工具和技术,实现对内网及互联网资产信息的自动收集,提高隐患排查和渗透测试的工作效率。 (github.com)

企业信息

ENScan --> wgpsec/ENScan_GO: 一款基于各大企业信息API的工具,解决在遇到的各种针对国内企业信息收集难题。一键收集控股公司ICP备案、APP、小程序、微信公众号等信息聚合导出。 (github.com)

番外

微信公众号

1、获取途径

2、有误第三方服务

  • 微信公众号有无自己写的网址

Github监控 -开发 -配置 -源码

目标中开发人员或者托管公司上传的项目存在源码泄漏或配置信息(密码密匙等), 人员数据库等敏感信息,找到多个脆弱点。

1、人员&域名&邮箱等筛选

eg:xxx.cn password in:file

例如:
以浙江大学为例:

zju.edu.cn password 

https://gitee.com/

https://github.com/

https://www.huzhan.com/

GITHUB 资源搜索:

in:name test #仓库标题搜索含有关键字

in:descripton test #仓库描述搜索含有关键字

in:readme test #Readme 文件搜素含有关键字

stars:>3000 test #stars 数量大于 3000 的搜索关键字

stars:1000..3000 test #stars 数量大于 1000 小于 3000 的搜索关键字

forks:>1000 test #forks 数量大于 1000 的搜索关键字

forks:1000..3000 test #forks 数量大于 1000 小于 3000 的搜索关键字

size:>=5000 test #指定仓库大于 5000k(5M)的搜索关键字

pushed:>2019-02-12 test #发布时间大于 2019-02-12 的搜索关键字

created:>2019-02-12 test #创建时间大于 2019-02-12 的搜索关键字

user:test #用户名搜素

license:apache-2.0 test #明确仓库的 LICENSE 搜索关键字

language:java test #在 java 语言的代码中搜索关键字

user:test in:name test #组合搜索,用户名 test 的标题含有 test 的

关键字配合谷歌搜索:

site:Github.com smtp

site:Github.com smtp @qq.com

site:Github.com smtp @126.com

site:Github.com smtp @163.com

site:Github.com smtp @sina.com.cn

site:Github.com smtp password

site:Github.com String password smtp

2、语法固定长期后续监控新泄露

  • 基于关键字泄露
  • 基于项目规则泄露
项目

网盘搜索资源

网盘搜索相关资产

敏感目录文件

使用dirsearch等

网络空间- 证书 -图标-邮箱

安全证书

校徽

邮箱

posted @ 2025-05-13 13:23  ykkx  阅读(21)  评论(0)    收藏  举报