首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >旅行者探测器系统 --- 集域名扫描,端口扫描,目录扫描,漏洞扫描的工具系统

旅行者探测器系统 --- 集域名扫描,端口扫描,目录扫描,漏洞扫描的工具系统

作者头像
Power7089
发布于 2020-03-12 12:08:55
发布于 2020-03-12 12:08:55
2.8K00
代码可运行
举报
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Github优秀项目推荐:具体可见https://github.com/ddosi/Voyager

0x01 功能介绍

作为一个渗透人员,在每次渗透网站的时候都要拿出一堆黑客工具,比如nmap, awvs, 御剑等工具进行测试,由于实在厌烦了一些低级重复性的工作,趁着2020年新年创建了一个工具集合平台,将渗透测试常见的域名扫描,端口扫描,目录扫描,漏洞扫描的工具集合在一起

目前平台还在持续开发中,肯定有不少问题和需要改进的地方,欢迎大佬们提交建议和Bug,也非常欢迎各位大佬Star或者是Fork

系统数据是伪造的

0x02 系统结构

开发框架

基础语言: Python(3.8.1)

Web框架: Flask(1.1.1)

数据库: Mongodb

逻辑处理: Docker

前端: Layui

数据载入

数据流入有两种方式,一种是从WEB界面引入,还有一种是从上级任务引入,比如说端口扫描任务的IP既可以从WEB页面引入,也可以从域名扫描处获得。漏洞扫描的任务只能从端口扫描和域名扫描的任务中引入

0x02 功能介绍

0x001 域名扫描

采用的是oneforall,当前使用的版本是0.0.9,我修改了部分代码,使得工具和平台能够结合

0x002 端口扫描

程序采用的是masscan和nmap结合的方式,先用masscan扫描开放的端口,然后再用nmap对开放的端口进行详细的信息探测, 这步是最重要的一步,通过nmap给端口打上标签,为以后的POC扫描提供数据,由于nmap只能识别广义的操作系统,中间件,数据库三层结构,再往上的web应用nmap无法识别,只能通过接下来的cms识别给web应用程序打标签

0x003 目录扫描

目录扫描采用的工具是dirsearch,排除了部分bug并且扩充了字典然后进行封装

0x004 指纹识别

指纹识别采用的是新潮团队的TideFinger, 我提取出了TideFinger的指纹进行比对,原先TideFinger是单任务运行多线程请求的方式,为了配合框架我改成了多任务并发单线程请求的方式,由于Python3和Python2在字符编码上存在差异,导致相同的字符串可能会计算出不同的MD5值,这个指纹识别的库以后需要大量修改

导出的扫描结果

0x005 漏洞扫描

漏洞扫描功能现在引入了xunfeng和kunpeng的poc,一共144个,标签以nmap的标签为主,比如445端口的标签是microsoft-ds, 3389的标签是ms-wbt-server。这两个框架合并存在一定问题,比如说:xunfeng和kunpeng的poc主要针对非WEB应用,两个框架的POC存在重复的问题.我做了一定的去重工作,后期随着POC的增多,去重会是一个问题

0x006 WAF探测

分析了一下sqlmap的源代码,从中提取出了sqlmap用于WAF探测的代码并进行了封装, 用来探测类http端口是否有WAF保护,此功能并未在前台展示,一些模块比如目录扫描会自动进行调用

0x007 主动扫描

主动扫描用的是AWVS12,已经封装在Docker里了,通过AWVS12的restful进行API调用

0x03 安装教程

这里以Kali linux 2019.4作为基础操作系统

0x001 安装docker

由于Kali默认没有安装Docker,需要手动安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
# echo 'deb [arch=amd64] https://download.docker.com/linux/debian buster stable' > /etc/apt/sources.list.d/docker.list
# apt-get update && apt-get install docker-ce
# systemctl enable docker
# systemctl start docker

0x002 下载源码安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git clone https://github.com/ody5sey/Voyager.git
cd Voyager
bash run.sh

0x003 运行

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
python manager.py

添加新用户 curl http://127.0.0.1:5000/add 然后访问 http://127.0.0.1:5000/

默认的用户名和密码是luffy:s1riu5

正式开始前需要先创建一个项目

0x04 时间参数

域名扫描: 开启了爆破模式,一个域名大约需要6分钟

端口扫描: 服务器环境中百兆宽带内网测试将全C端,全端口的扫描压缩到10分钟之内,但是家用路由器根本无法承受如此巨大的负载,只好限制速度。现在单IP全端口扫描时间不到一分钟

目录扫描: 四个字典单个目标6分钟

0x05 TODO

权当是立FLAG吧

功能更新

  • POC框架中引入bugscan和beebeeto,以改善针对WEB应用扫描不全的问题,这样四个主流POC框架的POC数量总计有1500+
  • 引入AWVS12,首先对类http标签进行WAF测试,没有WAF保护的WEB应用将推送给AWVS检测
  • 引入被动扫描器XRAY,和之前AWVS的一样,没有WAF保护的WEB应用将用AWVS的爬虫和xray进行检测
  • 引入IP代理功能,为部分模块添加代理参数
  • 引入Metasploit, 可以调用metasploit接口
  • 引入爆破功能,本来想用hydra实现的,但是发现效果并不是很好,现在比较倾向于写爆破组件然后以插件的形式载入
  • 引入一键日站功能,在输入IP地址或者是域名之后自动依次载入攻击组件
  • 引入微信接口,从微信载入攻击目标然后后台自动攻击

长期更新

  • 各组件的协调优化以及BUG修复, 漏报,误报的修复
  • 指纹库的更新和poc库的更新
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小白帽学习之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
steam网络连接错误、无法连接到服务器怎么办?steam登录报错及故障解决方案
电脑网络明明好好的,Steam却出现连接错误,打开商店转圈圈,下载游戏疯狂断连,甚至联机对战秒变PPT?是不是很抓狂?先别着急砸电脑,本文主要为大家讲解steam网络报错、连接不到服务器相关的故障和解决方案。网络连接故障排除请按以下步骤诊断 Steam 内的网络连接问题:
逐梦岛
2025/06/22
2.1K0
steam网络连接错误、无法连接到服务器怎么办?steam登录报错及故障解决方案
Jtti:修复 Linux 错误 - 连接超时
在使用 Linux 操作系统时,有时会遇到连接超时的错误。这个错误可能会导致无法访问网络或无法连接到其他计算机。本文将介绍一些常见的连接超时错误以及如何修复它们。
jtti
2024/09/04
7200
Python中网络请求超时的原因及解决方案
网络连接的不稳定性是最常见的原因之一。有时候,服务器响应时间长,或者网络本身存在波动,导致请求超时。就像是在高速公路上行驶,突然遇到交通堵塞,您的车速会变得很慢,甚至停滞不前。 解决方法:使用合适的超时时间,考虑到网络不稳定性,合理设置超时参数,以便及时捕获超时异常。此外,可以考虑实现重试机制,以增加请求成功的概率。
小白学大数据
2024/06/08
3810
【详解】ping得通外网IP,ping不通外网域名的解决办法
在日常的网络管理或开发过程中,有时会遇到一个奇怪的问题:能够通过IP地址成功ping通外网服务器,但使用域名时却无法ping通。这种情况下,问题通常不在于网络连接本身,而可能是DNS解析出现了问题。本文将探讨几种可能的原因及相应的解决方法。
大盘鸡拌面
2025/01/26
2.3K0
内网穿透避坑指南|6 大常见错误 + 保姆级解决方案!
在内网穿透部署中,哪怕是老手也可能踩坑!今天整理了6大高频错误场景+实战解决方案,帮你少走弯路,效率翻倍
零讯
2025/05/20
2810
内网穿透避坑指南|6 大常见错误 + 保姆级解决方案!
【详解】svn:Can'tconnecttohost'*.*.*.*':由于连接方在一段时间后没有正确答复或连接
在使用Subversion(SVN)进行版本控制时,有时会遇到“Can't connect to host '...': 由于连接方在一段时间后没有正确答复或连接”的错误。这个错误通常意味着你的客户端无法与SVN服务器建立连接。本文将探讨导致这一问题的可能原因,并提供相应的解决方案。
大盘鸡拌面
2025/01/06
4680
【java报错已解决】System.ServiceModel.EndpointNotFoundException
在Java开发的世界里,报错信息就像是一个个隐藏在代码迷宫中的小怪兽,时不时地跳出来给开发者们制造些麻烦。而今天我们要面对的这个“小怪兽”就是System.ServiceModel.EndpointNotFoundException。当它出现时,往往会让我们的程序在运行过程中戛然而止,让开发者们头疼不已。那么,该如何成功击败它,让我们的程序顺畅运行呢?下面就让我们一起来深入探讨这个报错信息的解决之道吧。
鸽芷咕
2025/05/29
930
网络 Ping 不通的原因及解决方法
网络通信是现代社会的重要组成部分,而“Ping”作为网络故障诊断中最常用的命令工具之一,在检测网络连通性方面扮演着至关重要的角色。Ping 是基于 ICMP(Internet Control Message Protocol)协议的命令,主要用于测试目标设备是否可达。对于网络管理员和普通用户来说,Ping 命令可以帮助确定设备的连接状态,并快速定位网络故障。
是山河呀
2024/10/01
5.4K0
解决能ping通但无法上网的问题
大家好,今天我要和大家分享一下当你的IP地址能够成功 ping 通,却无法上网时该如何解决这个问题。这是一个相当常见的情况,在网络故障排查中经常遇到。别担心,我将为你揭开这个谜题,提供一些解决方案和技巧。
华科云商小孙
2023/09/21
4.1K0
【详解】SQLServerJDBC到主机的TCP/IP连接失败
在使用 Java 应用程序连接 Microsoft SQL Server 数据库时,有时会遇到“SQL Server JDBC 到主机的 TCP/IP 连接失败”的错误。本文将探讨这个错误的原因及解决方法。
大盘鸡拌面
2025/01/12
6670
Docker登录问题:无法连接到Docker Hub
😔 作为一位充满热情的技术博主,我深入研究了Docker登录问题,尤其是由于无法连接到Docker Hub引发的困扰。本文将详细探讨Docker登录的重要性以及可能导致连接问题的原因,并提供解决方案,以确保您能够成功登录Docker Hub并继续您的容器化工作。搜索词条:Docker登录问题、无法连接Docker Hub、Docker登录失败解决。
默 语
2024/11/20
1.6K0
Docker登录问题:无法连接到Docker Hub
网络诊断指南:网络故障排查步骤与技巧
这里推荐一篇实用的文章:《【Linux系列】脚本中的if else》,作者:【kwan的解忧杂货铺】。
Echo_Wish
2024/12/01
4360
网络诊断指南:网络故障排查步骤与技巧
【Python】已解决:nltk.download(‘averaged_perceptron_tagger’) [nltk_data] Error loading averaged_perceptro
在使用Python的自然语言处理库NLTK(Natural Language Toolkit)时,有时需要下载额外的数据包以支持特定的功能,如词性标注、分词等。然而,在尝试使用nltk.download(‘averaged_perceptron_tagger’)命令下载词性标注模型时,可能会遇到如下报错:
屿小夏
2025/05/23
3460
故障排除指南:SOCKS5连接问题和解决方案
SOCKS5是一种常用的代理协议,它可以在客户端和目标服务器之间建立一个中间代理层,以实现更高的安全性和隐私保护。然而,在使用SOCKS5连接时,可能会遇到一些问题。本文将为您提供一个故障排除指南,帮助您解决SOCKS5连接问题。
用户614136809
2023/09/04
2.7K0
一文读懂华为防火墙不同类型 VPN 常见问题总结
远程办公和跨区域网络协作越来越普遍,VPN(虚拟专用网络)技术成为企业保障网络通信安全与便捷的重要工具。华为防火墙在 VPN 领域有着广泛的应用,不过,在实际使用过程中,不同类型的 VPN 难免会出现各种各样的问题。今天,阿祥就以华为防火墙为例,讲讲不同类型 VPN 常遇到的问题,希望能帮大家排忧解难。
ICT系统集成阿祥
2025/04/10
3760
一文读懂华为防火墙不同类型 VPN 常见问题总结
ConnectionRefusedError: [Errno 111] Connection Refused:连接被拒绝的完美解决方法
大家好,我是默语,一名专注于全栈开发、运维和人工智能技术的博主。在开发和部署网络应用时,ConnectionRefusedError: [Errno 111] Connection refused 是一个常见且令人头疼的错误。这篇文章将详细解析该错误的成因,并提供多种有效的解决方案,帮助你迅速排查和解决问题。通过本文的学习,你将能够掌握应对网络连接问题的技巧,提高应用的健壮性和可用性。
默 语
2024/11/22
5.3K0
找不到DNS地址的解决方案
WIN+R输入cmd回车输入命令输入命令 ipconfig /flushdns 并按回车键。将刷新DNS解析缓存
hacker707
2023/12/04
6.7K0
找不到DNS地址的解决方案
某些应用程序无法联网,如何解决?
是山河呀
2025/03/09
1.7K0
这10个网络排障工具建议每位网络工程师都能熟练使用!
作为一名网络工程师,会有很长一段时间去解决网络中出现的问题或解决与 IT 和网络状况相关的问题。
网络技术联盟站
2023/03/01
2.2K0
这10个网络排障工具建议每位网络工程师都能熟练使用!
快来围观:看看主流国产AI大模型分析数据包哪家强?
在数字化时代,网络通信已成为社会运转的核心基础设施。无论是企业内部系统、金融交易、医疗数据交互,还是日常的互联网访问,每一项操作都依赖于数据包在网络中的高效传输。然而,网络环境的复杂性与潜在威胁的多样性,使得数据包分析成为保障网络稳定、安全与高效的关键技术。
穿过生命散发芬芳
2025/04/10
4100
推荐阅读
相关推荐
steam网络连接错误、无法连接到服务器怎么办?steam登录报错及故障解决方案
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档