Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
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
url-regex-safe — Expresión regular para coincidencia de URLs. Versión mantenida, segura y compatible con navegadores de url-regex. Resuelve CVE-2020-7661 para servidores Node.js. | Kitploit
Herramientas/GitHubGitHub/spamscanner/url-regex-safe
Utilidades de Propósito GeneralAnálisis EstáticoAnálisis de VulnerabilidadesScripting y AutomatizaciónSeguridad Web
GitHubspamscanner/url-regex-safe

url-regex-safe

Expresión regular para coincidencia de URLs. Versión mantenida, segura y compatible con navegadores de url-regex. Resuelve CVE-2020-7661 para servidores Node.js.

Ver Repositorio
811614hace 3 añosRevisado por Kitploit
Sitio web

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

url-regex-safe

build status code style styled with prettier made with lass license npm downloads

Expresión regular para coincidir con URLs. Versión mantenida, segura y compatible con navegadores de [url-regex][]. Resuelve [CVE-2020-7661][cve] para servidores Node.js. Funciona en Node v14+ y navegadores. Mantenido para [Spam Scanner][spam-scanner] y [Forward Email][forward-email].

Tabla de Contenidos

  • Prólogo
  • Instalación
  • Uso
    • Node
    • Navegador
  • Opciones
  • Consejos rápidos y migración desde url-regex
  • Limitaciones
  • Contribuyentes
  • Licencia

Prólogo

Después de descubrir [CVE-2020-7661][cve] y revelarlo públicamente (a través de mi trabajo en [Spam Scanner][spam-scanner] y [Forward Email][forward-email]) – usé una implementación de [url-regex][] con algo de lógica adicional encima para filtrar coincidencias de URL no deseadas.

Sin embargo, después de usarlo en [Forward Email][forward-email] en producción (que procesa cientos de miles de correos electrónicos por semana), encontré y documenté varios problemas principales más con [url-regex][].

Al darme cuenta de que [url-regex][] ya no se mantiene activamente, tiene 9 solicitudes de extracción abiertas al momento de escribir esto, y además carecía de soporte para navegadores – decidí escribir este paquete para todos y fusionar todas las solicitudes de extracción abiertas.

Es de esperar que este paquete se parezca más al uso real que se le daría a una expresión regular de URL, y que además permita al usuario configurarlo como desee. Por favor, echa un vistazo a [Forward Email][forward-email] si este paquete te ayudó, y explora nuestro código fuente en GitHub, que muestra cómo usamos este paquete.

Instalación

NOTA: El comportamiento predeterminado de este paquete intentará cargar re2 (es una dependencia opcional entre pares utilizada para prevenir ataques de denegación de servicio por expresión regular y más). Si deseas usar este comportamiento, debes tener re2 instalado mediante npm install re2 – de lo contrario, recurrirá a usar instancias normales de RegExp. A partir de v4.0.0 agregamos una opción si deseas forzar a este paquete a que ni siquiera intente cargar re2 (por ejemplo, si está en tu node_modules pero no quieres usarlo) – simplemente pasa re2: false como opción.

[npm][]:

npm install url-regex-safe

Uso

Node

Hemos resuelto [CVE-2020-7661][cve] incluyendo [RE2][] para uso en Node.js. Ya no tendrás que envolver manualmente tus expresiones regulares de URL con new RE2(urlRegex()) a través de url-regex-safe (lo hacemos automáticamente por ti).

const urlRegexSafe = require('url-regex-safe');

const str = 'some long string with url.com in it';
const matches = str.match(urlRegexSafe());

for (const match of matches) {
  console.log('match', match);
}

console.log(urlRegexSafe({ exact: true }).test('github.com'));

Navegador

Dado que [RE2][] no está hecho para el navegador, no se usará y, por lo tanto, [CVE-2020-7661][cve] sigue siendo un problema en el lado del cliente. Sin embargo, no es grave, ya que lo máximo que podría hacer es bloquear la pestaña del navegador (mientras que en el lado de Node.js habría bloqueado todo el proceso y lanzado una excepción de falta de memoria).

VanillaJS

¡Esta es la solución para ti si solo usas etiquetas <script> en todas partes!

<script src="https://unpkg.com/url-regex-safe"></script>
<script type="text/javascript">
  (function() {
    var str = 'some long string with url.com in it';
    var matches = str.match(urlRegexSafe());

    for (var i=0; i<matches.length; i++) {
      console.log('match', matches[i]);
    }

    console.log(urlRegexSafe({ exact: true }).test('github.com'));
  })();
</script>

Bundler

Asumiendo que usas [browserify][], [webpack][], [rollup][] u otro bundler, simplemente puedes seguir el uso de Node anterior.

TypeScript

Para usar este paquete con TypeScript, puedes instalar el paquete @types/url-regex-safe para las definiciones de tipos.

npm install --save-dev @types/url-regex-safe

Opciones

Descargar herramienta