Kunyu(坤舆)——更高效的企业资产收集

2023-10-13 06:50

本文主要是介绍Kunyu(坤舆)——更高效的企业资产收集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载于https://www.anquanke.com/post/id/248743

robots

 

0x00 介绍

工具介绍

Kunyu (坤舆),名字取自 <坤舆万国全图> ,测绘实际上是一个地理信息相关的专业学科,针对海里的、陆地的、天上的地理信息进行盘点。同样应用于网络空间,发现未知、脆弱的资产也是如此,更像是一张网络空间地图,用来全面描述和展示网络空间资产、网络空间各要素及要素之间关系,以及网络空间和现实空间的映射关系。所以我认为“坤舆”还是比较贴合这个概念的。

Kunyu(坤舆),旨在让企业资产收集更高效,使更多安全相关从业者了解、使用网络空间测绘技术。

应用场景

对于 kunyu 的使用,应用场景可以有很多,例如:

  • 企业内遗忘的,孤立的资产进行识别并加入安全管理。
  • 企业外部暴露资产进行快速排查,统计。
  • 红蓝对抗相关需求使用,对捕获IP进行批量检查。
  • 批量收集脆弱资产(0day/1day) 影响内的设备、终端。
  • 新型网络犯罪涉案站点信息进行快速收集,合并,进行更高效的研判、分析。
  • 对互联网上受相关漏洞影响的脆弱资产,进行统计、复现。
  • …….

 

0x01 安装

需要Python3以上的支持

git clone https://github.com/knownsec/Kunyu.git
tar -xvf Kunyu.tar
cd Kunyu
pip3 install -r requirements.txt
Linux:python3 setup.py installkunyu console
Windows:cd kunyupython3 console.py

 

0x02 配置说明

在第一次运行程序时通过输入以下命令进行初始化操作,提供了其他登录方式,但是推荐使用API的方式,因为用户名/密码登录需要额外做一次请求,所以理论上API的方式会更加高效。

kunyu init --apikey <your zoomeye key> --seebug <your seebug key>

 

0x03 工具使用

命令详解

kunyu console

ZoomEye

Global commands:info                                   Print User infoSearchHost <query>                     Basic Host searchSearchWeb <query>                      Basic Web searchSearchIcon <File>/<URL>                Icon Image searchSearchBatch <File>                     Batch search HostSearchCert <Domain>                    SSL certificate SearchSearchDomain <Domain>                  Domain name associated/subdomain searchSeebug <Query>                         Search Seebug vulnerability informationset <Option>                           Set arguments valuesExportPath                             Returns the path of the output fileclear                                  Clear the console screenshow                                   Show can set optionshelp                                   Print Help infoexit                                   Exit KunYu &

OPTIONS

ZoomEye:page <Number>    查询返回页数(默认查询一页,每页20条数据)dtype <0/1>      查询关联域名/子域名(设置0为查询关联域名,反之为子域名)btype <host/web> 设置批量查询的API接口(默认为HOST)

使用案例

这里我们使用 ZoomEye 模块进行演示

用户信息

HOST 主机搜索

Web 主机搜索

批量 IP 搜索

Icon 搜索

在搜集企业资产时,我们可以使用这样的方式进行检索相同 ico 图标资产,在关联相关企业资产时,通常会有不错的效果。但是需要注意的是如果某些站点也使用这个 ico 图标,可能会关联出无关资产(但是无聊用别人 ico 图标的人总归是少数吧)。支持url或本地文件的方式搜索。

SSL证书搜索

通过 SSL 证书的序列号进行查询,这样关联出来的资产较为精准,能搜索出使用相同证书的服务。碰到https站点时,可以通过这样的方式。

关联域名/子域名搜索

对关联域名以及子域名进行搜索,默认查询关联域名,可以通过设置 dtype 参数设置两种模式。

Seebug漏洞查询

通过输入想要查找的框架、设备等信息,查询历史相关漏洞,但是需要注意仅支持英文,这里后期会进行改进,升级。

设置参数

当设置set page = 2时,返回结果为40条,大家可以通过修改page参数,设置查询的页数,需要注意1 page = 20/条 ,可以根据需求修改该值,获取更多返回结果。

通过show显示可配置的参数,以及参数当前的值。

数据结果

搜索的所有结果都保存在用户根目录下,并根据当前时间戳创建目录。单次启动的所有查询结果都在一个目录下,保存为Excel格式,给予更加直观的体验。可以通过ExportPath命令返回输出路径。

 

0x04 Loading

​ 其实还有很多的思路,但是作为 Alpha 版本先这样,后期会不断进行完善的,希望 Kunyu (坤舆)能够让更多安全从业者所知,谢谢各位的支持。

​ 工具框架有参考昆仑镜、Pocsuite3,都是非常棒的作品。

​ 感谢 KnownSec 404 Team 的全体小伙伴。

“ 看得清 ” 是能力的体现,是 “ 器 ” ,而 “ 看得见 ” 就是思想的体现,那最后关联的是 “ 道 ”。

​ —SuperHei

 

0x05 Issue

1、多因素搜索

ZoomEye搜索可以使用多因素搜索,dork:cisco +port:80(注意空格) 可以搜索符合cisco以及port:80条件的所有数据,如果没有中间的空格则为同一搜索条件,则为满足cisco并且端口为80的所有数据。Kunyu的dork无需引号。

2、高精地理位置

ZoomEye给予特权用户高精地理位置的数据,但是需要注意的是普通用户,则不具备该功能,望周知。

3、用户名/密码登录

如果您使用的是username/password作为初始化条件,那么所获得token时效为12小时,如果发现您的搜索不能返回数据,那么不妨info一下,如果会话超时则会返回初始化命令提示。绝大多数情况下我们建议您使用API KEY的方式,则不存在失效问题。这样的设计也是为了您账号密码的安全性,毕竟API KEY可以重置,token会失效,但是有了账号密码,则有可能登录您的ZoomEye账户。

4、Cert证书搜索

需要注意的是,按照常规逻辑,您需要将目标ssl证书的序列号进行十六进制编码后才能配合语句搜索,但是Kunyu则仅需要提供Domain地址则可以检索。原理是对目标站做了一次请求获取到了序列号并进行处理,但是如果您的主机无法访问需要搜索的目标则无法检索,这时您也可以按照常规方法配合语句搜索。

5、Favicon图标搜索

ico图标搜索既支持URL检索,又支持本地ico图标文件搜索,这样有了更好的延展性,以及兼容性。

6、查询数据保存路径

默认情况下您的查询数据在用户目录下的Kunyu文件夹中,您也可以在console模式中使用ExportPath命令查询路径。

7、自动补全

Kunyu的自动补全支持大小写,命令记录等,使用Tab进行补全,用法参见Metasploit即可。

 

0x06 Contributions

风起@knownsec 404
wh0am1i@knownsec 404
fenix@knownsec 404
0x7F@knownsec 404

 

0x07 Community

如果有问题可以在项目下提交issue,或通过以下方式联系我们。

1、扫描一下二维码添加ZoomEye运营微信,并备注坤舆,会把大家拉到ZoomEye网空测绘交流群中

                </div>

这篇关于Kunyu(坤舆)——更高效的企业资产收集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/201496

相关文章

C++高效内存池实现减少动态分配开销的解决方案

《C++高效内存池实现减少动态分配开销的解决方案》C++动态内存分配存在系统调用开销、碎片化和锁竞争等性能问题,内存池通过预分配、分块管理和缓存复用解决这些问题,下面就来了解一下... 目录一、C++内存分配的性能挑战二、内存池技术的核心原理三、主流内存池实现:TCMalloc与Jemalloc1. TCM

Python基于微信OCR引擎实现高效图片文字识别

《Python基于微信OCR引擎实现高效图片文字识别》这篇文章主要为大家详细介绍了一款基于微信OCR引擎的图片文字识别桌面应用开发全过程,可以实现从图片拖拽识别到文字提取,感兴趣的小伙伴可以跟随小编一... 目录一、项目概述1.1 开发背景1.2 技术选型1.3 核心优势二、功能详解2.1 核心功能模块2.

基于Python构建一个高效词汇表

《基于Python构建一个高效词汇表》在自然语言处理(NLP)领域,构建高效的词汇表是文本预处理的关键步骤,本文将解析一个使用Python实现的n-gram词频统计工具,感兴趣的可以了解下... 目录一、项目背景与目标1.1 技术需求1.2 核心技术栈二、核心代码解析2.1 数据处理函数2.2 数据处理流程

Python中bisect_left 函数实现高效插入与有序列表管理

《Python中bisect_left函数实现高效插入与有序列表管理》Python的bisect_left函数通过二分查找高效定位有序列表插入位置,与bisect_right的区别在于处理重复元素时... 目录一、bisect_left 基本介绍1.1 函数定义1.2 核心功能二、bisect_left 与

Python使用FFmpeg实现高效音频格式转换工具

《Python使用FFmpeg实现高效音频格式转换工具》在数字音频处理领域,音频格式转换是一项基础但至关重要的功能,本文主要为大家介绍了Python如何使用FFmpeg实现强大功能的图形化音频转换工具... 目录概述功能详解软件效果展示主界面布局转换过程截图完成提示开发步骤详解1. 环境准备2. 项目功能结

Python Pandas高效处理Excel数据完整指南

《PythonPandas高效处理Excel数据完整指南》在数据驱动的时代,Excel仍是大量企业存储核心数据的工具,Python的Pandas库凭借其向量化计算、内存优化和丰富的数据处理接口,成为... 目录一、环境搭建与数据读取1.1 基础环境配置1.2 数据高效载入技巧二、数据清洗核心战术2.1 缺失

使用Python和SQLAlchemy实现高效的邮件发送系统

《使用Python和SQLAlchemy实现高效的邮件发送系统》在现代Web应用中,邮件通知是不可或缺的功能之一,无论是订单确认、文件处理结果通知,还是系统告警,邮件都是最常用的通信方式之一,本文将详... 目录引言1. 需求分析2. 数据库设计2.1 User 表(存储用户信息)2.2 CustomerO

Java中的StringBuilder之如何高效构建字符串

《Java中的StringBuilder之如何高效构建字符串》本文将深入浅出地介绍StringBuilder的使用方法、性能优势以及相关字符串处理技术,结合代码示例帮助读者更好地理解和应用,希望对大家... 目录关键点什么是 StringBuilder?为什么需要 StringBuilder?如何使用 St

MySQL重复数据处理的七种高效方法

《MySQL重复数据处理的七种高效方法》你是不是也曾遇到过这样的烦恼:明明系统测试时一切正常,上线后却频频出现重复数据,大批量导数据时,总有那么几条不听话的记录导致整个事务莫名回滚,今天,我就跟大家分... 目录1. 重复数据插入问题分析1.1 问题本质1.2 常见场景图2. 基础解决方案:使用异常捕获3.

如何高效移除C++关联容器中的元素

《如何高效移除C++关联容器中的元素》关联容器和顺序容器有着很大不同,关联容器中的元素是按照关键字来保存和访问的,而顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的,本文介绍了如何高效移除C+... 目录一、简介二、移除给定位置的元素三、移除与特定键值等价的元素四、移除满足特android定条件的元