信息收集--基础篇
前言:
如何提高入侵的成功率:信息收集--外围的打点,踩点
挖取app和小程序的漏洞就是要想方设法的获取他的后台地址
app和小程序都是前端,都是通过api接口把后端的的数据传递到前端
因为像小程序他是后台有个web服务器,后端数据都在那里面
一般只有像阿里云的ak sk写死到小程序里面,拿到ak,sk就相当于拿到了它的服务器,而且是它的最高权限
web信息收集
1 子域名收集
whois:收集域名的注册信息的,一般它都会有注册邮箱的一个域名保护机制(阿里云服务器)
2 搜索引擎
谷歌 fofa hunter
第一:放弃主站,基本上没有入侵的机会可言
这个属性是要求必须同源访问,不能嵌入,如果嵌入就会报错“self”
2.1 面试问题
1. 基于系统软件指纹搜索
- 明确软件名称和版本:如果知道出现漏洞系统所使用的具体软件,比如 Web 服务器软件(如 Apache、Nginx)、应用程序框架(如 Struts、Spring Boot)等,以及对应的版本号。例如,已知存在漏洞的系统是使用 Struts 2.3.32 版本搭建的, 就可以在 Fofa 中使用语法
app="Struts 2.3.32"
来搜索使用该版本 Struts 框架的所有站点,这样就能找到其他可能存在相同漏洞的站点。 - 查找相关中间件:有些漏洞与特定的中间件有关。比如 Tomcat 中间件, 若漏洞出现在基于 Tomcat 的系统中,可以使用语法
server="Apache Tomcat"
来查找使用 Tomcat 作为中间件的站点,再进一步结合其他特征(如特定的端口、应用路径等)筛选出可能存在相同漏洞的站点。
2. 根据端口信息搜索
- 确定漏洞相关端口:许多漏洞与特定端口的服务有关。例如,远程桌面服务漏洞(如 RDP 漏洞)通常与 3389 端口相关,MySQL 服务漏洞与 3306 端口相关。如果已知漏洞涉及的端口,就可以使用 Fofa 语法进行搜索, 如查找开放 3389 端口的站点,使用
port="3389"
,然后再结合其他信息(如操作系统类型等)进一步筛选出可能存在相同漏洞的站点。 - 分析服务关联端口:有些系统除了主要服务端口,还会开放一些辅助端口,这些端口也可能存在漏洞。比如 Redis 服务,除了默认的 6379 端口,可能还会有其他相关端口用于集群管理等功能。可以通过 Fofa 搜索多个相关端口,如
port="6379" && port="16379"
(假设 16379 是相关辅助端口),来找到更多相关的站点。
3. 依据网站特征信息搜索
- 页面标题:存在漏洞的系统可能有独特的页面标题,比如特定的系统名称、项目名称等。如果能获取到出现漏洞系统的页面标题信息,就可以使用 Fofa 的语法
title="系统名称"
来搜索页面标题中包含该名称的站点。 - 特定文件路径:系统中可能存在一些特定的文件路径,如配置文件、帮助文档等。比如某个系统存在漏洞的配置文件路径是
/config.php
,可以在 Fofa 中使用语法body="/config.php"
来查找页面中包含该文件路径信息的站点。
4. 利用 SSL 证书信息搜索
- 证书组织信息:如果该站点所属的组织有特定的 SSL 证书,并且证书中包含组织名称等信息, 可以使用 Fofa 语法搜索相关证书信息。例如,已知证书中组织名称为 “example company”,可以使用
cert="example company"
来查找使用该组织证书的所有站点,这些站点可能存在相同的系统漏洞。 - 证书域名信息:有些证书会关联多个域名,通过搜索证书中关联的域名信息,也可以找到相关的站点。比如证书关联了多个子域名,可以使用语法
cert_domain="*.example.com"
(假设example.com是主域名)来查找相关站点。
3 nmap端口扫描:
nmap -sn ip/mask 扫描当前端口存活的主机,因为扫描端口才可以探测到内网有那些主机开启了那些服务
SCAN TECHNIQUES:
-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans
-sU: UDP Scan
-sN/sF/sX: TCP Null, FIN, and Xmas scans
--scanflags <flags>: Customize TCP scan flags
-sI <zombie host[:probeport]>: Idle scan
-sY/sZ: SCTP INIT/COOKIE-ECHO scans
-sO: IP protocol scan
-b <FTP relay host>: FTP bounce scan-sS --syn的半连接扫描
-sT --TCP的全连接扫描
-sU --UDP的全连接扫描
### TCP全连接扫描 -sT
1) 如果端口开放,就会进行完整的三次握手,成功建立链接,扫描结果中,STATE字段显示为 open 。
2) 如果端口关闭,就只能进行一次握手,无法建立链接,扫描结果中,STATE字段显示为 closed。### SYN半链接扫描 -sS
只进行两次握手,对方返回确认帧(ACK=1)就判定端口开放### 隐秘扫描---只适用于linux
「隐秘扫描」向目标主机的端口发送TCP FIN包 或 Xmas tree包 或 Null包,如果收到RST响应包,就判定端口关闭,否则就判定端口开放或被屏蔽(open/filtered)
syn洪水攻击,syn的半连接,一直发等待回复
sS和sT的区别:S是半连接T是全连接,半连接较为隐秘,不容易被态势感知,全流量感知等工具发现,由于是半连接不会被记录日志,全连接会被记录日志
代价:-sS只能在root权限下面执行。所以只能提权(提权不易)
nmap -sS -T4 -sV
-v---服务详情
-p端口,可以扫特定的也可以扫一些范围
Google搜索引擎
0x2 利用好谷歌语法查找敏感信息
浅谈
针对我们在挖 edusrc 的时候遇见最大的问题就是如何突破一站式服务大厅的网站,要突破这一点,我们就需要拥有教师的 gh、sfz 和学生的 sfz、xh 这些个人隐私信息,所以我们就需要做好信息收集。常见的 Google 语法网上有很多,然后我这里也给同学们们汇总好了部分常用的 Google 黑客语法
- site: 域名 intext: 管理 | 后台 | 登陆 | 用户名 | 密码 | 验证码 | 系统 | 帐号 | manage|admin|login|system
- site: 域名 inurl:login|admin|manage|manager|admin_login|login_admin|system
- site: 域名 intext:"手册"
- site: 域名 intext:"忘记密码"
- site: 域名 intext:"工号"
- site: 域名 intext:"优秀员工"
- site: 域名 intext:"身份证号码"
- site: 域名 intext:"手机号"
简单入门
下面就来带同学们们深入体会下利用好谷歌语法查找敏感信息的骚操作
site:xxx.edu.cn // 最简单的查找 edu 站点的 Google 语法
这个语句是寻找这个学校的相关域名的站点,但是在这个后面加一些敏感信息就可以指定查找了,比如:site:xxx.edu.cn sfz
site:xxx.edu.cn xh 这样的等条件