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
apache__mina-sshd_CVE-2023-35887_2-9-2 — Biblioteca de cliente/servidor SSH Java pura que implementa el protocolo SSH-2 con soporte para múltiples cifrados, intercambios de claves, métodos de autenticación, SFTP, SCP y reenvío de puertos para acceso remoto seguro. | Kitploit
Herramientas/GitHubGitHub/shoucheng3/apache__mina-sshd_cve-2023-35887_2-9-2
Herramientas de Cifrado/DescifradoAnálisis de VulnerabilidadesSeguridad de RedesCriptografíaPruebas de PenetraciónUtilidades y FrameworksAutenticaciónHerramienta de Acceso Remoto

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
GitHub
shoucheng3/apache__mina-sshd_cve-2023-35887_2-9-2

apache__mina-sshd_CVE-2023-35887_2-9-2

Biblioteca de cliente/servidor SSH Java pura que implementa el protocolo SSH-2 con soporte para múltiples cifrados, intercambios de claves, métodos de autenticación, SFTP, SCP y reenvío de puertos para acceso remoto seguro.

Ver Repositorio
2hace 1 añoAún no revisado

Apache MINA SSHD

Apache MINA SSHD

Apache MINA SSHD es una biblioteca 100% Java pura para dar soporte a los protocolos SSH tanto en el lado del cliente como en el del servidor. No pretende ser un reemplazo del cliente SSH o del servidor SSH de los sistemas operativos Unix, sino proporcionar soporte para aplicaciones basadas en Java que requieran compatibilidad con SSH.

La biblioteca puede aprovechar varios back-ends de E/S:

  • El transporte predeterminado está integrado y utiliza AsynchronousSocketChannels de Java.
  • Apache MINA, una biblioteca de E/S asíncrona escalable y de alto rendimiento, se puede utilizar en su lugar, o
  • también es compatible con Netty, el framework de red asíncrono y dirigido por eventos.

Estándares admitidos

Documentación de implementación de referencia

  • RFC 4251 - The Secure Shell (SSH) Protocol Architecture
  • RFC 4252 - The Secure Shell (SSH) Authentication Protocol
  • RFC 4253 - The Secure Shell (SSH) Transport Layer Protocol
  • RFC 4254 - The Secure Shell (SSH) Connection Protocol
  • RFC 4256 - Generic Message Exchange Authentication for the Secure Shell Protocol (SSH)
  • RFC 4335 - The Secure Shell (SSH) Session Channel Break Extension
  • RFC 4344 - The Secure Shell (SSH) Transport Layer Encryption Modes
  • RFC 4345 - Improved Arcfour Modes for the Secure Shell (SSH) Transport Layer Protocol
  • RFC 4419 - Diffie-Hellman Group Exchange for the Secure Shell (SSH) Transport Layer Protocol
  • RFC 4716 - The Secure Shell (SSH) Public Key File Format
  • RFC 5208 - Public-Key Cryptography Standards (PKCS) #8 - version 1.2
  • RFC 5480 - Elliptic Curve Cryptography Subject Public Key Information
  • RFC 5647 - AES Galois Counter Mode for the Secure Shell Transport Layer Protocol
  • RFC 5656 - Elliptic Curve Algorithm Integration in the Secure Shell Transport Layer
  • RFC 5915 - Elliptic Curve Private Key Structure
  • RFC 6668 - SHA-2 Data Integrity Verification for the Secure Shell (SSH) Transport Layer Protocol
  • RFC 8160 - IUTF8 Terminal Mode in Secure Shell (SSH)
  • RFC 8268 - More Modular Exponentiation (MODP) Diffie-Hellman (DH) Key Exchange (KEX) Groups for Secure Shell (SSH)
  • RFC 8308 - Extension Negotiation in the Secure Shell (SSH) Protocol
    • Nota: - el código contiene hooks para implementar el RFC y también proporciona una implementación predeterminada de cliente y servidor para las extensiones server-sig-algs.
  • RFC 8332 - Use of RSA Keys with SHA-256 and SHA-512 in the Secure Shell (SSH) Protocol
    • Nota: - el lado del servidor admite estas firmas de forma predeterminada. El lado del cliente requiere una inicialización específica - ver sección 3.3 y también los hooks mencionados anteriormente para RFC 8308.
  • RFC 8731 - Secure Shell (SSH) Key Exchange Method Using Curve25519 and Curve448
  • Key Exchange (KEX) Method Updates and Recommendations for Secure Shell
  • OpenSSH support for U2F/FIDO security keys
    • Nota: el lado del servidor admite estas claves de forma predeterminada. El lado del cliente requiere una inicialización específica
  • OpenSSH public-key certificate authentication system for use by SSH
  • SSH proxy jumps
  • SFTP versiones 3-6 + extensiones
    • supported - DRAFT 05 - section 4.4
    • supported2 - DRAFT 13 section 5.4
    • versions - DRAFT 09 Section 4.6
    • vendor-id - DRAFT 09 - section 4.4
    • acl-supported - DRAFT 11 - section 5.4
    • newline - DRAFT 09 Section 4.3
    • md5-hash, md5-hash-handle - DRAFT 09 - section 9.1.1
    • check-file-handle, -
  • Endless tarpit - ver sección HOWTO(s).

Soporte implementado/disponible

Métodos de autenticación

  • hostbased, publickey, OpenSSH host-based public-key, keyboard-interactive, password

Cifradores

  • aes128cbc, aes128ctr, aes192cbc, aes192ctr, aes256cbc, aes256ctr, arcfour128, arcfour256, blowfish-cbc, [email protected], [email protected], [email protected], 3des-cbc

Dígests

  • md5, sha1, sha224, sha256, sha384, sha512

Macs

  • hmacmd5, hmacmd596, hmacsha1, hmacsha196, hmacsha256, hmacsha512, [email protected] , [email protected], [email protected]

Intercambio de claves

  • diffie-hellman-group1-sha1, diffie-hellman-group-exchange-sha256, diffie-hellman-group14-sha1, diffie-hellman-group14-sha256 , diffie-hellman-group15-sha512, diffie-hellman-group16-sha512, diffie-hellman-group17-sha512, diffie-hellman-group18-sha512 , ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, curve25519-sha256, [email protected], curve448-sha512
    • En versiones de Java anteriores a Java 11, se requiere Bouncy Castle para curve25519-sha256, [email protected] o curve448-sha512.

Compresiones

  • none, zlib, [email protected]

Firmas/Claves

  • ssh-dss, ssh-rsa, rsa-sha2-256, rsa-sha2-512, nistp256, nistp384, nistp521 , ssh-ed25519 (requiere el módulo opcional eddsa), [email protected], [email protected] , [email protected], [email protected], [email protected] , [email protected], [email protected], [email protected]

Nota: La lista anterior contiene todos los ajustes de seguridad admitidos en el código. Sin embargo, de acuerdo con las recomendaciones más recientes, la configuración predeterminada de cliente/servidor incluye únicamente los ajustes de seguridad que actualmente se consideran seguros de usar. Los usuarios que deseen incluir los ajustes no seguros deben hacerlo explícitamente. Los siguientes ajustes han sido declarados obsoletos y ya no se incluyen en la configuración predeterminada:

  • RFC 8758 - Deprecating RC4 in Secure Shell (SSH)
  • RFC 8429 - Deprecate Triple-DES (3DES) and RC4 in Kerberos
    • Aunque se refiere a Kerberos, también menciona debilidades en DES.
  • OpenSSH release notes - normalmente un buen indicador de las prácticas de facto
  • Intercambios de claves y firmas basados en SHA-1
  • Algoritmos HMAC truncados y basados en MD5
  • RFC 8270 - Increase the Secure Shell Minimum Recommended Diffie-Hellman Modulus Size to 2048 Bits Nota: todavía es posible usar 1024 inicializando el valor programáticamente o mediante una propiedad del sistema - ver Security providers setup. El código aún contiene módulos para 1024 y los usará si el usuario explícitamente reduce el mínimo predeterminado a ese valor.

Advertencia: Según RFC 8332 - sección 3.31

La experiencia de implementación ha demostrado que hay servidores que aplican penalizaciones de autenticación a los clientes que intentan utilizar algoritmos de clave pública que el servidor SSH no admite.

Al autenticarse con una clave RSA contra un servidor que no implementa la extensión "server-sig-algs", los clientes PUEDEN usar por defecto una firma "ssh-rsa" para evitar penalizaciones de autenticación. Cuando los nuevos algoritmos rsa-sha2-* hayan sido adoptados de forma suficientemente amplia como para justificar la desactivación de "ssh-rsa", los clientes PUEDEN usar por defecto uno de los nuevos algoritmos.

Esto significa que los usuarios que encuentren este problema (y otros relacionados) deben modificar los ajustes de seguridad admitidos explícitamente para evitar el problema.

Aviso especial: ssh-rsa se mantuvo como parte de la configuración predeterminada porque todavía hay muchos sistemas/usuarios que lo utilizan. Sin embargo, en una versión futura se eliminará de la configuración predeterminada. Por lo tanto, recomendamos encarecidamente a los usuarios migrar a otras claves (por ejemplo, ECDSA, ED25519) lo antes posible.

Release notes

Reporte de problemas

Los informes de errores y las solicitudes de mejoras o funciones se pueden presentar en el rastreador de incidencias de GitHub o en el rastreador de incidencias de Apache.

Los problemas sensibles, como las vulnerabilidades de seguridad, deben informarse a través de canales privados, no mediante ninguno de los rastreadores de incidencias.

Requisitos principales

  • Java 8+ (a partir de la versión 1.3)

  • Slf4j

El código solo requiere el módulo abstracto principal slf4j-api. La implementación real de la API de registro se puede seleccionar entre los muchos adaptadores existentes.

Estructura básica de los artefactos

  • sshd-common - contiene las clases básicas utilizadas en todo el proyecto, así como código que no requiere soporte de red de cliente o servidor.

  • sshd-core - contiene el código básico de cliente/servidor SSH que implementa la conexión, el transporte, los canales, el reenvío, etc.

    • sshd-mina, sshd-netty - reemplazos para el conector NIO2 predeterminado utilizado para establecer y gestionar conexiones de red utilizando las bibliotecas MINA y/o Netty respectivamente.
  • sshd-sftp - contiene el subsistema SFTP del lado del servidor y el código del cliente SFTP.

    • sshd-spring-sftp - contiene un adaptador SFTP compatible con Spring Integration
  • sshd-scp - contiene el manejador de comandos SCP del lado del servidor y el código del cliente SCP.

  • sshd-ldap - contiene autenticadores de contraseña y clave pública del lado del servidor que utilizan un servidor LDAP.

  • sshd-git - contiene reemplazos para la fábrica de sesiones SSH de JGit.

  • sshd-osgi - contiene un artefacto que combina sshd-common y sshd-core para poder implementarse en entornos OSGi.

  • sshd-putty - contiene código que puede analizar archivos de clave de PUTTY.

  • sshd-openpgp - contiene código que puede analizar archivos de clave de OpenPGP (con algunas limitaciones - ver la sección correspondiente)

  • sshd-cli - contiene plantillas simples para cliente/servidor de línea de comandos - se utiliza para proporcionar una apariencia similar a los comandos Linux ssh/sshd.

  • sshd-contrib - código experimental que actualmente está en revisión y puede terminar en uno de los otros artefactos (o convertirse en un artefacto completamente nuevo - por ejemplo, sshd-putty evolucionó de esta manera).

Dependencias opcionales

Referencia rápida

Compilar el código

Incluyendo pruebas

root@kitploit:~
mvn clean install

Sin pruebas

root@kitploit:~
mvn -Pquick clean install

Configurar un cliente SSH en 5 minutos

Integrar una instancia de servidor SSHD en 5 minutos

Desglose de funcionalidades SSH

Configuración de proveedores de seguridad

Infraestructura de comandos

SCP

SFTP

Reenvío de puertos

Clases de soporte interno

Listeners y manejadores de eventos

Clientes de línea de comandos

Soporte GIT

Soporte de análisis de archivos de configuración/datos

Módulos de extensión

HOWTO(s)

Documentación técnica

Intercambio de claves SSH

Reenvío de puertos TCP/IP

Solicitudes globales

Descargar herramienta
check-file-name
DRAFT 09 - section 9.1.2
  • copy-file, copy-data - DRAFT 00 - sections 6, 7
  • space-available - DRAFT 09 - section 9.2
  • filename-charset, filename-translation-control - DRAFT 13 - section 6 - solo lado del cliente
  • Varias extensiones SFTP de OpenSSH