目录
前言:
参考资料:
一、环境准备及其工具用法:
1、oneforall下载配置:
2、nmap工具下载安装
3、ffuf&randomua下载安装(Linux)
4、JSFScan工具下载安装
二、敏感信息搜集
1、google语法基础语法
2、She Gong
3、Wayback
4、邮箱信息收集
5、一些像知乎,微博能搜到东西
6、脆弱资产收集(扩展)
三、学校资产收集
1、FOFA&鹰图
2、整合
四、总结:
⚠️ 免责声明
本文所涉及的技术、工具及方法仅供网络安全研究、授权测试及学习交流使用。
严禁非法使用:未经目标系统所有者明确书面授权,任何利用本文所述技术对他人系统进行渗透、爆破、数据窃取或破坏的行为,均属违法行为。
法律责任自担:读者因不当使用本文内容所产生的任何直接或间接法律后果、经济纠纷及安全事件,均由行为人自行承担,与本文作者及发布平台无关。
遵守法律法规:请严格遵守《中华人民共和国网络安全法》《中华人民共和国数据安全法》等相关法律法规,在合法授权范围内开展安全测试。
合规操作建议:如您需在实际工作中进行安全评估,请务必事先获得正式授权,并在测试完成后及时向被测方提交漏洞报告。
作者仅提供技术思路分享,不鼓励、不纵容任何形式的黑灰产行为。请做一名有底线的安全从业者。
前言:
首先edu有很多系统提供初始账号密码是和学号、身份证号后几位或者和手机号相关。然后像这种敏感信息是容易找到的。所以我们演示一下如何搜集这种敏感信息,找敏感信息的过程会翻到说明用初始账号密码登录的系统地址,密码规则,敏感信息,尝试登录就好。
其次进行系统的资产收集,子域名、端口号和目录可能对应不同的网站,所以我们会对子域名、端口号扫描和网站目录爆破,目录爆破加载随机User-Agent,因为有些设备会检测User-Agent,有时也能发现敏感文件。端口号扫描也要先通过CDN判断找到真实ip地址。空间测绘工具也蛮好用的。
最后就是js敏感文件提取,里面可能会有高危未授权接口,登录凭证,还会藏着子域名来扩大攻击面。Js敏感信息提取有两套工具,一种是JSLinkFInder+JSSecret,另一种是一站式JSScan。JSLinkFinder是接口提取,JSSecret是密钥凭证提取,JSScan是包含前面两种功能,还有扩展的,比如js链接提取,字符或变量出现频率统计,用于后面弱口令爆破。这两套对于提取的质量是一样的,推荐后者。不足是静态代码分析,会漏掉一些东西。比如有些js会把接口用多个变量拆开存放,凭证也是。最后还是要人工进行审计。至于像微信小程序和app都可以去找一下。本章演示结构:环境准备及其工具用法-->敏感信息搜集-->学校资产收集-->js敏感信息提取。对于资产来说肯定是越多越好,攻击面就越广嘛。我整理这篇关于如何进行信息收集的,我能力有限,不能面面俱到,可能会有更好、更新的工具或技术,欢迎在评论区留言指正建议。
注意:
演示的环境为:
Win11操作系统:python 3.12,burpsuite
Ubuntu操作系统(vmware):
参考资料:
OneForAll工具:安装指南、使用方法及常见问题解决(超全)-CSDN博客
Nmap 全网最细安装教程(Windows+Linux+Mac 三平台,保姆级不踩坑)-CSDN博客
Nmap 高阶用法:存活探测、端口扫描、漏洞脚本扫描、防火墙绕过扫描参数-CSDN博客
ffuf的安装与使用-CSDN博客
Ffuf爆破神器(超详细)-CSDN博客
17.JavaScript 自动化侦察工具_jsfscan-CSDN博客
一、环境准备及其工具用法:
1、oneforall下载配置:
Github下载地址:https://github.com/shmilylty/OneForAll
Python版本要求大于3.8,要添加进系统环境变量哦
直接打开可能有点卡,建议用walt toolkit加速,如果有需要安装walt toolkit可以看这篇文章:
https://blog.csdn.net/ElderTitan/article/details/163995842?spm=1011.2415.3001.10575&sharefrom=mp_manage_link
打开链接下载压缩包,放到合适的位置解压
进入项目目录,点击上方地址栏输入cmd回车打开命令行
输入:
python -v回车,确认python是否大于3.8
输入:
pip install -r requirements.txt -i https://aliyun.com/pypi/simple/回车,用阿里云的镜像下载依赖,我用清华的镜像报错
输入:
python onforall.py看看能否运行,需要一直按向下的方向键加载到100%,然后ctrl+c暂停退出
输入:
Python oneforall.py --target www.xiaodi8.com run拿小迪的网站测一下
这个错误信息是你的Python脚本在尝试访问Google透明度报告API时连接超时了。具体来说,你的网络环境无法在13秒内成功连接到 transparencyreport.google.com。不用理。
搜集完成后它会告诉你搜集好的子域名.csv文件放在哪里,一般在项目目录的result下面
以下是csv每个字段的含义:
subdomain : 发现的子域名
level : 子域名的层级数
cname : 子域名的 CNAME 记录(别名)
ip : 子域名解析到的 IP 地址
public : IP 地址是否为公网 IP(是/否)
cdn : IP 地址是否属于 CDN(内容分发网络)
port : 探测发现的开放端口
status : HTTP 请求返回的状态码
reason : 网络连接状态或错误详情
resolve : DNS 解析是否成功
ttl : DNS 记录的 TTL(生存时间)值
url : 完整的请求 URL
title : 网站页面的标题
banner : 网站指纹信息(服务器类型、编程语言等)
history : URL 跳转历史记录
response : HTTP 响应体的部分内容
addr : IP 地址的物理位置(国家、城市)
isp : IP 地址的网络服务提供商
cidr : IP 地址对应的 CIDR 网段
asn : IP 地址对应的 ASN(自治系统编号)
module : 发现该子域名所使用的模块名称
source : 该子域名的具体数据来源
alive : 子域名是否存活(是/否)
new : 该子域名是否为本次运行中新发现的
times : 爆破模块中同一 IP 出现的重复次数
id : 数据库内部流水号(无实际侦察意义)
org : IP 地址所属的组织或机构
有人说一个一个搜集也太慢了,别急,它还可以对多个目标进行批量收集。
新建文本文件在项目目录下,输入你要进行子域名搜集的目标,一行一个保存
输入:
python oneforall.py --targets test.txt run回车,我就不跑了,只是作为演示。
2、nmap工具下载安装
下载地址:Nmap: the Network Mapper - Free Security Scanner
先点最左边的下载
往下翻到window那一行,有个最新稳定版点击下载,觉得下载慢可以粘贴下载链接到迅雷下载
下载后放到合适的目录,双击打开
允许更改-->我同意
确保你的Npcap勾选,不然抓不了包。GUI图形化界面友好,然后下一步
安装路径我给它建了个文件夹,点击安装
中途会弹出来这个,如果对无线安全感兴趣可以勾一下第二个,第三个能兼容会安全点
1、限制 Npcap 驱动仅允许管理员访问
2、为无线适配器支持原始 802.11 流量(及监控模式)
3、以 WinPcap API 兼容模式安装 Npcap
查找真实ip:
先判断是否为cdn
推荐DNS解析平台:http://www.usc.edu.cn GET测试结果 网站速度测试 17CE
域名解析出多个ip说明为cdn
推荐dns历史解析平台:https://x.threatbook.com/
最早2010年解析ip为:*.*.*.31,再通过地理位置,isp可以确定为真实ip
然后点击下一步或者完成就可以了。一般是需要找到真实ip才用这个扫描。后面再讲怎么找真实ip,我们先讲用法。现在的防火墙都比较高级了,如果我们直接对着人家扫会被封ip的,防火墙有态势感知,识别你是不是在扫描端口。(如果你有钱用代理池就当我没说)它有很多高阶用法,这里只讲信息收集用的,感兴趣的可以去网上了解一下。
WAF通常会根据单位时间内的请求频率来判定是否为扫描行为。重点在于让扫描速度慢下来,模拟人类访问。半连接扫描不会被日志记录,用几个假IP可以混淆waf的判断,分片传输更隐蔽。
-sS : SYN半开扫描(隐身扫描),不完成完整TCP三次握手
-T2 : 时间模板等级2(礼貌模式),降低发包速度
--scan-delay 500ms : 每个探测包之间强制等待500毫秒
-f : IP数据包分片,将TCP头部拆成多个小包
-D RND:3 : 随机生成3个诱饵IP进行诱饵扫描
-p 1-65535 : 扫描全端口
结果关注开放的就好。
命令:
nmap -sS -p 1-65535 -T2 -f --scan-delay 500ms -D RND:3 域名/ip
隐蔽地扫描全端口,可能会比较久。按需要调整,比如时间紧你就改成T4,延迟缩短到200这样,端口也减少。
3、ffuf&randomua下载安装(Linux)
Go语言安装:
有人就问了,那么多网站目录,为什么就选这个呢?相较于传统的扫描工具,ffuf它的底层是用go语言编写的,并发性很强。扫描的时候很快,而且自定义程度很高。我看网上大部分都是用Linux玩这个的,我试过windows没成。
下载地址:
所有版本 - Go 编程语言
稳定版本选择Linux的x86-64稳定版
下载安装包,解压到合适的文件夹,然后在那个文件夹下打开终端
输入:
tar -xzvf 你下载的go压缩包文件
抱歉哈,没时间写了,就贴链接参考,然后直接说咋用的。卡住了解决不了的就用Claude。
安装Go语言、搭建开发环境、依赖包下载(保姆教程)_go语言安装包-CSDN博客
ffuf下载安装:
ffuf的安装与使用-CSDN博客
randomua下载安装
git clone https://github.com/picatz/randomua.git cd randomua gem install randomua randomua -h用法:
搭配user-agent随机生成,因为有些设备会根据ua头标识判断,我们就加载随机生成的ua头,生成csv文件
ffuf -u https://www.xxxx.edu.cn/FUZZ \ -w /path/to/wordlist.txt \ -c "User-Agent:$(randomua -d)"\ -o results.csv \ -of csv-u:目标URL,其中FUZZ为占位符,表示将被字典内容替换的位置-w:字典文件路径,用于提供替换FUZZ的测试数据-c:设置请求头,此处为User-Agent,值由randomua -d命令动态生成随机用户代理-o:输出文件路径,此处为results.csv-of:输出格式,此处为csv(逗号分隔值格式)
这里直接打开,筛选200的,看看注册页面
很遗憾这个注册页面关闭了
如果你有代理可以用代理链来进行目录扫描
ffuf -u https://www.xxxx.edu.cn/FUZZ \ -w /path/to/wordlist.txt \ -c "User-Agent:$(randomua -d)"\ -x http://127.0.0.1:8080 -o results.csv \ -of csv4、JSFScan工具下载安装
这个是比较麻烦的,我后面都是用claude来帮我装的
17.JavaScript 自动化侦察工具_jsfscan-CSDN博客
用法:
新建txt文件,写入你要测试的域名
输入:
./JSFScan.sh -l targets.txt收集链接,会生成几个文件
jsfile_links.txt是提取的js链接,另一个是从中筛选出活的
输入:
./JSFScan.sh -e -s -i live_jsfile_links.txt提取js链接的敏感信息
会生成一个接口文档和一个密钥文档,我们打开jslinksecret.txt,发现有个API KEY,问AI怎么利用,然后是失效了的
然后抓包尝试拼接接口,把接口文件加载到bp字典,看响应。记得别勾选url啊,不然识别不出路径的。
二、敏感信息搜集
1、google语法基础语法
"腾讯安全" 整体搜索,否则成为了腾讯或者安全的搜索结果
-排除的词去除,减号前面空格,后面紧跟着,例如:搜索引擎 -360
+搜索的词包含搜索的词,加号前面空格,后面紧跟着,例如: 搜索引擎 +360
"腾*安*" 通配符
xxx: xxx
site: 指定域名,如:site:edu.cn 搜索教育网站,会搜出来子域名
inurl: 用于搜索包含的url关键词的网页,如:inurl:uploads
inanchor:inanchor:点击这里,返回结果是在链接锚文字中出现了“点击这里”这四个字的页面
intitle: 搜索网页标题中的关键字,
intext: 搜索网页正文中的关键字,如:intext:登陆/注册/用户名/密码
filetype: 按指定文件类型即文件后缀名搜索,如:filetpye:php/asp/jsp filetype:xls
cache: 已经删除的缓存网页,推荐组合使用
推荐一个在线语法生成器,地址:
Google 搜索语法生成器 - 江西财经大学网络安全协会
主要是身份证号+学号+手机号三要素。
这里我们筛选条件选择站内搜索,输入你想要测试的学校域名,再依次添加正文包含学号、身份证和手机号的条件,最后把生成的语法复制就好了。接着在浏览器直接粘贴搜索就可以了。
我们看到有个附件下载,我们点进去
输入验证码下载了一个doc文档,地址栏有参数,待会儿可以改一下试试
打开文档发现里面有路由登录页面和默认账号密码,可以尝试登陆。(这个进不去,估计放内网了)
我们回去看到地址栏的参数,我们更改回车,发现可以下载其他的文件。(这是在我意料之外的,我单纯只想来搜集信息的,我想看看有没有身份证号码啥的,结果没多久就打不开网站了。换了ip地址,清理cookie缓存都没用。然后把链接放到迅雷里面可以下载,于是我翻到了身份证号就停手了,不然要进去)
就这样用google语法把能找到的可能包含文档,密码规则的看一遍。里面还包含资产,我就专门建了一个收藏夹用来放资产的。点进去注意看地址栏有没有参数可以修改的。这也算一个漏洞的。然后你就能拿到一些学号,手机号和身份证号,还有登录页面。就可以尝试去登陆,点一下找回密码。
然后没成功也不用慌,先创建一个收藏夹留着,后面继续看
2、She Gong
可能要外网才能访问,传说可以搜身份证号啥的
3、Wayback
可能需要外网环境才能访问,以前网站的快照
4、邮箱信息收集
https://app.snov.io/
5、一些像知乎,微博能搜到东西
这一套下来应该大部分都是登录的系统,还有默认账号密码规则,还有学号,姓名和身份证号(如果运气好的话)
6、脆弱资产收集(扩展)
查找后台
site:xx.com intext:管理|后台|登陆|用户名|密码|系统|帐号|admin|login|sys|managetem|password|username
如果出现以上页面说明有一些限制,可以在开头加域名来绕过
可以先简单枚举几个弱口令试试,没进去先放收藏夹:
admin/admin123
admin/123456
admin/admin
site:xx.com inurl:login|admin|manage|member|admin_login|login_admin|system|login|user
查找sql注入漏洞
inurl:.php?id=23 校名
inurl:.asp?id=1
这条我啥都没搜到
查找上传点:
site:xx.com inurl:file|uploadfile
翻到一个页面,可以结合前面下载的缺陷看看有没有身份证号+学号+姓名的文件
查找敏感信息泄露
intitle:“Index of /admin”
intitle:“Index of /root”
intitle:“Index of /” +password.txt
无结果
intitle:phpinfo()或者inurl:phpinfo.php
无结果
查找未授权访问phpmyadmin
inurl:.php?intext:CHARACTER_SETS,COLLATIONS, ?intitle:phpmyadmin
这一整套下来基本上都是搜集资产,没有啥发现哈
三、学校资产收集
1、FOFA&鹰图
网络空间测绘,网络空间安全搜索引擎,网络空间搜索引擎,安全态势感知 - FOFA网络空间测绘系统
鹰图平台(hunter)-奇安信网络空间测绘系统
两者语法稍微有些不一样,但是可以互补
蛮推荐icp和图标来查找的
icp备案
icp=" 湘ICP备xxxxxxxxxx-1"
2、整合
就是用之前的端口扫描,目录爆破和子域名进行整合,用脚本啊或者其他的整合进一个表格。
四、总结:
用以上方法收集资产然后进行整合,然后提取js的敏感信息。以上的工具还有多种用途,这里只是展示用于信息收集的用法。