Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
zscan — Zscan, un conjunto de herramientas de escaneo explosivo | Kitploit
Herramientas/GitHubGitHub/zyylhn/zscan
ReconocimientoEscáneres de VulnerabilidadesMapeo de RedesAtaques de ContraseñasEscaneo de PuertosExplotaciónPruebas de Penetración
GitHubzyylhn/zscan

zscan

Zscan, un conjunto de herramientas de escaneo explosivo

Ver Repositorio
53974hace 2 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Zscan un conjunto de herramientas de escaneo y explosión

Licens Releases go

📄Documento en inglés

Consulte el registro de actualizaciones en log

Formato de salida de resultados -Capturas de pantalla parciales de los resultados, divididas en dos fases. La primera fase es la salida durante el proceso de escaneo, comenzando después de la detección de hosts activos. La segunda fase organiza todos los resultados del escaneo, comenzando desde la salida de la lista de resultados de puertos.

Introducción🎉

​ Zscan es un escáner de puertos de red interna de código abierto, una herramienta de fuerza bruta y una colección de otras utilidades que se puede considerar un conjunto de herramientas. Se basa en el descubrimiento de segmentos de red interna, detección de hosts y escaneo de puertos. En el módulo blast, puede realizar fuerza bruta en servicios como mysql, mssql, redis, mongo, postgres, ftp, ssh, ldap, rdp, smb, etc. En el módulo scan, realiza funciones de escaneo como netbios, smb, oxid, socks server (escaneo de servidores proxy), ms17010, poc de http, etc. De forma predeterminada, captura el título y la información de huella digital de http. En el módulo server, puede iniciar servidores http (para cargar y descargar archivos) y socks5 (servidor proxy). El módulo tools integra pequeñas utilidades, por ahora solo nc. Se ha agregado recientemente el módulo exploit, que permite explotar servicios con fuerza bruta exitosa, incluyendo inicio de sesión interactivo ssh (con usuario/contraseña o clave), réplica maestro-esclavo de redis y escape de la caja de arena Lua (carga de archivos y ejecución de comandos), consultas ldap (con consultas comunes integradas). También hay un módulo all, que invoca todos los módulos de escaneo y fuerza bruta durante el escaneo. Admite escaneo ipv6, entrada de dominio y reconocimiento automático de CDN. Las funciones específicas del módulo son las siguientes.

La herramienta es de gran tamaño; en el futuro se lanzará una versión simplificada. El diseño modular facilita la eliminación de funciones innecesarias.``` all 调用所有扫描和爆破模块 ping 主机发现和网段发现 ps 基本的端口扫描和http指纹识别title抓取 scan 扫描模块 --->ms17010扫描 --->poc漏洞扫描(内置380个poc) --->proxyfind内网代理服务器扫描 --->winscan Windows的smb,netbios和oxid扫描 blast 爆破服务模块(包括以下爆破模块) --->ftp --->ldap --->mongo --->mssql --->mysql --->postgres --->rdp --->redis --->smb --->ssh server start http server or socks5 server --->http服务器(可上传下载文件) --->socks5服务器(可启动一个代理服务器,支持身份验证) exploit 漏洞利用模块 --->ldap查询 --->redis组从复制上传文件执行命令,lua沙箱逃逸RCE --->snmp查询 --->ssh登陆 --->sunlogin向日葵RCE tools 实用工具模块 --->nc简单的nc,可以开放端口连接端口 --->searchfile支持多线程正则搜索文件

root@kitploit:~
El formato de uso es```
zscan 模块 参数

中文 | English | Français | Español

🍳 ¿Cómo empezar?

  1. Copia el archivo de configuración config.ini y renómbralo.
  2. Modifica *.env.
  3. Ejecuta docker-compose up.
root@kitploit:~
# step 1: Copiar
cp config.ini config.dev.ini

# step 2: Configurar
# modificar config.dev.ini

# step 3: Iniciar
docker-compose up

💻 Desarrollo

  1. Dependencias de Node.js para previsualización en vivo.
  2. El docker-compose.yml en la raíz del proyecto se utiliza para iniciar el proyecto y también incluye una configuración de previsualización en vivo.
  3. La previsualización en vivo escanea archivos usando chokidar y actualiza el contenedor en ejecución mediante un webhook de docker-py.
root@kitploit:~
npm install
npm run watch

docker-py llama automáticamente a live.update para actualizar el contenedor.```


/___ \ /\ \ /\ \ /\ __ \ /\ "-.\ \
/
/ /
\ _
\ \ \ _
__ \ \ __ \ \ \ -. \
/_\ /_\ \ ___\ \ _\ _\ \ _\"_\ // // /_____/ //// // //

Usage: zscan [command]

Available Commands: all Use all scan mode blast Common service blasting exploit sshlogin,redisexec help Help about any command ping ping scan to find computer ps Port Scan scan ms17010,proxyfind,snmp,winscan(smb,netbios,oxid),poc server start http server or socks5 server

Flags: -h, --help help for zscan --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
模块里面的Flag代表当前命令的参数,Global Flags代表全局参数(所有命令都可以用)
这里的Flags为全局参数,所有模块都可以使用

- --log: Habilitar este parámetro escribirá el resultado actual en log.txt en modo de anexión (puede registrar cada resultado de ejecución).
- -o --output: Por defecto el nombre de archivo en el directorio actual es Hosts; -o especifica la ruta.
- --proxy: Configurar proxy, nombre de usuario y contraseña (user:pass@ip:port) sin autenticación (ip:port).
- -T --thread: Especifica el número de hilos, por defecto 100.
- -t --timeout: Establece el tiempo de espera; si las condiciones de red son buenas y se busca velocidad, se puede configurar a 1s.
- -v --verbose: Muestra información del proceso de escaneo.

## Módulos de funcionalidad😈

<details>
<summary><b>módulo ping: los usuarios normales llaman al ping del sistema con permisos de usuario común, los usuarios root pueden optar por usar paquetes ICMP</b></summary>```
zscan ping 

...``` Usage: zscan ping [flags]

Flags: -d, --discover string Live network segment found,local parameter uses the local NIC information。eg:zscan ping -d local/zscan ping -d 172.18.0.0,172.19.0.0 -h, --help help for ping -H, --host hosts Set hosts(The format is similar to Nmap) --hostfile string Set host file -i, --icmp Icmp packets are sent to check whether the host is alive(need root)

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
必须指定host和hostfile两个参数其中的一个,当有root权限的时候可以使用-i不调用本地的ping而是自己发icmp数据包(线程开的特别高的话几千那种,调用本地ping命令会导致cpu占用过高)

--discover两种网段发现模式,一种是ping网络b段网关,一种是oxid扫描

--discover后面需要给一个参数,如果给local(zscan ping --disconver local)就会读取本地网卡信息,去扫描本地的网络b段,例如读取到本地的两张网卡192.168.13.13和172.16.95.23,那么他就会去ping192.168.0.0/16和172.16.0.0/16这两个b段

还可以给定一个或者多个b段ip例如172.17.0.0或者172.18.0.0,10.10.0.0,多个ip段用逗号隔开

</details>

<details>
<summary><b>Módulo ps: escaneo de puertos y obtención de httptitle</b></summary>```
zscan ps

◆ "``` Usage: zscan ps [flags]

Flags: -b, --banner Return banner information -h, --help help for ps -H, --host hosts Set hosts(The format is similar to Nmap) eg:192.168.1.1/24,172.16.95.1-100,127.0.0.1 --hostfile string Set host file -i, --icmp Icmp packets are sent to check whether the host is alive(need root) --noping not ping discovery before port scanning --nowebscan Whether to perform HTTP scanning (httpTitle and HTTP vulnerabilities)(default on) -p, --port port Set port eg:1-1000,3306,3389 or use " zscan ps -p l" ) to scan less port(thirty port) -s, --syn use syn scan --vulscan Whether to perform HTTP vulnerabilities(default off)

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
--host y --hostfile especifican el objetivo

-p especifica el puerto; si no se especifica, se usa el puerto predeterminado, o se puede especificar "l" para usar puertos menores (aproximadamente treinta puertos comunes)

--noping escanea todos los objetivos directamente sin hacer ping primero

--icmp usa paquetes ICMP para descubrimiento de hosts al usar ping

--nowebscan parámetro para deshabilitar el escaneo web y solo realizar escaneo de puertos

--vulscan parámetro para habilitar la detección de PoC (solo se puede usar cuando el escaneo web está activado; de lo contrario, no tiene sentido)

--syn usa escaneo SYN (requiere altos privilegios)

</details>

<details>
<summary><b>módulo all: llama a todos los módulos de escaneo y fuerza bruta para escanear</b></summary>```
zscan all
  • -D / --debug: Activa el modo de depuración, muestra información detallada de depuración.
  • -q / --quiet: Modo silencioso, solo muestra resultados clave.
  • -v / --verbose: Activa el modo detallado, muestra más información de ejecución.
  • -n / --no-color: Desactiva la salida en color.
  • --no-banner: Oculta el banner de inicio.
  • --no-update: Omite la comprobación de actualizaciones.
  • --timeout: Establece el tiempo de espera de la solicitud (segundos). Valor predeterminado: 30.
  • --retry: Establece el número de reintentos de solicitud. Valor predeterminado: 3.
  • --proxy: Usa un proxy. Formato: .

Flags: -h, --help help for all -H, --host hosts Set hosts(The format is similar to Nmap) eg:192.168.1.1/24,172.16.95.1-100,127.0.0.1 --hostfile string Set host file -i, --icmp Icmp packets are sent to check whether the host is alive(need root) --noburp Set postgres passworddict path --noping Not ping before port scanning --novulscan disable http vulnerability scan --passdict string Set postgres passworddict path -P, --password string Set postgres password -p, --port port Set port eg:1-1000,3306,3389 or use " zscan all -p l" ) to scan less port(thirty port) -U, --username string Set user name

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
El módulo all es esencialmente igual que el módulo ps, excepto que cuando el módulo all escanea un puerto correspondiente, realiza reconocimiento de huellas digitales o fuerza bruta de nombres de usuario y contraseñas en el hilo actual.

Los parámetros del módulo all son los mismos que los del módulo ps, solo que se agrega un diccionario de contraseñas, que se utiliza para establecer el diccionario al escanear puertos que necesitan fuerza bruta; todo lo demás es igual.

--notburp No realizar fuerza bruta, solo escanear.

--novulscan Dado que el módulo all invoca todos los módulos, este parámetro se utiliza para deshabilitar el escaneo de vulnerabilidades.

</details>

<details>
<summary><b>blast:módulo de fuerza bruta, incluye funcionalidad de fuerza bruta para servicios comunes</b></summary>```
zscan blast

| MapBGP | Herramienta de visualización BGP | #bgp #visualización #descubrimiento #enrutamiento | Esta herramienta está diseñada para ejecutar rutas de red en vista MAPA y mostrar información BGP y traceroutes. |``` Usage: zscan blast [command]

Available Commands: ftp burp ftp username and password ldap burp ldap username and password mongo burp mongodb username and password mssql burp mssql username and password mysql burp mysql username and password postgres burp postgres username and password rdp burp remote desktop(3389) redis burp redis password smb burp smb usernamae and password ssh burp ssh username password or traverse the key

Flags: -h, --help help for blast

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
Básicamente, todos los módulos de fuerza bruta se usan de la misma manera, solo hay que especificar usuario/contraseña o un diccionario de usuario/contraseña, y también se puede especificar el número de hilos de fuerza bruta. Este hilo es diferente del hilo -T; el hilo -T representa la cantidad de objetivos que escaneamos concurrentemente (este objetivo es una combinación de IP y puerto, cada concurrencia equivale a enviar un paquete de datos al objetivo). burptheard significa que cuando en el hilo único del escaneo concurrente anterior encontramos nuestro puerto objetivo, por ejemplo mysql, se iniciará un ataque de fuerza bruta multihilo en el hilo de escaneo actual (aquí el objetivo se cambia a una IP específica y un puerto específico, por lo que es necesario limitar la velocidad, ya que una velocidad demasiado rápida puede hacer que el servicio objetivo no esté disponible).

</details>

<details>
<summary><b>módulo scan: módulos de escaneo comunes</b></summary>```
Usage:
  zscan scan [command]

Available Commands:
  ms17010     MS17_010 scan
  poc         poc check
  proxyfind   Scan proxy
  snmp        snmp scan
  winscan     netbios、smb、oxid scan

Flags:
  -h, --help   help for scan

Global Flags:
      --nobar           disable portscan progress bar
  -o, --output string   the path of result file (default "result.txt")
      --proxy string    Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080)
  -T, --thread thread   Set thread eg:2000 (default 600)
  -t, --timeout time    Set timeout(s) eg:5s (default 5s)
  -v, --verbose         Show verbose information


Módulo proxyfind: escanea proxies en la red, actualmente soporta socks4/5, posteriormente agregará http``` zscan scan proxyfind ``` (无输入内容,返回空)``` Usage: zscan proxyfind [flags]

Flags: -h, --help help for proxyfind -H, --host hosts Set hosts(The format is similar to Nmap) eg:192.168.1.1/24,172.16.95.1-100,127.0.0.1 --hostfile string Set host file -p, --ports port Set port eg:1-1000,3306,3389 (default "1080,1089,8080,7890,10808") --type string Set the scan proxy type(socks4/socks5/http) (default "socks5")

Global Flags: --log Record the scan results in chronological order,Save path./log.txt -O, --output Whether to enter the results into a file(default ./result.txt),can use --path set --path string the path of result file (default "result.txt") -T, --thread thread Set thread eg:2000 (default 100) -t, --timeout time Set timeout(s) eg:5s (default 3s) -v, --verbose Show verbose information

root@kitploit:~
Escanea servidores proxy en la red interna

-H especifica el objetivo, -p especifica el puerto, --type especifica el tipo de protocolo proxy a escanear (actualmente soporta socks4/5, otros protocolos están en desarrollo)
</details>

<details>
<summary><b>módulo ms17010: escaneo masivo de vulnerabilidad ms17010</b></summary>```
Usage:
  zscan scan ms17010 [flags]

Flags:
  -h, --help              help for ms17010
  -H, --host string       Set target
      --hostfile string   Set host file

Global Flags:
      --log             Record the scan results in chronological order,Save path./log.txt
  -O, --output          Whether to enter the results into a file(default ./result.txt),can use --path set
      --path string     the path of result file (default "result.txt")
  -T, --thread thread   Set thread eg:2000 (default 100)
  -t, --timeout time    Set timeout(s) eg:5s (default 3s)
  -v, --verbose         Show verbose information

Solo necesita especificar el objetivo

módulo winscan: incluye funciones de escaneo oxid, smb, netbios``` Usage: zscan scan winscan [flags]

Flags: -h, --help help for winscan -H, --host string Set target --hostfile string Set host file --netbios netbios scan --oxid oxid scan --smb smb scan

Global Flags: --log Record the scan results in chronological order,Save path./log.txt -O, --output Whether to enter the results into a file(default ./result.txt),can use --path set --path string the path of result file (default "result.txt") -T, --thread thread Set thread eg:2000 (default 100) -t, --timeout time Set timeout(s) eg:5s (default 3s) -v, --verbose Show verbose information

root@kitploit:~
Si se da directamente el objetivo, escaneará netbios, oxid y smb al mismo tiempo. Se puede usar -- para especificar que solo se use uno.

</details>

<details>
<summary><b>Módulo poc: es tanto un módulo independiente como una función llamada en otros módulos</b></summary>```
poc check

Usage:
  zscan scan poc [flags]

Flags:
  -h, --help             help for poc
  -l, --listpoc          List built in poc
      --pocname string   set the poc name
      --pocpath string   set target url
      --pocthread int    set poc scan thread (default 500)
  -u, --url string       set target url
      --urlfile string   set target file

Global Flags:
      --nobar           disable portscan progress bar
  -o, --output string   the path of result file (default "result.txt")
      --proxy string    Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080)
  -T, --thread thread   Set thread eg:2000 (default 600)
  -t, --timeout time    Set timeout(s) eg:5s (default 5s)
  -v, --verbose         Show verbose information

-l/--list:Lista los PoCs incorporados en la herramienta

--pocname:Es en realidad una opción de filtro que filtra los PoCs cuyo nombre contenga el campo especificado (disponible tanto para escaneo como para visualización)

Módulo servidor: activar módulo de servidor``` Usage: zscan server [command]

Available Commands: httpserver Start an authentication HTTP server socks5 Create a socks5 server

Flags: -h, --help help for server

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
<details>
<summary><b>módulo socks5: iniciar un servidor socks5</b></summary>```
zscan socks5

使用方法:重新执行原来的命令,但是使用 inscope 子命令。不需要管道、不需要重定向。

root@kitploit:~
root@lock:/opt/raven# ./raven inscope <scope>

Usage: zscan server socks5 [flags]

Flags: -a, --addr string Specify the IP address and port of the Socks5 service (default "0.0.0.0:1080") -h, --help help for socks5 -P, --password string Set the socks5 service authentication password -U, --username string Set the socks5 service authentication user name

Global Flags: --log Record the scan results in chronological order,Save path./log.txt -O, --output Whether to enter the results into a file(default ./result.txt),can use --path set --path string the path of result file (default "result.txt") -T, --thread thread Set thread eg:2000 (default 100) -t, --timeout time Set timeout(s) eg:5s (default 3s) -v, --verbose Show verbose information

root@kitploit:~
Se puede usar -a para especificar la IP y el puerto de escucha del servicio socks5

-p y -u especifican el nombre de usuario y la contraseña del proxy

</details>

<details>
<summary><b>Módulo httpserver: inicia un servidor HTTP que soporta autenticación y carga de archivos</b></summary>```
Usage:
 zscan server httpserver [flags]

Flags:
  -a, --addr string   set http server addr (default "0.0.0.0:7001")
  -d, --dir string    set HTTP server root directory (default ".")
  -h, --help          help for httpserver
  -P, --pass string   Set the authentication password
  -U, --user string   Set the authentication user

Global Flags:
      --log             Record the scan results in chronological order,Save path./log.txt
  -O, --output          Whether to enter the results into a file(default ./result.txt),can use --path set
      --path string     the path of result file (default "result.txt")
  -T, --thread thread   Set thread eg:2000 (default 100)
  -t, --timeout time    Set timeout(s) eg:5s (default 3s)
  -v, --verbose         Show verbose information
Módulo de herramientas: integra herramientas de uso común``` Usage: zscan tools [command]

Available Commands: nc A easy nc

Flags: -h, --help help for tools

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
<details>
<summary><b>Módulo nc: un nc simple que puede abrir puertos y conectarse a puertos</b></summary>```
zscan nc

Siguientes Pasos

  • Comienza a Escribir PoCs para Vulnerabilidades Conocidas - Un script en Python que recopila vulnerabilidades publicadas recientemente y ayuda a desarrollar exploits de prueba de concepto.
  • Practica la Búsqueda de Vulnerabilidades con la Aplicación Web Damn Vulnerable (DVWA) - Una aplicación web intencionalmente vulnerable diseñada para prácticas de pruebas de penetración y formación en seguridad de aplicaciones web.
  • Practica con Herramientas de Pruebas de Seguridad de Aplicaciones Web - Metodologías, técnicas y herramientas completas de pruebas de seguridad de aplicaciones web de Burp Suite, incluyendo la Academia de Seguridad Web para aprendizaje práctico.
  • Aprende a Explotar Vulnerabilidades con Metasploitable - Una máquina virtual deliberadamente vulnerable para practicar técnicas de explotación usando Metasploit y otras herramientas de pruebas de penetración.
  • Domina las Técnicas de Pruebas de Penetración - Las directrices del Estándar de Ejecución de Pruebas de Penetración (PTES) para realizar pruebas de penetración exhaustivas y profesionales.
Módulo exploit: módulo de explotación después de un ataque de fuerza bruta exitoso en el servicio``` Usage: zscan exploit [command]

Available Commands: ldap Ldap queries redis Redis utilizes modules snmp snmp scan sshlogin Login using a user name, password, or key sunlogin sunlogin RCE CNVD-2022-10270

Flags: -h, --help help for exploit

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
<details>
<summary><b>módulo snmp:escaneo snmp</b></summary>```
Usage:
  zscan exploit snmp [flags]

---No content provided for translation.---``` Flags: --burpthread int Set burp password thread(recommend not to change) (default 100) --get string set an oid -h, --help help for snmp -H, --host string Set target --hostfile string Set host file -l, --listoid List commonly used OIDs --password string set a password (default "public") --passwordfile string passwords dict file, eg: ./dict/password.txt -p, --port port Set port (default 161) --version string specifies SNMP version to use. 1|2c|3 (default "2c") --walk string set an oid

Global Flags: --log Record the scan results in chronological order,Save path./log.txt -O, --output Whether to enter the results into a file(default ./result.txt),can use --path set --path string the path of result file (default "result.txt") -T, --thread thread Set thread eg:2000 (default 100) -t, --timeout time Set timeout(s) eg:5s (default 3s) -v, --verbose Show verbose information

root@kitploit:~
--listoidLista información de consultas comunes```
0: 系统基本信息         SysDesc                 GET     1.3.6.1.2.1.1.1.0
1: 监控时间             sysUptime               GET     1.3.6.1.2.1.1.3.0
2: 系统联系人           sysContact              GET     1.3.6.1.2.1.1.4.0
3: 获取机器名           SysName                 GET     1.3.6.1.2.1.1.5.0
4: 机器所在位置         SysLocation             GET     1.3.6.1.2.1.1.6.0
5: 机器提供的服务       SysService              GET     1.3.6.1.2.1.1.7.0
6: 系统运行的进程列表   hrSWRunName             WALK    1.3.6.1.2.1.25.4.2.1.2
7: 系统安装的软件列表   hrSWInstalledName       WALK    1.3.6.1.2.1.25.6.3.1.2
8: 网络接口列表         ipAdEntAddr             WALK    1.3.6.1.2.1.4.20.1.1
sshlogin:可进行ssh账号密码和密钥登陆``` Usage: zscan exploit sshlogin [flags]

Flags: -h, --help help for sshlogin -H, --host string Set ssh server host -d, --keypath string Set public key path -k, --login_key Use public key login -P, --password string Set ssh password -p, --port int Set ssh server port (default 22) -U, --username string Set ssh username

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
​	Inicio de sesión con cuenta y contraseña: `./zscan exploit ssh -H 172.16.95.24 -U root -P 123456`

​	Inicio de sesión con clave pública: `./zscan exploit ssh -H 172.16.95.24 -U root -k` 

​	Por defecto, el inicio de sesión con clave pública toma la clave privada del directorio `./ssh` del usuario actual. Se puede especificar la ruta de la clave privada con `-d/--keypath`.

</details>

<details>
<summary><b>redis: Módulo de explotación de redis</b></summary>```
Usage:
  zscan exploit redis [flags]

Flags:
  -c, --command string    Set the command you want to execute eg:(zscan exploit redis -H 172.16.95.16 -P 123456 -c "keys *")
      --dstpath string    set target path
      --exec              use execute the command mode
  -h, --help              help for redis
  -H, --host string       Set redis server host
      --lhost string      set listen host(!!!Make sure the target has access!!!)
      --lport int         set listen port(!!!Make sure the target has access!!!) (default 20001)
      --lua               use CVE-2022-0543 to attack
  -P, --password string   Set redis password
  -p, --port int          Set redis server port (default 6379)
      --so string         set .so file path
      --srcpath string    set upload file path
      --upload            use upload mode

Global Flags:
      --nobar           disable portscan progress bar
  -o, --output string   the path of result file (default "result.txt")
      --proxy string    Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080)
  -T, --thread thread   Set thread eg:2000 (default 600)
  -t, --timeout time    Set timeout(s) eg:5s (default 5s)
  -v, --verbose         Show verbose information
módulo sunlogin: módulo de explotación de RCE de Sunflower``` sunlogin RCE CNVD-2022-10270

Usage: zscan exploit sunlogin [flags]

Flags: -c, --command string command you want to execute -h, --help help for sunlogin -H, --host string Set redis server host -p, --port int Set RCE port

Global Flags: --nobar disable portscan progress bar -o, --output string the path of result file (default "result.txt") --proxy string Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080) -T, --thread thread Set thread eg:2000 (default 600) -t, --timeout time Set timeout(s) eg:5s (default 5s) -v, --verbose Show verbose information

root@kitploit:~
El descubrimiento de vulnerabilidades puede escanear los puertos 40000-65535 usando el módulo ps o el módulo all, y puede identificar automáticamente los puertos vulnerables.

Puede usar `-c` para ejecutar un solo comando, o sin `-c` entrar en modo interactivo (pseudo interactivo) para ejecutar comandos según la entrada.

`-p` especifica el puerto

</details>

</details>

## Ejemplo de uso 🤪

<details>
<summary><b>Descubrimiento de subred con ping:zscan ping --discover local</b></summary>```
zscan ping --discover local或者
zscan ping --discover 192.168.0.0

Escaneo de puertos ps: zscan ps -H ip``` zscan ps -H 172.16.95.1-30 [--noping禁用ping] zscan ps -H 172.16.95.1-30 --vulsacn //扫描完http banner之后进行poc探测 zscan ps -H 172.16.95.1-30 --nowebscan //只扫描端口,不进行http探测 ``` ![](https://assets.kitploit.com/production/public/readmes/5177/abda5c86b9152f1cbaa2bf48453657a948970a1d197fc6b37f55612db639032c.jpg) ![](https://assets.kitploit.com/production/public/readmes/5177/cd58bdc53b1644a3681763fe0bb3ffb0c5144c4e86fcd05ad72c6a6ac82f9611.jpg) ![](https://assets.kitploit.com/production/public/readmes/5177/1b2134fb3d91c5065923862db6eeaf838befb73a0ca0d5c9f3ffe20d817fabbe.jpg)
Fuerza bruta/inicio de sesión del módulo ssh ``` 爆破 zscan blast ssh -H 172.16.95.24 登录 zscan exploit ssh -H 172.16.95.24 -U root -P 123123 ``` ![](https://assets.kitploit.com/production/public/readmes/5177/b7c12e48ab63ea4592a1a8b37b39d35aa305f5dcec44a61a0e03eb83b766c7c0.jpg)
Módulo redis: fuerza bruta/ejecutar comandos``` 爆破 zscan blast redis -H 172.16.95.1-30 登录 zscan exploit redis -H 172.16.95.16 -c cmd ``` ![](https://assets.kitploit.com/production/public/readmes/5177/c105a39b6a4230ee42485b8e3b6fe93624b6ff77a13e061450361946712c5c0a.jpg)

winscan módulo:zscan scan winscan -H ip``` zscan scan winscan -H 172.16.95.1-33 ``` ![](https://assets.kitploit.com/production/public/readmes/5177/4741150f5ed9a47d1770e04ab344b459e3624ad02634648d4c08a92f9b58397b.jpg)
Llamar a todos los módulos de escaneo y fuerza bruta:zscan all -H ip``` zscan all -H 172.16.95.1-30 zscan all -H 172.16.95.1-30 --novulscan //不进行poc探测 ``` ![](https://assets.kitploit.com/production/public/readmes/5177/35c973af3de607d1483c3d657b5573ae82d27735bc22e64cb033c56c2635fff2.jpg)
módulo de escaneo de poc:zscan scan poc -u url``` zscan scan poc -l //列出所有内置poc zscan scan poc -l --pocname weblogic //列出内置和weblogic有关的poc zscan scan poc -u http://172.16.95.24:8080 //使用所有内置poc扫描目标 zscan scan poc -u http://172.16.95.24:8080 --pocname weblogic //只使用weblogic的poc zscan scan poc -U http://172.16.95.24:8080 --pocpath /root/pocs //使用整个pocs目录下的poc zscan scan poc --urlfile url.txt --pocpath /root/pocs/weblogic.yml //使用单个poc批量扫描目标 ```

Ventajas de la herramienta🚀

  • Comandos simples y convenientes, llamadas a funciones modulares claras y concisas, fáciles de ampliar para añadir nuevas funcionalidades y también fáciles de eliminar módulos innecesarios.
  • Función única de descubrimiento de segmentos de red. Si alguien tiene mejores métodos de descubrimiento, puede decírmelo y los añadiré 😜.
  • No es solo un escáner, sino que también integra varias funcionalidades prácticas comunes, incluye función de proxy incorporada (debido a que el controlador de la base de datos no proporciona interfaz, mssql, mongo, postgres no pueden usar proxy para la fuerza bruta y ejecución de comandos; si algún experto sabe cómo hacerlo, puede contactarme). Se puede considerar un conjunto de herramientas.
  • La exploración de puertos y la fuerza bruta están perfectamente integradas, mejorando enormemente la velocidad de escaneo: esta ventaja se refleja claramente en el módulo all. Durante el escaneo de puertos multihilo, se evalúa si el puerto está abierto; si se puede realizar fuerza bruta, inmediatamente se abre un nuevo hilo dentro del hilo actual para realizar la fuerza bruta. Esto acelera significativamente el proceso, eliminando el paso intermedio de obtener los puertos abiertos antes de lanzar la fuerza bruta.
  • Formato de salida estético y legible: se distingue por colores. No solo se muestra la salida durante el proceso, sino que también se genera un resultado de escaneo al final, mostrando todos los resultados de escaneo y fuerza bruta del proceso (véase el formato de salida al inicio de la introducción). Además, admite guardar los resultados del escaneo en un archivo.
  • No solo permite fuerza bruta en los servicios, sino que también ejecuta comandos si la fuerza bruta tiene éxito. En el futuro se añadirá una función de explotación con un solo clic.
  • En desarrollo activo. Si algún experto encuentra algún problema o bug, o si tiene alguna idea de funcionalidad novedosa e interesante, puede contactarme.

Compilación desde el código fuente👨

Se recomienda compilarlo usted mismo, ya que a veces los lanzamientos (releases) pueden no estar actualizados. Por ciertas razones, ahora no se proporciona el binario compilado de zscan. El comando de compilación está a continuación, tómenlo según sea necesario.``` go get github.com/zyylhn/zscan go bulid 或者docker编译 docker pull golang docker run -v "$GOPATH":/go -v "$PWD":/go/src/zscan -w /go/src/zscan -e GOOS="darwin" -e GOARC H="amd64" golang go build -v -ldflags="-s -w" -trimpath -o zscan_mac_x64 docker run -v "$GOPATH":/go -v "$PWD":/go/src/zscan -w /go/src/zscan -e GOOS="windows" -e GOAR CH="amd64" golang go build -v -ldflags="-s -w" -trimpath -o zscan_x64.exe docker run -v "$GOPATH":/go -v "$PWD":/go/src/zscan -w /go/src/zscan -e GOOS="linux" -e GOARCH ="amd64" golang go build -v -ldflags="-s -w" -trimpath -o zscan_linux_x64

root@kitploit:~
## Descargo de responsabilidad🧐

Esta herramienta está destinada únicamente a **actividades de seguridad empresarial legalmente autorizadas**. Si necesita probar su funcionalidad, configure su propio entorno de destino.

Al usar esta herramienta para realizar pruebas, debe asegurarse de que la acción cumpla con las leyes y regulaciones locales y de que haya obtenido la autorización adecuada. **No escanee objetivos no autorizados.**

Si incurre en cualquier comportamiento ilegal mientras usa esta herramienta, deberá asumir las consecuencias correspondientes por su cuenta. No asumiremos ninguna responsabilidad legal o solidaria.

Antes de instalar y usar esta herramienta, **lea atentamente y comprenda completamente cada término**. Los términos de limitación, exención de responsabilidad u otros que involucren sus derechos importantes pueden resaltarse en negrita, subrayado, etc., para llamar su atención. A menos que haya leído completamente, entendido completamente y aceptado todos los términos de este acuerdo, no instale ni use esta herramienta. Su uso o cualquier otra forma explícita o implícita de aceptación de este acuerdo se considerará como que ha leído y aceptado estar sujeto a este acuerdo.

## Enlaces de referencia👀

https://github.com/shadow1ng/fscan

https://github.com/k8gege/LadonGo

## Progreso de actualización💪

### Módulos de funcionalidad

- [x] Módulo ping: descubrimiento de host mediante ping
  - [x] Llamar al ping del sistema
  - [x] Enviar paquetes ICMP
  - [x] Descubrimiento de segmentos de red interna
    - [x] Ping a la puerta de enlace del segmento B
    - [x] Escaneo OXID
- [x] Módulo de escaneo de puertos PS
  - [x] Obtener título HTTP y código de estado
  - [x] Identificación de huella digital HTTP
  - [x] Verificación de POC HTTP
  - [x] Devolver información del banner
  - [x] Hacer ping antes de escanear
- [x] Módulo all: invoca todos los módulos
- [x] Módulo blast
    - [x] Módulo SSH
    - [x] Módulo FTP
    - [x] Módulo MySQL
    - [x] Módulo MSSQL
    - [x] Módulo MongoDB
    - [x] Módulo Redis
    - [x] Módulo PostgreSQL
    - [x] LDAP
    - [x] SMB
    - [x] RDP
- [x] Módulo scan
    - [x] Módulo de escaneo de servidores proxy
        - [x] Escaneo de servidores proxy SOCKS5
    - [x] Módulo winscan (cortesía de @https://github.com/shenzhibuqins)
        - [x] Función de escaneo SMB
        - [x] Función de escaneo OXID
        - [x] Función de escaneo NetBIOS
    - [x] Módulo de escaneo 17010
    - [x] POC
        - [x] Soporte para Xray v1
        - [ ] Soporte para Xray v2

- [x] Módulo server
  - [x] Módulo de servidor SOCKS
    - [x] Autenticación por nombre de usuario y contraseña
  - [x] Módulo de servidor HTTP
      - [x] Función de autenticación
      - [x] Función de carga de archivos

- [x] Módulo tool
    - [x] Módulo nc
        - [x] Función de escucha de puertos
        - [x] Función de conexión a puertos

    - [x] Función de búsqueda de archivos
        - [x] Búsqueda simultánea de múltiples archivos, multiproceso
        - [x] Búsqueda por expresión regular
        - [ ] Búsqueda de contenido de archivos
    - [ ] Función de empaquetado de carpetas

- [x] Módulo exploit
    - [x] Módulo sshloin
        - [x] Función de inicio de sesión con nombre de usuario y contraseña (interactivo)
        - [x] Función de inicio de sesión con clave (interactivo)
    - [x] Módulo Redis
        - [x] Ejecutar comandos de Redis
        - [x] Vulnerabilidad de escape de sandbox Lua
        - [x] RCE mediante replicación maestro-esclavo
    - [x] Consulta LDAP
    - [ ] Consulta SNMP
    - [ ] Módulo WMI

- [ ] ..........

### Funcionalidades de la propia herramienta

- [x] Salida de resultados a archivo
- [x] Función de registro de cada ejecución
- [x] Función de configuración de hilos (el escaneo admite hilos muy altos)
- [x] Función de configuración de timeout
- [x] Función de proxy
    - [ ] Función de proxy para protocolo UDP
    - [x] Función de proxy para protocolo TCP
    - [x] Función de proxy para fuerza bruta y ejecución de comandos
        - [x] MySQL
        - [ ] MSSQL
        - [x] Redis
        - [x] MongoDB
        - [ ] PostgreSQL
        - [x] SSH
        - [x] FTP
- [x] Función de lectura de objetivos desde archivo
- [x] La fuerza bruta admite diccionarios muy grandes
- [ ] ..........

### Objetivos futuros

- [ ] Mejorar los módulos de fuerza bruta de servidores de la versión actual, admitir más comandos, lograr un uso de comandos sin obstáculos en la medida de lo posible, y agregar el módulo de explotación de bases de datos (explotación después de una fuerza bruta exitosa en la base de datos)
  - [ ] MySQL
  - [ ] MSSQL
  - [ ] PostgreSQL
  - [ ] MongoDB
  - [ ] FTP
- [ ] Lanzar una versión ligera de zscna
  - [ ] Eliminar todos los controladores de bases de datos para reducir el tamaño, a costa de no poder ejecutar comandos
  - [ ] Eliminar módulos de bases de datos no utilizados o innecesarios

¡Gracias por las estrellas, amigos! 🥳

¡Las preguntas son bienvenidas! 👏

¡Comparte huellas digitales web y POCs!

A los desarrolladores que disfrutan escribiendo herramientas en Go, pueden unirse a nosotros: [email protected] 😃
Descargar herramienta
http://user:pass@host:port
  • --user-agent: Personaliza el User-Agent.
  • --cookie: Personaliza la Cookie.
  • --header: Personaliza la cabecera HTTP. Se puede usar varias veces. Ejemplo: --header "X-Forwarded-For: 127.0.0.1".
  • -w / --workers: Establece el número de hilos de trabajo concurrentes. Valor predeterminado: 10.
  • -t / --threads: Establece el número de hilos. Valor predeterminado: 5.
  • --max-depth: Profundidad máxima de escaneo. Valor predeterminado: 3.``` Usage: zscan all [flags]
  • --pocpth:Si se especifica un directorio, se usarán todos los PoCs en ese directorio; si se especifica un PoC, solo se usará ese PoC

    --pocthread:Hilos para el escaneo de PoCs

    --url/--urlfile:Especifica el objetivo, -u/--url especifica uno solo, se puede escanear en lote especificando un archivo .txt

    开一个简单的http服务器,能下载文件和上传文件,上传文件需要使用-u参数

    -a指定监听的ip和地址

    -d指定httpserver开启的根目录

    -P和-U设置身份验证的用户名密码

  • Desarrolla Habilidades de Automatización de la Seguridad - El Estándar de Verificación de Seguridad de Aplicaciones (ASVS) de OWASP para crear prácticas de codificación segura y automatizar las pruebas de seguridad en tu ciclo de vida de desarrollo.``` Usage: zscan nc [flags]
  • Flags: -a, --addr string listen/connect host address eg(listen):-a 0.0.0.0:4444 eg(connect):-a 172.16.95.1:4444 -h, --help help for nc -l, --listen listen mode(default connect)

    Global Flags: --log Record the scan results in chronological order,Save path./log.txt -O, --output Whether to enter the results into a file(default ./result.txt),can use --path set --path string the path of result file (default "result.txt") -T, --thread thread Set thread eg:2000 (default 100) -t, --timeout time Set timeout(s) eg:5s (default 3s) -v, --verbose Show verbose information

    -a指定地址,不使用-l的话代表连接目标,使用-l为监听端口

    root@kitploit:~
    </details>
    
    <details>
    <summary><b>searchfile模块: búsqueda de archivos multihilo, con soporte para expresiones regulares</b></summary>```
    Search files that support regular matching
    
    Usage:
      zscan tools searchfile [flags]
    
    Flags:
      -d, --dir string           set search base Dir
      -f, --file stringArray     set filename eg:zscan tools searchfile -d ./ -f pass.txt -f user.txt
      -h, --help                 help for searchfile
      -r, --regexp stringArray   Specifies the re matching parameters
          --walk int             Traversal turns on multithreading depth(Try not to go above 5) (default 3)
    
    Global Flags:
          --nobar           disable portscan progress bar
      -o, --output string   the path of result file (default "result.txt")
          --proxy string    Connect with a proxy(user:[email protected]:1080 or 172.16.95.1:1080)
      -T, --thread thread   Set thread eg:2000 (default 600)
      -t, --timeout time    Set timeout(s) eg:5s (default 5s)
      -v, --verbose         Show verbose information
    

    -d especifica el directorio raíz de búsqueda. En Linux se puede usar una ruta relativa; en Windows se necesita una ruta absoluta.

    -f especifica el nombre del archivo a buscar. Se pueden usar -f archivo1 -f archivo2 para buscar múltiples archivos.

    -r utiliza expresiones regulares. En realidad, -f también usa expresiones regulares, pero se reemplaza por ^nombre_archivo$

    --walk se refiere a la profundidad del directorio para abrir hilos de recorrido: lógicamente, recorre cuántas carpetas hay debajo del directorio dado y luego abre tantos hilos para recorrer esas subcarpetas. Por lo tanto, esta profundidad no debe ser demasiado alta. Aunque cuanto más profundo, más rápido, puede causar un uso elevado de la CPU (a tres niveles ya es bastante alto, por lo que en escenarios especiales se recomienda usar 1).

    可以通过使用--walk和--get进行查询

    密码不指定的话默认使用public

    -c se utiliza para ejecutar el modo de comando normal de Redis

    --exec: modo de ejecución de comandos mediante replicación maestro-esclavo

    --upload: modo de carga de archivos mediante replicación maestro-esclavo

    --lua: modo de explotación de vulnerabilidad de escape de sandbox Lua

    Se requiere uno de los cuatro parámetros anteriores

    --detpath: se utiliza para especificar la ruta absoluta donde la replicación maestro-esclavo sube el archivo al objetivo

    --lport: puerto de escucha del nodo maestro (es decir, zscan) durante la replicación maestro-esclavo, por defecto 20001

    --lhost: dirección de escucha del nodo maestro (es decir, zscan) durante la replicación maestro-esclavo, debe garantizar que el Redis objetivo pueda acceder a ella

    --so: archivo .so que se sube al objetivo al ejecutar comandos mediante replicación maestro-esclavo

    --srcpath: archivo fuente que se sube mediante replicación maestro-esclavo