Domainim:一款高效的企业级网络安全扫描工具

关于Domainim

Domainim是一款功能强大的企业级网络安全扫描工具,该工具运行效率高,功能完善,可以帮助广大研究人员针对企业或组织网络执行大规模安全扫描任务。

该工具可以快速执行网络安全扫描和域名/子域名网络侦查任务,旨在使用OSINT、暴力破解以及DNS解析等技术提供关于目标组织网络安全态势的简要概述。该项目灵感来源于Sublist3r项目,其端口扫描模块基于NimScan项目实现其功能。

功能介绍

当前版本的Domainim支持下列功能:

1、子域名枚举(2个引擎 + 暴力破解);

2、用户友好的输出结果;

3、支持解析A记录(IPv4);

4、虚拟主机枚举;

5、反向DNS查询;

6、检测通配符子域名(用于暴力破解);

7、接受子域名作为输入;

8、支持将结果导出到JSON文件;

工具要求

最新版本的Nim环境

工具安装

由于该工具基于纯Nim开发,因此我们首先需要在本地设备上安装并配置好最新版本的Nim环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/pptx704/domainim.git

然后切换到项目目录中,使用nimble命令构建项目代码:

cd domainimnimble build

构建完成后,直接运行代码文件即可:

./domainim <domain> [--ports=<ports>]

除此之外,我们也可以直接访问该项目的【Releases页面】下载最新版本的预编译Domainim源码文件。

工具使用

./domainim <domain> [--ports=<ports> | -p:<ports>] [--wordlist=<filename> | l:<filename> [--rps=<int> | -r:<int>]] [--dns=<dns> | -d:<dns>] [--out=<filename> | -o:<filename>]

工具帮助信息

Usage:domainim <domain> [--ports=<ports> | -p:<ports>] [--wordlist=<filename> | l:<filename> [--rps=<int> | -r:<int>]] [--dns=<dns> | -d:<dns>] [--out=<filename> | -o:<filename>]domainim (-h | --help)Options:-h, --help              显示工具帮助信息-p, --ports             要扫描的端口,可选项:`all`, `none`, `t<n>`, [默认: `none`]-l, --wordlist          需要执行子域名爆破测试的字典文件路径-d, --dns                DNS解析器的IP和端口,[默认: system default]-r, --rps                  每秒发送的DNS查询DNS,[默认: 1024 req/s]-o, --out                 存储输出JSON文件的路径,文件名需包含`.json`后缀   

工具使用样例

./domainim nmap.org --ports=all
./domainim google.com --ports=none --dns=8.8.8.8#53
./domainim pptx704.com --ports=t100 --wordlist=wordlist.txt --rps=1500
./domainim pptx704.com --ports=t100 --wordlist=wordlist.txt --outfile=results.json
./domainim mysite.com --ports=t50,5432,7000-9000 --dns=1.1.1.1
./domainim domainim.com -p:t500 -l:wordlist.txt --dns:1.1.1.1#53 --out=results.json
./domainim sub.domainim.com --ports=all --dns:8.8.8.8 -t:1500 -o:results.json

输出结果样例

[{"subdomain": string,"data": ["ipv4": string,"vhosts": [string],"reverse_dns": string,"ports": [int]]}]

工具运行截图

许可证协议

本项目的开发与发布遵循MIT开源许可协议。

项目地址

Domainim:【GitHub传送门】

参考资料

GitHub - aboul3la/Sublist3r: Fast subdomains enumeration tool for penetration testers

GitHub - elddy/NimScan: 🚀 Fast Port Scanner 🚀

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/48793.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CCF GESP Python编程 五级认证真题 2024年6月

第 1 题 在Python中&#xff0c;print((c for c in "GESP"))的输出是&#xff08; &#xff09;。 A.(G, E, S, P) B.[G, E, S, P] C.{G, E, S, P} D. 以上选项均不正确 第 2 题 下面有关快速排序的说法&#xff0c;错误的是&#xff08; …

python毕业设计选题协同过滤算法在音乐推荐系统

✌网站介绍&#xff1a;✌10年项目辅导经验、专注于计算机技术领域学生项目实战辅导。 ✌服务范围&#xff1a;Java(SpringBoo/SSM)、Python、PHP、Nodejs、爬虫、数据可视化、小程序、安卓app、大数据等设计与开发。 ✌服务内容&#xff1a;免费功能设计、免费提供开题答辩P…

暑期C++ 缺省参数

有任何不懂的问题可以评论区留言&#xff0c;能力范围内都会一一回答 1.缺省参数的概念 缺省参数是是声明或定义参数时为函数的参数指定一个缺省值。在调用该函数值时&#xff0c;如果没有指定实参则采用该形参的缺省值&#xff0c;否则使用指定的实参 看了上面定义后&#…

【零基础必看的前端教程】——JavaScript(七)数组

欢迎大家打开前端的新篇章——JavaScript&#xff0c;JavaScript与HTML、CSS合称为前端三大件&#xff0c;JavaScript是前端的重中之重&#xff0c;小洪将继续以零基础视角&#xff0c;带你循序渐进学习前端知识&#xff0c;一看就懂&#xff0c;小白也能转行做前端&#xff01…

vue3实现在新标签中打开指定的网址

有一个文件列表&#xff0c;如下图&#xff1a; 我希望点击查看按钮的时候&#xff0c;能够在新的标签页面打开这个文件的地址进行预览&#xff0c;该如何实现呢&#xff1f; 比如&#xff1a; 实际上要实现这个并不难&#xff0c;参考demo如下&#xff1a; 首先&#x…

求职学习day10

总结&#xff1a; 抽空做面试前模拟和拷打八股模拟 面试鸭刷题神器 (mianshiya.com) 贪吃的猴子&#xff0c;滑动窗口&#xff0c;反向思考问题。将左右获取数组转变成中间连续的数组窗口。 滑动窗口3问 左指针什么时候右移&#xff0c;有什么操作右指针什么时候右移&am…

QWidget如何切换ui

在Qt中&#xff0c;QWidget及其子类用于构建图形用户界面。如果你想要在不同的UI之间切换&#xff0c;可以使用QStackedWidget&#xff0c;它可以管理一组QWidget&#xff0c;并且每次只显示其中一个。 以下是一个简单的例子&#xff0c;展示如何使用QStackedWidget切换UI&…

渗透测试——利用公网反弹shell到本地的两种方式,vmware虚拟机与主机的端口转发,本地ssh无法上线的问题解决

解决问题&#xff1a; 因长期使用本地模拟靶场&#xff0c;实战护网时并非模拟靶场&#xff0c;shell反弹需要利用公网测试。解决目标站无法反弹到本地的情况。解决本地是windows&#xff0c;虚拟机是kail、linux&#xff0c;无法相互转换流量的情况。 环境搭建 靶机 centOS7 …

CentOS7系统安装CMake3.6.2

文章目录 前言一、下载CMake二、拷贝CMake三、解压CMake四、重命名五、编译及安装六、系统文件中增加变量七、查看CMake版本 前言 CentOS7系统如何安装CMake3.6.2?本文记录其安装过程。 一、下载CMake wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz二、拷贝CMake …

Android 12系统源码_窗口动画(二)应用程序间的切换动画

前言 在 Android 系统中&#xff0c;系统主要是通过AppTransitionController和AppTransition这两个类是用于管理应用程序间切换动画的重要类。 一、简介 1、AppTransitionController AppTransitionController 是一个系统级别的类&#xff0c;用于管理应用程序间切换时的动画…

《简历宝典》20 - 简历中“自我评价”,如何能够“画龙点睛”

前两节我们针对 “项目经历” 和 “技术能力” 模块做了内功与实战的讲解&#xff0c;可以说是重中之重&#xff0c;是简历优化新思路的核心所在。这一节开始对自我评价做讲解&#xff0c;自我评价一般都会放置在简历的末尾&#xff0c;HR在迅速浏览完个人信息、技术能力、学历…

VScode 批量操作

VScode 批量操作 批量修改 按住 alt/option 键&#xff0c; 选择需要批量操作的位置 如果是多行&#xff0c;则按住 altshift 键 可以直接操作 但是有时候比如变量命名&#xff0c;可能需要递增操作的命名 需要下载插件 Increment Selection 按照1的方法多选光标之后&am…

后端面试题日常练-day04 【Java基础】

题目 希望这些选择题能够帮助您进行后端面试的准备&#xff0c;答案在文末 在Java中&#xff0c;以下哪个关键字用于表示接口&#xff1f; a) interface b) implements c) extends d) interfaceOf Java中的静态变量有什么特点&#xff1f; a) 静态变量属于对象实例 b) 静态变…

html+css+js前端作业 王者荣耀官网5个页面带js

htmlcssjs前端作业 王者荣耀官网5个页面带js 下载地址 https://download.csdn.net/download/qq_42431718/89574989 目录1 目录2 目录3 项目视频 王者荣耀5个页面&#xff08;带js&#xff09; 页面1 页面2 页面3 页面4 页面5

php接口返回的json字符串,json_decode()失败,原来是多了红点

问题&#xff1a; 调用某个接口返回的json&#xff0c;json_decode()失败&#xff0c;返回数据为null&#xff0c; echo json_last_error();返回错误码 4 经过多次调试发现&#xff1a;多出来一个红点&#xff0c;预览是看不到的。 解决&#xff1a;要去除BOM头部 $resul…

【SmartBi】错位时的解决办法

【背景】 使用SmartBi时&#xff0c;有时会存在分页后某一个位置的字段错位的情况。 【分析】 很可能是单元格的延申导致挤占位置&#xff0c;使后续位置相关单元格错位。 【解决思路】 取消相应单元格的SmartBi属性中的延申选项。将相应单元格合并或拉长&#xff0c;确保…

vue 搜索框

效果 创建搜索组件&#xff1a; 在Vue项目中&#xff0c;首先需要创建一个搜索组件。这个组件通常包含一个输入框和一个搜索按钮。使用v-model指令将输入框与组件的数据属性&#xff08;如searchKeyword&#xff09;进行双向绑定&#xff0c;以便获取用户输入的关键词。处理搜索…

【前端】JavaScript入门及实战66-70

文章目录 66 原型(1)67 原型(2)68 toString69 垃圾回收70 数组 66 原型(1) <!DOCTYPE html> <html> <head> <title></title> <meta charset "utf-8"> <script type"text/javascript">/*原型prototype我们所创…

Linux网络:传输层协议TCP(二)三次挥手四次握手详解

目录 一、TCP的连接管理机制 1.1三次握手 1.2四次挥手 二、理解 TIME_WAIT 状态 2.1解决TIME_WAIT 状态引起的 bind 失败的方法 三、理解CLOSE_WAIT状态 一、TCP的连接管理机制 在正常情况下, TCP 要经过三次握手建立连接, 四次挥手断开连接 1.1三次握手 三次握手顾名思…

Docker从零开始:安装、部署到卸载,一文搞定全流程

Docker是一种开源容器化平台&#xff0c;它允许开发者将应用程序及其依赖打包成轻量级、可移植的容器。这些容器能确保软件在任何环境中稳定运行&#xff0c;无论是开发者的笔记本电脑还是生产服务器。Docker流行的原因在于其提供的隔离性、可移植性和可扩展性&#xff0c;它简…