午夜漫谈:一次推测未知服务的过程
2021-01-06 16:20:00 Author: mp.weixin.qq.com(查看原文) 阅读量:116 收藏

亲爱的,关注我吧

1/6

本文字数1985

预计要花费8分钟的时间阅读哦

0x00 起因

昨天晚上赛博群依旧是日常讨论奇奇怪怪得东西,突然我可爱的男神rr提到一个未知的端口服务,说这个服务困扰了自己好几年也没有得到答案。我第一时间肯定是要在男神面前表现自己啊,马上拍板说自己周末日下几台看看是什么服务。可谁知道龙哥跳了出来,随便搜了搜就推测是SXF防火墙。龙哥这一提,我就坐不住了也等不到周末了,决定马上打开显示器搜搜看到底是什么。

0x01 开始冲浪

我们先来看看是什么服务

根据rr给出的链接,我们可以知道该服务两个特征:

1、默认端口号是9000

2、返回如图,关键词yesorno并且还有一些乱七八糟的字符

这里我们在zoomeye里搜到的大概结果有2k+(其实我比较喜欢fofa,但rr给的链接是zoomeye) 如果按照之前的逻辑我肯定会考虑先去挑个软柿子登上去看看是什么服务,这对于我这个菜鸡来说可能就变成了一个永远被放置的事情。这时候龙哥跳出来说了几句

有一说一,龙哥不愧是老江湖,敲敲键盘,点点鼠标就基本得出可能是sxf的设备。那么我肯定要论证一下,不能在男神面前丢人!姑且打开zoomeye看了一圈,发现有该服务的ip其他端口都可能变动,唯有两个端口大概率成对出现,一个是目标端口9000,另一个端口是7443

0x02 冷静分析

通过翻看一些案例,确实可以看到大概率成对出现这两个端口。当然其他端口也会有,那为什么我们关注这两个端口呢?原因很简单,像443、23端口都是常规端口,哪怕每次都出现也证明不了什么。但是这两个端口都是非常规端口,同时出现的概率那么高肯定暗示着某种内在联系。我们的目的是确认9000端口是什么服务,但看起来就无从下手,既然7443大概率和9000有联系,我们就先从7443端口开始入手。

这里我们直接通过http访问7443端口显示not work,可是它既然是7443很显然我们可以试试https去访问

出来了,一个500报错页面,看起来获取不到太多有用的信息,这个页面也和zoomeye上捕捉的返回一致。那接下来怎么办呢?既然是https,我们可以看看证书

好家伙,那这基本上是可以石锤是sxf的设备了。可是是什么设备呢?我们通过很多个案例翻找,可以看到有些有443端口开着,多访问几个

好几个都是这个页面,那基本上就可以确定是sxf下一代防火墙了。简单总结一下:

  • 确定非常规端口组合9000和7443端口有高概率同时出现,推断两者有内在联系

  • 通过非常规7443端口上的证书我们找到了sangfor字样确定此为sxf设备

  • 通过常规端口443开放在外面并且可能是sxf的管理页面确定对应的设备为下一代防火墙

0x03 确定服务

前面我们已经论证9成概率是sxf防火墙了,那么还需要确定服务。9000端口到底是什么服务呢?在不捏软柿子的前提下,最简单的方式就是先搜索 组合几个关键字搜一搜

几个关键词直接把我们送到了sxf的社区,基本也告诉我们这9000端口是网页防篡改2.0的端口。多搜几个帖子,零零碎碎的回答基本也差不多拼凑出全貌了

好了基本上该有的都有了,不该有的也有了。最终结论就是sxf防火墙网页防篡改2.0的服务。(至于有没有0day什么的嘛,就不好再说了,这也不在这个文章范畴里)

0x04 小细节

其实我很想用fofa来搜这个,但是不知道为啥fofa搜出来是这样的

居然只有1台?!我感觉不科学,一开始我以为我语法有问题,看了半天好像也没什么太大问题。可是不管我怎么搜,哪怕直接搜yesorno都不行

只有1441个,且都不是我要的,后来我直接搜9000端口,翻了好一会才找到一个

好家伙,在fofa里的响应里是十六进制的,我们直接复制这一串搜搜看

有了,8万多条,整整比zoomeye多了几个量级。同样也比我们直接搜yesorno多几个量级。这里我们也可以得出在有类似“\x00”的响应里,fofa搜索关键词好像是没有用的,哪怕这里面包含了目标关键词。

0x05 展开

其实想了想整个分析的流程,可以搞一个脚本通过fofa来做统计评估。

1、输入未知服务的端口和响应特征

2、通过fofa将结果集拉出,进行整理

3、将与目标端口高概率出现的端口进行统计排序(剔除掉常规端口),以及可能的其他端口出现的响应关键词做频率分析,可能的话加入证书等一些其他常见特征

4、基本上就能得出目标大概率是什么关联的设备或服务了,如果人工在加入分析分析

可能会是个有趣的脚本hhhhh

作者的一些补充:

同样的条件zoomeye搜出来更多,我试了一下确实。文中说zoomeye搜的少是我疏忽了。再补充一下,今天群里的师傅提到sxf防火墙占有率很高可能导致误判,这一点确实很有帮助。说实话纯手工的话可能还是有一些运气和偏见在里面。后续考虑写出分析脚本,把一些类似于产品占有率的客观因素当做一个校准的变量来进行模型评分。一般来说可以定一个判断阈值,超过阈值很多的话大概率是强关联。对于一些其他已知的干扰因素可以做为系数对模型进行校准,当然我们也可以对结果集进行排序给出最有可能的几个参考范围,人工在做调整即可。听起来很复杂脚本写出来了的话,评估其实是很简单的,这里面基于一个共识:高概率关联的特征肯定存在内在的规则。

这个规则可能是两端口同一个设备,也可能是同一个行业的公共服务然后这个行业都爱用sxf。但不管是哪个,我们都需要通过完善评估模型来预测然后再人工校准来证明预测结果准确性。

1/6

欢迎投稿至邮箱:[email protected]

了解稿件投递相关

请点击公众号菜单:【来撩我吧】-原创征集

有才能的你快来投稿吧!

快戳“阅读原文”做学习人

文章来源: http://mp.weixin.qq.com/s?__biz=MjM5MTYxNjQxOA==&mid=2652869509&idx=1&sn=14dece7bad1049d1f28ba74effb80802&chksm=bd59ef488a2e665e2fc26b1649d96567768db8fce9fd244b79b68eae03bca3b708bfc0399378#rd
如有侵权请联系:admin#unsafe.sh