从0起步学习网络安全(学习篇):DAY05 Webshell管理工具+信息收集起步(1)-CSDN博客
上一章呢,我们较为详细地分享了3种WebShell管理工具的使用,之前我们在DAY03中也提到过,对于Web安全而言,有时候恰当的信息收集手段会有着事半功倍的效果,那么,接下来,我们将会就着这个问题入手继续开展本周的学习分享啦~😉😉😉😉😉😉
既然说到信息收集,在大语言模型出来之前大家会通过怎样的手段来获取信息呢?当然还是有很多的啦,比如读书看报之类的,但是论信息收集的广度与速度,搜索引擎,比如说百度、Google等,还是有着举足轻重的地位的,那么,我们就从搜索引擎入手开始我们的学习分享吧~
一、物联网搜索引擎
对于大家而言,“搜索引擎”并不是一个陌生的词汇,毕竟这玩意儿大家几乎天天在用;物联网对大家而言,应该也不算陌生,毕竟现在万物互联的时代,物联网一词也算是司空见惯了。那么,这个物联网搜索引擎又是个啥子东东咧?
物联网搜索引擎是针对物联网领域信息检索需求设计的专业搜索引擎。它能够高效、准确地搜索物联网中的海量数据,可扫描和索引服务器、路由器、智能家电、摄像头等各种连接互联网的设备,提供设备的开放端口、服务版本等详细信息。
与普通搜索引擎相比,物联网搜索引擎的搜索对象主要是物联网设备及其相关数据,如服务器、摄像头等设备的端口、服务版本信息,而非网页等常规内容。其搜索结果更注重时空性,能提供设备的实时动态信息和物理空间位置。
常用的物联网搜索引擎还是比较多的,比如说FOFA、ZoomEye、Censys、Shodan等
1、FOFA
网络空间测绘,网络空间安全搜索引擎,网络空间搜索引擎,安全态势感知 - FOFA网络空间测绘系统
1.1 FOFA简介
FOFA(Fingerprinting On Foreign Assets)是⼀款专注于网络空间测绘的搜索引擎。主要⽤于发现 暴露在互联⽹上的设备、服务器、数据库、摄像头等IoT设备。目前广泛应用于渗透测试、网络挖掘、红队攻防等领域。
其数据来源主要有以下途径:
- 全球IP扫描(Web服务、开放端⼝、协议指纹)
- Web应用特征(HTML标题、关键词、ICO图标哈希)
- IoT设备指纹(摄像头、路由器、工控设备等)
1.2 FOFA语法使用与搜索
由于FOFA的查询语法很多,所以呢,博主建议感兴趣的朋友,可以点击搜索框下面的查询语法自行查看哈
1.2.1 核心功能
- 精准搜索
1. ⽀持 IP、域名、端口、协议、国家、城市 等条件筛选。IP搜索 域名搜索 端口搜索(顺便把 域名搜索带上) 协议搜索 国家搜索 城市搜索
2. 可基于 网站标题、关键词、HTTP Header、证书信息 进⾏搜索。标题搜索 关键词搜索(这些关键词都可以在网页源码中找到) HTTP Header搜索 利用请求头搜索,我们可以在响应头中找到 - IoT设备搜索
可搜索 摄像头、路由器、数据库、工控设备 等 IoT 设备,比如说用下面的语法搜索一下port="554" && protocol="rtsp"
-
漏洞利用辅助
结合 CVE 漏洞 搜索暴露的脆弱设备,就比如说,上一章我们Ngnix靶场所存在的漏洞 ,我们也来搜索一下app="nginx" && after="2013-01-01"
1.2.2 搜索规则一览表
简单看了一下FOFA的核心功能,我们可以通过下面的途径来看看FOFA支持搜索哪些品牌,比如说我们简单地搜一下“d-link”,就可以查到它所使用的规则
比如说,在上一章我们提到的phpinfo,然后我们随便点击进入一个目标,就可以查询到它的PHP信息,这也相当于另一种信息泄露,这样方便后期针对PHP制作的网页进行一些实验,对,只是试验
另外,我们还可以输入下面的语句,从而获取该服务器下的目录结构,但是价值不大
"index of"
2、ZoomEye(钟馗之眼)
首页 - 网络空间测绘,网络安全,漏洞分析,动态测绘,钟馗之眼,时空测绘,赛博测绘 - ZoomEye("钟馗之眼")网络空间搜索引擎
2.1 ZoomEye简介
ZoomEye 是知道创宇旗下 404 实验室开发的网络空间搜索引擎,中文名 “钟馗之眼”,它通过分布在全球的测绘节点,对全球范围内的 IPv4、IPv6 地址库及网站域名库进行 24 小时不间断探测,能发现互联网设备和服务的公开信息,提供设备搜索、服务搜索、漏洞检测等功能,广泛应用于网络安全研究、漏洞分析等领域
2.2 ZoomEye搜索规则与使用
实际上ZoomEye的使用方法与FOFA几乎没啥区别,语法的话点击搜索框旁边的语法说明,即可查询到,在这里我们就简单地演示一下,不过多阐述了
3、实战演练:搜索IoT设备
既然知道了有物联网搜索引擎这个工具,咱们也得操练操练,当然,千万别拿国内的试水,搞不好真的会引火上身的,所以呢,博主向大家演示一下,如何利用FOFA搜索美国暴露的摄像头,当然不是黑啦,毕竟没那个实力,等后期的话,看机会吧,嘻嘻嘻~
我们在FOFA中输入以下信息
title="Camera Login" && country="US" && port="80"
接下来,我们随便点击进入一个,就看到了摄像头的后台管理页面,当然现在博主先不强行攻击,毕竟时间有限,呃,能力也不足……
二、信息收集起步
在 Web 安全攻防中,攻击⼿段固然关键,但前期的精准信息收集更是重中之重——它远不只是简单地找子域名、扫目录、测端口,而是一门洞悉目标全貌的艺术。信息搜集(Reconnaissance)是渗透测试和攻防对抗的基石
可以这么讲,90%的漏洞始于信息暴露
1、信息收集的作用
1.1 核心作用
- 发现影子资产:未纳⼊安全管理的测试环境、过期域名、遗留服务器(占⾼危漏洞的63%)
- 暴露脆弱入口:未授权访问的Redis端口、暴露的Kibana面板、备份⽂件下载路径
1.2 攻击效率提升
方法 | 无信息搜集 | 系统化信息搜集 |
漏洞发现耗时 | 全端口盲扫(10+⼩时) | 定向攻击已知服务(<1⼩时) |
扫描触发告警率 | 90%(WAF封禁IP) | <10%(伪装正常流量) |
漏洞挖掘深度 | 表⾯漏洞(如⽬录遍历) | 业务逻辑漏洞(支付绕过/越权) |
2、信息收集基本流程
2.1 信息收集流程框架
2.2 自动化信息收集阶段
使用⼀下知名的自动化信息收集工具,帮助我们快速的进行大致的信息收集,也能与手工信息收集结果相互补充2.2.1 灯塔ARL
https://github/Aabyss-Team/ARL
ARL(Asset Reconnaissance Lighthouse)资产侦察灯塔系统旨在快速侦察与目标关联的互联网资产,构建基础资产信息库。 协助甲方安全团队或者渗透测试人员有效侦察和检索资产,发现存在的薄弱点和攻击面。
2.2.1.1 ARL的下载与安装
由于在Windows上安装ARL还挺麻烦的,而且我们主要是以体验为主,所以呢,博主直接通过Docker上安装的ARL,当然,也不是在Windows上的docker,而是Kali上的docker,下面,我们来看看如何安装ARL吧
- 通过以下命令获取ARL的安装脚本
# 国外 wget https://raw.githubusercontent/Aabyss-Team/ARL/master/misc/setup-arl.sh chmod +x setup-arl.sh ./setup-arl.sh #国内 wget https://raw.gitcode/msmoshang/ARL/raw/master/misc/setup-arl.sh chmod +x setup-arl.sh ./setup-arl.sh
-
下面我们进入安装页面,请按照下面的方法安装哈,选择3)Docker安装
-
由于Docker仅支持国外环境,所以我们直接选2)国内环境
-
直接输入1,这个可能需要一点时间……下一个页面输入2,博主选择的是清华大学的镜像源
-
由于咱们之前已经安装过docker了,所以我们直接输入y,这里的话,博主简单回应一下,为什么这次咱们不在windows上安装ARL,主要是获取到的安装包是.sh文件,windows无法解析,不太好安装博主遇到了点小问题,就是镜像拉取十分缓慢,跟卡住了一样,所以呢,博主就采用了另一种方法。所以博主就用了一个比较投机取巧的方法,下面呢,博主将对应的.tar文件和zip的下载链接放在下面:ARL.zip_免费高速下载|百度网盘-分享无限制
- 下面,我们将压缩包中的文件通过MobaXterm上传发到kali上,并通过以下指令将.tar文件作为镜像导入docker
docker load < arl_2.6.1.tar docker load < arl_rabbitmq.tar docker load < arl_mongo.tar
- 接下来,我们将文件夹中的.zip文件夹解压,并进入其中的docker文件夹中,并通过以下命令找到隐藏文件.env,并且进行编辑
ls -a vim .env
- 下面,我们利用一下命令创建数据库,之后通过命令行启动灯塔,为了验证是否启动成功,我们可以访问一下安装的虚拟机的IP地址的5003端口
docker volume create arl_db docker compose up -d
-
出现以下图像,即为安装成功,默认账号密码admin/arlpass(友情提醒:登陆后请立即修改密码)
2.2.1.2 使用ARL
ARL 资产灯塔系统安装和使用文档
下面,博主来简单演示一下ARL如何使用哈,我们利用这个工具来扫描某个教育机构提供的网址,但是,博主在此声明:博主的所有操作是经过该机构批准的,并且不会擅自攻击,仅限资产扫描,擅自攻击者需承担相应的法律责任,后果自负!!!!!!😑😑😑😑😑😑😑
- 点击添加任务,并输入相关配置
这里呢,博主对部分任务配置进行简单说明一下:
· 目标:任务目标,支持IP,IP段和域名。可一次性下发多个目标
· 域名爆破类型:对域名爆破字典大小,
大字典:常用2万字典大小。
测试:少数几个字典,常用于测试功能是否正常
· 端口扫描类型:
ALL:全部端口,
TOP1000:常用top 1000端口,
TOP100:常用top 100端口,
测试:少数几个端口
· 跳过CDN:这里咱们说一下,啥是CDN,通俗一点,咱们可以将它视为一个服务器资源的缓存,方便不同地区的用户进行访问,所以说,扫描CDN的话并不能获取到我们想要的资源信息,所以,对判定为CDN的IP, 将不会扫描端口,并认为80,443是端口是开放的
· 站点识别:对站点进行指纹识别,关于什么是站点的指纹,咱们可以这样理解, 比如传送数据的包有多大、发得多勤,或者服务器回消息时带的特殊信息,甚至web前后端用的是什么框架搭建的,都可以成为站点的指纹特征
· 搜索引擎调用:利用搜索引擎搜索下发的目标爬取对应的URL和子域名,这可比人工要快得多了……
· 站点爬虫:利用静态爬虫对站点进行爬取对应的URL
· 站点截图:对站点首页进行截图,这样可以让我们直接看到目标网页的前端布局,省的咱们用URL一个个去找了
· 文件泄露:对站点进行文件泄露检测,会被WAF拦截,文件泄露比较经典的操作应该算是咱们再fofa上演示的 index of 了
· WIH调用:WIH是一款功能强大、易用性高、扩展性强的命令行工具,可以快速地获取指定网页中的各种特定信息,旨在快速批量地查找指定网页中 JS 中的各种特定信息,例如子域名、路径、URL、邮箱、IP、手机号、AK 和 SecretKey 等。
- 保存之后即可开始扫描任务,在这里建议大家把代理关掉,不然的话感觉扫描出来的结果有点怪怪的……下面,我们就可以让系统自动去搜索目标网站有哪些子域名、服务等
站点信息 子域名信息 IP信息(包括操作系统和端口) 服务信息 暴露的文件信息 爬虫爬取到的URL信息 - 点击资产搜索,即可通过相应的关键词来找出具有该特征的站点信息,比如,我们以web前端常用的wordpress框架和后端常用的nginx为指纹信息来查找一下
- 下面,如果我们想要使用资产监控,来实时获取资产变动情况,我们需要先创建资产分组,首先先点击资产分组,随后点击新建资产分组,输入相关信息后点击确定
- 下面,我们点击策略配置,新建策略方便后期针对性调用到资产监控中,根据自己的需要和要求选择相关配置,点击确认即可完成策略配置
- 点击资产分组,点击添加监控任务,选定范围,即所要扫描的资产分组,和策略,即我们之前配置好的策略 ,点击确定即可,运行间隔咱们根据自己需要设置。之后点击资产监控,即可看到我们刚刚添加的资产监控在运行了
- 可以在计划任务模块中添加定时任务和周期任务,定时选择指定的时间运行,期间只运行一次。周期任务采用Cron表达式, 系统限制了最少间隔6小时 如每天的2点10分触发任务下发(这里不保证任务立即运行,如果队列中有任务将会排队。),应在Cron中输入10 2 * * * ,选择任务类别:
· 资产发现:该任务目标支持 IP、IP 段和域名,通过域名解析、递归子域名、IP 端口信息扫描、关联分析等多种方式,对资产进行端口识别、服务识别、系统识别等。同时还会爬取站点 URL,并对首页进行截图,旨在快速发现并整理企业外网资产,构建基础资产信息库
· 风险巡航:是对特定目标进行自动化流行漏洞扫描的任务。用户需要输入确定的地址(IP 或域名),在流行漏洞爆发时,可通过搜索功能筛选出站点,选择策略扫描当前流行漏洞,帮助用户发现资产存在的风险,降低资产被威胁利用的可能性
- 最后呢,再向大家介绍一下ARL的GitHub管理和监控,因为GitHub作为目前世界上最常用的代码托管平台之一,有很多的优质资源可供使用,同时,也会是部分敏感信息泄露的重灾区之一当然,为了使用这个功能需要先在
docker/config-docker.yaml
配置GitHub Token。登录GitHub , 访问https://github/settings/tokens
点击Generate new token
按钮,过期时间可以选择No expiration。
这里只是用来搜索,权限可以不勾选。- GitHub 任务管理 :添加任务输入相应的关键字,等待任务运行完成,可以点击任务查看运行结果
-
GitHub 监控管理:添加监控任务,输入相应的关键字,一般为内网域名,根据自身需求输入相应的Cron表达式即可。
2.2.2 水泽
协助红队⼈员快速的信息收集,测绘⽬标资产,寻找薄弱点。使⽤python3开发,提供⼀条⻰服 务,只需要输⼊根域名即可全⽅位收集相关资产,并检测漏洞。也可以输⼊多个域名、C段IP等2.2.2.1 水泽的安装
0x727/ShuiZe_0x727: 信息收集自动化工具
为了方便安装,博主在此之前搞到了水泽的安装包,并且已经将它上传到了kali上,下面,我们将压缩包解压一下
2.2.2.2 水泽的使用
其中shuize.sh已经封装了所有的方法,直接使用以下命令,即可运行
./shuize.sh -d 域名
当然,如果是第一次运行,会先拉取shuize的docker镜像如果安装成功,输入以下指令即可查看水泽的使用指南
./shuize.sh -h
下面,我们开始演示如何使用水泽。
- 在配置文件iniFile/config.ini里加入api(如fofa、shodan、github、virustotal等)
- 通过脚本执行命令
./shuize.sh -d 域名
-
配备了GitHub Token后的扫描结果,会比不配置要详细很多,而且更加精确
-
配置了FOFA的API的扫描结果,扫描面更大更详细,
-
-
随后,我们可以在result文件夹下找到历次扫描记录,我们双击点开,可以看到一个.txt文件和.xlsx文件,其中xlsx文件和txt文件中就保存了我们本次扫描到的目标服务器的资产信息
三、一周小结
本周呢,因为博主本人要处理一点事,所以更新的比较迟,在此我们简单地回忆一下我们这周都学习了些什么,首先呢,博主向大家分享了一些比较常用的WebShell管理工具 ,并且带着大家在靶场上体验了一下利用WebShell控制服务器的过程,并且跟大家一起简单地为信息收集开了一个小头,比如简单地介绍了一下两款很强大,并且也是博主很喜欢的物联网搜索引擎:FOFA 和 ZoomEye,并且结合这两款物联网搜索引擎,配合ARL和水泽,两款自动化信息收集工具,针对某个网站进行了资产信息收集,可以说搜集到的资产信息还是非常庞大的。
当然,正是因为我们已经进入了信息收集的学习,而且也见识到了信息收集工具的恐怖之处,所以,博主必须在这里严正声明:博主所做的一系列操作均是第三方允许的,且不具备任何攻击性的行为,请不要利用技术之便,擅自查询他人/公司资产信息,甚至是进行渗透攻击,以上行为均需承担相应的法律责任!!!!!!!
当然,本次的学习分享先告一段落了,但是呢,本周的学习还没有完全结束哦~,作业篇还在疯狂地撰写,感谢大家的支持哈,当然留下你的一键三连+关注,也是博主更新的最大动力哦~ 😇😇😇😇😇
发布者:admin,转转请注明出处:http://www.yc00.com/web/1754094094a5117573.html
评论列表(0条)