转载之前说几句: 1、最近 ZoomEye 正在如火如荼组建 ZoomEye Pirate Team(钟馗之眼海盗团队,简称 ZPT),这篇文章是 ZPT 成员 k0shl 之作; 2、ZPT 会让 ZoomEye 更开放更强大,会让整个网络空间攻防对抗更有力量; 3、感谢在努力成为海盗的你们,我代表 ZoomEye 会给你们应有的荣耀与收益! 作者 k0shl,首发在「i春秋社区」,并授权懒人在思考发布。 0x01 启航写在前面 大家好,我是菜鸟 k0shl,今天给大家带来的是关于 ZoomEye 和 Seebug 二进制恶魔果实的神奇力量初探与思考。 近期,ZoomEye 开放了 API,也加大了我们与这款强大的搜索引擎的融合度,在使用过程中,我慢慢探索了一些关于 ZoomEye Seebug 这个强大的恶魔果实的力量,但个人水平有限,而网络空间的暗物质十分丰富,ZoomEye 探测到的 banner 也相当庞大,更多精彩更酷的内容,有待海盗们继续深入探索。 要想早日踏上伟大航路,需要打造属于我们的“梅莉号”!对于 ZoomEye 的架构,每个人都有不同的设计思路,在这里分享一下我的设计思路,架构分为四个模块。
下面对模块信息进行简要讲解。 首先是登陆部分,需要用账号密码登录获取服务器返回的 token,之前碰到了服务器的 bug,刚开始我以为是密码编码的问题,后来改成了简单的弱口令仍然不行,最后和 yoyo 反映后,联调发现是服务器的一个 bug,这样就能顺利返回 access_token 了:
另外 API 交互是用 JSON 格式,这样在获取返回信息的时候也很方便,就用 json.dump 和 json.loads 来读取 JSON 格式。 这个 token 是和 ZoomEye API 交互的关键部分,接下来请求中需要用到这个 token,在 Authorization 字段中需要加入这个 token,根据官方文档,需要在 access_token 前加上 JWT:
然后进一步利用 ZoomEye 的时候主要有3种方法,其实 ZoomEye 的利用非常简单,主要就是通过 get 包和 post 包实现,但真正对暗物质的探索,还是在搜索部分。ZoomEye 对 banner 的识别非常强大,这里我只是抛砖引玉。 对主机和 Web 服务器基本信息情况进行一个简单的探测:
可以返回一部分主机和 Web 信息,ZoomEye 对普通用户开放的扫描权限相对有限,但每天都会更新一部分主机和 Web 服务器信息,因此对于我们此次的初探来说已经够用了。 可以看到可以搜索到的信息相对有限,但是这并不妨碍我们的探测。接下来,针对 url:/host/search 和 /web/search,提供了两种搜索方法,根据官方文档,其主要区别还是在于 JSON 元素的不同,针对主机和 Web 服务搜索的元素不同。打个简单的比方,对于主机可以通过搜索 app、version、device 等搜索主机信息;而对于 Web,可以通过搜索 header、title、keywords 等搜索 Web 服务器信息。
|
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|