From 2628d8a72d22f8b801d98a4881f8caaa474b4189 Mon Sep 17 00:00:00 2001 From: Adquinson Farias <15015274+dafarias@users.noreply.github.com> Date: Wed, 19 Oct 2022 22:36:49 -0400 Subject: [PATCH 1/2] Finished adding Spanish translated messages. --- .../resources/i18n/messages_es.properties | 288 ++++++++++++++++++ 1 file changed, 288 insertions(+) create mode 100644 src/main/resources/i18n/messages_es.properties diff --git a/src/main/resources/i18n/messages_es.properties b/src/main/resources/i18n/messages_es.properties new file mode 100644 index 00000000..6fb5bade --- /dev/null +++ b/src/main/resources/i18n/messages_es.properties @@ -0,0 +1,288 @@ +EMPTY_LABEL= + +# Exception Code Labels +INVALID_END_POINT=El endpoint {0} no está disponible. Por favor, chequea el nombre del endpoint desde la llamada allEndPoint e intenta de nuevo. +INVALID_LEVEL=El nivel {0} no es un valor válido de nivel. Por favor, chequea el nivel soportado y el endpoint desde la llamada allEndPoint e intenta de nuevo. +UNAVAILABLE_LEVEL=El nivel {0} en el endpoint {1} no está disponible. Por favor, chequea el nivel soportado y el endpoint desde la llamada allEndPoint e intenta de nuevo. +INVALID_ACCESS=No se puede acceder al método {0}. Los motivos, podrían ser visibilidad limitada o definición incorreta del método. Por favor, chequea los logs. +INVALID_AGRUMENTS=Al método {0} no se le ha pasado un conjunto de argumentos correcto. Por favor, chequea los logs. +SYSTEM_ERROR=Ha ocurrido un error de sistema. Por favor, chequea los logs. + +# XSS based Injections +XSS_VULNERABILITY=Los ataques de Cross-Site Scripting (XSS) son un tipo de inyección, en la cual se incluyen scripts maliciosos \ +en sitios web benignos y confiables. Los ataques de XSS ocurren cuando el atacante usa una aplicación web para enviar código malicioso,\ + generalmente en la forma de un script adicional dirigido a un usuario final. Las aperturas que permiten que estos ataques tengan éxito \ + son bastante generales y pueden ocurrir en la aplicación web en cualquier lugar donde se use la entrada del usuario para que se muestre como salida \ + sin que esta se haya validado o encodificado.

Un atacante puede usar XSS para enviar un script malicioso a un usuario ignorante de esto.\ + El navegador del usuario final \u2019s no tiene forma de saber que el script no es confiable, y por tanto ejecutará el script. \ + Debido a que cree que el script viene de una fuente confiable, el script malicioso puede tener acceso a las cookies, tokens de sesión, \ + u otra información sensible contenida dentro del navegador, y que pueda ser usada en ese sitio web. Estos scripts pueden incluso reescribir el contenido \ + HTML de la página.

Para más información sobre XSS:
  1. Owasp XSS \ +
  2. Seguridad de Aplicaciones de Google
+ +#### AttackVector description +PERSISTENT_XSS_HTML_TAG_URL_PARAM_DIRECTLY_INJECTED_IN_DIV_TAG=\"comment\" el valor del parámetro query se añade directamente a la etiqueta \"div\". +PERSISTENT_XSS_HTML_TAG_URL_PARAM_DIRECTLY_INJECTED_IN_DIV_TAG_REPLACING_IMG_AND_INPUT_TAG=\"comment\" el valor del parámetro query se añade directamente a la etiqueta \"div\" después de reemplazar las etiquetas " Esta vulnerabilidad se relaciona con los ataques XSS a través de la etiqueta Image. Si.. +#### Attack Vector Description +XSS_DIRECT_INPUT_SRC_ATTRIBUTE_IMG_TAG=Los parámetros de la URL se añaden directamente al atributo src de la etiqueta Image. +XSS_QUOTES_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=Las comillas se añaden a los parámetros de la URL y luego van directamente al atributo src de la etiqueta Image. +XSS_HTML_ESCAPE_ON_DIRECT_INPUT_SRC_ATTRIBUTE_IMG_TAG=El escape HTML se hace en los parámetros de la URL y luego se añaden directamente al atributo src de la etiqueta Image. +XSS_HTML_ESCAPE_ON_DIRECT_INPUT_AND_REMOVAL_OF_VALUES_WITH_PARENTHESIS_SRC_ATTRIBUTE_IMG_TAG=El escape HTML junto con la remoción de valores que contengan parentesis se hace a los parametros de la URL y luego se añaden directamente al atributo src de la etiqueta Image. +XSS_QUOTES_AND_WITH_HTML_ESCAPE_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=El escape HTML se hace en los parámetros de la URL y luego se insertan dentro de las comillas directamente al atributo src de la etiqueta Image. +XSS_HTML_ESCAPE_PLUS_FILTERING_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG_BUT_NULL_BYTE_VULNERABLE=Los parámetros de la URL se escapan con HTML y se validan contra una lista blanca, luego son insertados directamente al atributo src de la etiqueta Image. Sin embargo, el validador usado para comprobar estos nombres de archivo es vulnerable a la inyección del Byte Null. +XSS_QUOTES_AND_WITH_HTML_ESCAPE_PLUS_FILTERING_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=Los parámetros se escapan con HTML y se validan contra una lista blanca y se insertan dentro de comillas directamente al atributo src de la etiqueta Image. + +## Html Tag Injection +XSS_HTML_TAG_INJECTION=Ataque XSS basado en etiquetas HTML. +XSS_DIRECT_INPUT_DIV_TAG=La etiqueta HTML se inyecta directamente en la etiqueda div. + +### Attack vectors +XSS_DIRECT_INPUT_DIV_TAG=Los parámetros de la URL se añaden directamente a la etiqueta div. +XSS_DIRECT_INPUT_DIV_TAG_AFTER_REMOVING_VALUES_CONTAINING_ANCHOR_SCRIPT_AND_IMG_TAG=Los parámetros de la URL se añaden directamente a la etiqueta div si no tienen las etiquetas Script/Image o Anchor. +XSS_DIRECT_INPUT_DIV_TAG_AFTER_REMOVING_VALUES_CONTAINING_ANCHOR_SCRIPT_IMG_TAG_AND_ALERT_KEYWORD=Los parámetros de la URL se añaden directamente a la etiqueta div si no tienen las etiquetas Script/Image/Anchor y las palabras clave Javascript u Alert. + +# URL Redirection +## Location Header Injection +OPEN_REDIRECTION_VULNERABILITY_3XX_BASED=Las vulnerabilidadades de redirección abierta se muestran cuando una aplicación incorpora información \ +controlable por el usuario dentro del objetivo de una redirección, de una forma insegura.
Un atacante puede construir una URL desde la aplicación que \ +cause una redirección a un dominio externo arbitrario. Este comportamiento puede ser utilizado para facilitar ataques de phishing en contra de los usuarios de la aplicación.
\ +La habilidad de usar una URL auténtica de la aplicación, apuntando al dominio correcto, y con un certificado SSL válido (si se usa SSL), da credibilidad al \ +ataque de phishing debido a que muchos usuarios, incluso si pueden verificar estas características, no notarán la subsecuente redirección a un dominio diferente. \ + +

RFC 2616 - "Hypertext Transfer Protocol - HTTP/1.1" define una variedad \ + de códigos de status 3xx que causan que un navegador redirija a una ubicación especifica. Esta implementación se basa en los códigos de estatus 3xx

\ + Links importantes:
    \ +
  1. WASC-38
  2. \ +
  3. CWE-601
  4. \ +
  5. Documentación de la vulnerabilidad - Port Swiggers
  6. \ +
  7. Link de la Wiki que describe el propósito de la redirección URL
  8. \ +
  9. Lista de payloads para redirección abierta
  10. \ +
  11. Caso de estudio de añadir dominio como prefijo
  12. \ +
\ + Algunos mitos: ¿Son los acortadores de URL \u201Cvulnerables\u201D debido a la redirección abierta?
+ +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\". +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_WWW_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\" y \"https\" o si el dominio es el mismo que el de la aplicación. +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_WWW_//_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\" y "//" o si el dominio es el mismo que el de la aplicación. +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_WWW_HTTPS_//_NULL_BYTE_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\", "//" y si el Byte Null o el dominio es el mismo que el de la aplicación. +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_//_WWW_%_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\", "//" y el caracter menor que (valor 33 ascii) o si el dominio es el mismo que el de la aplicación. +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADDED_TO_LOCATION_HEADER_BY_ADDING_DOMAIN_AS_PREFIX=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si se prefija con el nombre del dominio de la aplicación. + + +## Meta Tag based URL Redirection +OPEN_REDIRECTION_VULNERABILITY_META_TAG_BASED=Las vulnerabilidadades de redirección abierta se muestran cuando una aplicación incorpora información \ +ontrolable por el usuario dentro del objetivo de una redirección, de una forma insegura.
Un atacante puede construir una URL desde la aplicación que \ +cause una redirección a un dominio externo arbitrario. Este comportamiento puede ser utilizado para facilitar ataques de phishing en contra de los usuarios de la aplicación.
\ +La habilidad de usar una URL auténtica de la aplicación, apuntando al dominio correcto, y con un certificado SSL válido (si se usa SSL), da credibilidad al \ +ataque de phishing debido a que muchos usuarios, incluso si pueden verificar estas características, no notarán la subsecuente redirección a un dominio diferente. \ +

Un elemento HTML del tipo meta que especifique el tiempo en segundos antes de que el navegador refresque la página. \ +Proveer un URI alternativo permite que el elemento pueda ser utilizado como un redireccionador URL. \ +Por ejemplo, aquí el navegador redirigirá a example.com luego de 5 segundos
\ + <meta http-equiv="refresh" content="5;url=http://example.com">

\ + Links importantes:
    \ +
  1. WASC-38
  2. \ +
  3. CWE-601
  4. \ +
  5. Documentación de la vulnerabilidad - Port Swiggers
  6. \ +
  7. Link de la Wiki que describe el propósito de la redirección URL
  8. \ +
  9. Lista de payloads para redirección abierta
  10. \ +
  11. Caso de estudio de añadir dominio como prefijo
  12. \ +
\ + Algunos mitos: ¿Son los acortadores de URL \u201Cvulnerables\u201D debido a la redirección abierta?
+ + +URL_REDIRECTION_META_TAG_BASED_INJECTION=Redirección URL basada en la etiqueta meta. +URL_REDIRECTION_URL_PARAMETER_INJECTION_INTO_META_TAG=El parametro URL se añade directamente a la etiqueta meta. + + + +# UNRESTRICTED_FILE_UPLOAD_VULNERABILITY +UNRESTRICTED_FILE_UPLOAD_VULNERABILITY=Los archivos cargados representan un riesgo significativo para las aplicaciones. El primer paso en muchos ataques es introducir algo de codigo en el sistema a atacar. Luego, el ataque sólo necesita encontrar una forma de ejecutar el código.\ +
Las consecuencias de la carga de arc no restringida puede variar, desde una apropiacion completa del sistema, un sistema de archivos sobrecargado o una base de datos, redirección de ataques a sistemas de back-end, ataques del lado del cliente, o simplemente cambio de apariencia (defacement). Dependerá enteramente de que hace la aplicación con el archivo cargado y, especificamente en dónde esté almacenado.\ +

\ +Links importantes:
\ +
  1. Owasp Wiki Link \ +
  2. Video de Ebrahim Hegazy talk sobre la carga de archivos no restringida \ +
  3. Reglas de SANS para imlementar carga de archivos segura \ +
+ +#### Attack Vector Description +UNRESTRICTED_FILE_UPLOAD_NO_VALIDATION_FILE_NAME=No hay validaciones en el nombre de los archivos cargados. +UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_FILE_EXTENSION=Todas las extensiones de archivo son permitidas, a excepción de .html. +UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_NOT_HTM_FILE_EXTENSION=Todas las extensiones de archivo son permitidas, a excepción de .html y .htm. +UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_NOT_HTM_FILE_EXTENSION_CASE_INSENSITIVE=Todas las extensiones de archivo son permitidas, a excepción de las extensiones .html y .htm que no sean sensibles a mayúsculas y minúsculas. +UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_CONTAINS_.PNG_OR_.JPEG_CASE_INSENSITIVE=Sólo se permite el nombre del archivo si contiene .jpeg or .png que no sean sensibles a mayúsculas y minúsculas. +UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_ENDS_WITH_.PNG_OR_.JPEG_CASE_INSENSITIVE_AND_FILE_NAMES_CONSIDERED_BEFORE_NULL_BYTE=Sólo se permite el nombre del archivo si termina con .jpeg or .png que no sean sensibles a mayúsculas y minúsculas, y que sea considerado solamente antes del Byte Null. +UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_ENDS_WITH_.PNG_OR_.JPEG_CASE_INSENSITIVE=Sólo se permite el nombre del archivo si termina en .jpeg or .png que no sean sensibles a mayúsculas y minúsculas. + + +# XXE Vulnerability +XXE_VULNERABILITY=Un ataque de Entidad Externa XML (XML External Entity) es un tipo de ataque en contra de una \ +aplicación que parsea una entrada XML. Este ataque ocurre cuando la entrada XML contiene \ +una referencia a una entidad externa, y esta es procesada por un parser de XML pobremente configurado. \ +Este ataque puede causar la divulgación de información confidencial, denegación de servicio, \ +falsificación de solicitudes del lado del servidor (SSRF), scaneo de puertos desde la perspectiva de la ubicación de la maquina dónde \ +se encuentra el parser, y otros impactos de sistema.\ +

\ +Links importantes:
\ +
  1. Link de la Wiki OWASP \ +
  2. Video tutorial de HackHappy \ +
  3. Artículo de Medium, por OneHackMan \ +
  4. Documentación de XXE- Portswigger \ +
  5. Prevención de OWASP - Cheat Sheet \ +
+#### Attack Vector Description +XXE_NO_VALIDATION=No hay validación en el XML pasado en el cuerpo de la solicitud. +XXE_DISABLE_GENERAL_ENTITY=El parser está deshabilitado para procesar solicitudes generales externas. +XXE_DISABLE_GENERAL_AND_PARAMETER_ENTITY=El parser está deshabilitado para procesar entidades generales y de parámetros. + +# Path Traversal Attack +PATH_TRAVERSAL_VULNERABILITY=Un recorrido de directorios (o recorrido de path) consiste en explotar la poca seguridad, validación o saneamiento de la información y nombres de archivo cargados por usuarios, \ +tal que ciertos caracteres representando un \"recorrido al directorio raíz\" se pasan directamente a través de la APIs de archivos.\ +

\ +El objetivo de este ataque es usar la aplicación afectada para ganar acceso no autorizado al sistema de archivos.

\ +Links importantes:
\ +
  1. Link de Wikik \ +
  2. Link de Wiki - OWASP \ +
+ +#### AttackVector description +PATH_TRAVERSAL_URL_PARAM_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente al final del path para leer el archivo. +PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene "..". +PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_OR_%2F_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene ".." o "%2f" que es el codificado URL de "/". +PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_OR_%2F_CASE_INSENSITIVE_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene ".." o "%2f" o "%2F" que es el codificado URL de "/". +PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_WITH_OR_WITHOUT_URL_ENCODING_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene "..", se encarga del codificado URL también. + +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente al path para leer el archivo. +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_PARENT_DIRECTORY_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "../". +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "..". +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_OR_%2F_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene ".." o "%2f" que es el codificado URL de "/". +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_OR_%2F_CASE_INSENSITIVE_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene ".." o "%2f" o "%2F" que es el codificado URL de "/". +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_WITH_OR_WITHOUT_URL_ENCODING_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "..", se encarga del codificado URL también. + + +# Command Injection Attack +COMMAND_INJECTION_VULNERABILITY=La inyección de comandos es un ataque en el cual, el objetivo es la ejecución arbitraria de comandos en el sistema operativo host \ +a través de una aplicación vulnerable. La inyección de comandos se hace posible cuando una aplicación pasa datos inseguros cargados por el usuario (formularios, cookies, headers HTTP, etc.) \ +a una consola de sistema. En este ataque, los comandos de sistema operativo cargados por el atacante se ejecutan usualmente con los privilegios de la aplicación vulnerable. \ +Asi pues, los ataques de inyección de comandos mayormente son posibles debido a la validación insuficiente de la entrada de datos.

\ +Links importantes sobre la vulnerabilidad de inyección de comandos :
\ +
  1. CWE-77 \ +
  2. Link de Wiki - OWASP \ +
+ +#### Attack vectors +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED=\"ipaddress\" el valor del parámetro query se ejecuta directamente. +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\" o espacio no se encuentran presentes. +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\" o espacio no se encuentran presentes. +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_CASE_INSENSITIVE_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\", \"%3b\" o espacio no se encuentran presentes. +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_%7C_CASE_INSENSITIVE_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\", \"%3b\", \"%7C\", \"%7c\" o espacio no se encuentran presentes. + + +# Local File Injection +#URL_BASED_LFI_INJECTION=Url based Local File Injection attack. +#LFI_URL_PARAM_BASED_DIRECT_INJECTION=Url Parameter \"fileName\" is directly passed to the include file. +#LFI_URL_PARAM_BASED_INJECTION_WITH_VALIDATION_ON_FILE=Url Parameter \"fileName\" is validated and passed to include file. + +# Local File Injection with Null Byte +#URL_WITH_NULL_BYTE_BASED_LFI_INJECTION=Url with Null Byte Injection based Local File Injection attack. +#LFI_URL_PARAM_AND_NULL_BYTE_BASED_DIRECT_INJECTION=Url Parameter \"fileName\" is directly passed to the include file if containing Null Byte. +#LFI_URL_PARAM_BASED_INJECTION_WITH_VALIDATION_ON_FILE=Url Parameter \"fileName\" is validated and passed to include file. + +# Remote File Injection +URL_BASED_RFI_INJECTION=Ataque de inyección de archivo local basada en URL (remota). + +# JWT Injection +JWT_INJECTION_VULNERABILITY= JSON Web Token es un estándar abierto ( RFC 7519) que define una forma compacta y auto contenida de \ +para transmitir información de forma segura entre entidades, como un objeto JSON. Esta información puede ser verificada y confiable porque \ +está firmada digitalmente. Luego, pueden haber multiples cosas mal o errores durante la implementación de JWT, lo que puede impactar la Autenticación o Autorización \ +de la aplicación, y como resultado, terminar en un compromiso del sistema.

Lins importantes para JWT : \ +
  1. Link de Wiki \ +
  2. Jwt.io \ +
Links importantes de implementaciones vulnerables en JWT : \ +
    \
  1. Mejores prácticas JSON Web Token \ + Prácticas actuales (documento de ieft ) \ +
  2. \ + Cheatsheet de OWASP para vulnerabilidadades de implementación JWT \ +
  3. Para \ + vulnerabilidadades del lado del servidor en implementaciones de JWT \ +
+ +#### AttackVector description +JWT_URL_EXPOSING_SECURE_INFORMATION=La solicitud incluye un token JWT que es visible en la URL. Esto viola el cumplimiento de políticas y normativas de la mayoría de organizaciones, e incluso normativas PCI. +COOKIE_CONTAINING_JWT_TOKEN_SECURITY_ATTRIBUTES_MISSING=Token JWT basado en cookies, pero sin las banderas de HttpOnly/Secure y tambien sin prefijos de cookies. +COOKIE_WITH_HTTPONLY_WITHOUT_SECURE_FLAG_BASED_JWT_VULNERABILITY=Token JWT basado en cookies, pero sólo con la bandera de HttpOnly, pero sin la bandera Secure, y tambien sin prefijos de cookies. +COOKIE_BASED_LOW_KEY_STRENGTH_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por firma de clave débil. +COOKIE_BASED_NULL_BYTE_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por Byte Null. +COOKIE_BASED_NONE_ALGORITHM_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por algoritmo None. +COOKIE_BASED_KEY_CONFUSION_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por confusión de clave. +COOKIE_BASED_FOR_JWK_HEADER_BASED_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por confianza en el campo JWK sin chequear antes si la clave pública provista está presente en TrustStore o no. +COOKIE_BASED_EMPTY_TOKEN_JWT_VULNERABILITY=Token JWT basado en cookies, vulnerable por el ataque de token vacío. + + + +# SQL Injection Vulnerability +SQL_INJECTION_VULNERABILITY=Un ataque de inyección SQL consiste en la inserción o /"inyección/" de un query SQL a través de la data de entrada \ +que viene desde el cliente a la aplicación. Una inyección SQL exitosa puede leer información sensible desde la base de datos, modificar la data (Insert, Update, Delete), \ +ejecutar operaciones adiministrativas en la base de datos (como apagar el DBMS), recuperar el contenido de un archivo dado, que esté presente \ +en el sistema de archivos del DBMS y, en algunos casos ejecutar comandos sobre el sistema operativo. Los ataques de inyección SQL son un tipo de ataque de inyección, \ +en el cual los comandos SQL se inyectan en la entrada de datos, en orden de afectar la ejecución de comandos SQL predefinidos. \ +Links importantes sobre inyección SQL : \ +
  1. Link de Wiki \ +
  2. Inyección SQL - Owasp \ +
  3. Charla de Joe McCray sobre la inyección SQL \ +
  4. Cheatsheet de inyección SQL por netsparker\ +


\ Links importantes sobre técnicas de prevención : \ +
    \
  1. Cheatsheet sobre prevención de inyección SQL - OWASP \ +
  2. \ + Base de conocimiento de inyección SQL \ +
+ +#### AttackVector description +ERROR_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query SQL, causando una excepción en ciertos escenarios \ + y por tanto, exponiendo información de la aplicación. +ERROR_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego se agrega al query SQL, causando excepciones en ciertos escenarios \ + y por tanto, exponiendo información de la aplicación. +ERROR_SQL_INJECTION_URL_PARAM_REMOVES_SINGLE_QUOTE_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=La comilla simple se remueve del parámetro del query y luego, se agrega al query SQL al incluirlo \ + dentro de "'". +ERROR_SQL_INJECTION_URL_PARAM_APPENDED_TO_PARAMETERIZED_QUERY=El parámetro del query se agrega directamente al query SQL y luego se forma un query parametrizado. Esto es para representar el \ + que el uso correcto de PreparedStatement es importante. + +UNION_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query y por tanto, la palabra clave \"Union\" puede ser usada para agrupar los resultados y \ +extraer la información de la aplicación. +UNION_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego, se agrega al query. De ahí que se pueda usar la palabra clave \"Union\" para agrupar los resultados y \ +extraer la información de la aplicación. +UNION_SQL_INJECTION_URL_PARAM_REMOVES_SINGLE_QUOTE_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=La comilla simple se remueve del query y luego se agrega al que SQL incluyendolo dentro de "'"\ + de ahí que ahí que se pueda usar la palabra clave \"Union\" para agrupar los resultados y extraer la información de la aplicación. + +BLIND_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query, de ahí que el query pueda ser manipulado. +BLIND_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego se agrega al query SQL, de ahí que el query pueda ser manipulado. + +#### SSRF Vulnerability + +SSRF_VULNERABILITY=En un ataque de falsificación de solicitud del servidor (Server-Side Request Forgery - SSRF) el atacante puede abusar de la funcionalidad en el servidor para \ +leer o actualizar recursos internos. El atacante puede proveer o modificar una strong>URL, sobre la cual el código ejecutandose en el servidor va a leer \ +o le va a enviar información, y mediante la selección cuidadosa de URLs, el atacante podría ser capaz de leer \ +configuración del servidor, como metadata de AWS, conectarse a servicios internos como bases de datos habilitadas mediante http, o hacer solicitudes POST \ +a servicios internos que no están dispuestos de ser expuestos. \ +Links importantes sobre SSRF : \ +
    \ +
  1. Link de Wiki \ +
  2. SSRF - OWASP \ +
  3. SSRF (Server Side Request Forgery) por Musab Khan\ +
+SSRF_VULNERABILITY_URL_WITHOUT_CHECK=No hay validación en la URL provista. +SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL=El protocolo file:// no está permitido para la URL provista. +SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL_AND_169.254.169.254=El protocolo file:// al igual que el acceso al servicio interno de metadata IP P 169.254.169.254 no está permitido. +SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL_AND_INTERNAL_METADATA_URL=El protocolo file:// al igual que el acceso al servicio interno de metadata no está permitido. +SSRF_VULNERABILITY_URL_ONLY_IF_IN_THE_WHITELIST=Sólo se permiten URL que esten en la lista blanca. \ No newline at end of file From 5fe10549ba57c7bbcec23959a4e36c148999da94 Mon Sep 17 00:00:00 2001 From: Adquinson Farias <15015274+dafarias@users.noreply.github.com> Date: Wed, 19 Oct 2022 23:33:37 -0400 Subject: [PATCH 2/2] Change of End of Line sequence. --- .../resources/i18n/messages_es.properties | 574 +++++++++--------- 1 file changed, 287 insertions(+), 287 deletions(-) diff --git a/src/main/resources/i18n/messages_es.properties b/src/main/resources/i18n/messages_es.properties index 6fb5bade..df0319a8 100644 --- a/src/main/resources/i18n/messages_es.properties +++ b/src/main/resources/i18n/messages_es.properties @@ -1,288 +1,288 @@ -EMPTY_LABEL= - -# Exception Code Labels -INVALID_END_POINT=El endpoint {0} no está disponible. Por favor, chequea el nombre del endpoint desde la llamada allEndPoint e intenta de nuevo. -INVALID_LEVEL=El nivel {0} no es un valor válido de nivel. Por favor, chequea el nivel soportado y el endpoint desde la llamada allEndPoint e intenta de nuevo. -UNAVAILABLE_LEVEL=El nivel {0} en el endpoint {1} no está disponible. Por favor, chequea el nivel soportado y el endpoint desde la llamada allEndPoint e intenta de nuevo. -INVALID_ACCESS=No se puede acceder al método {0}. Los motivos, podrían ser visibilidad limitada o definición incorreta del método. Por favor, chequea los logs. -INVALID_AGRUMENTS=Al método {0} no se le ha pasado un conjunto de argumentos correcto. Por favor, chequea los logs. -SYSTEM_ERROR=Ha ocurrido un error de sistema. Por favor, chequea los logs. - -# XSS based Injections -XSS_VULNERABILITY=Los ataques de Cross-Site Scripting (XSS) son un tipo de inyección, en la cual se incluyen scripts maliciosos \ -en sitios web benignos y confiables. Los ataques de XSS ocurren cuando el atacante usa una aplicación web para enviar código malicioso,\ - generalmente en la forma de un script adicional dirigido a un usuario final. Las aperturas que permiten que estos ataques tengan éxito \ - son bastante generales y pueden ocurrir en la aplicación web en cualquier lugar donde se use la entrada del usuario para que se muestre como salida \ - sin que esta se haya validado o encodificado.

Un atacante puede usar XSS para enviar un script malicioso a un usuario ignorante de esto.\ - El navegador del usuario final \u2019s no tiene forma de saber que el script no es confiable, y por tanto ejecutará el script. \ - Debido a que cree que el script viene de una fuente confiable, el script malicioso puede tener acceso a las cookies, tokens de sesión, \ - u otra información sensible contenida dentro del navegador, y que pueda ser usada en ese sitio web. Estos scripts pueden incluso reescribir el contenido \ - HTML de la página.

Para más información sobre XSS:
  1. Owasp XSS \ -
  2. Seguridad de Aplicaciones de Google
- -#### AttackVector description -PERSISTENT_XSS_HTML_TAG_URL_PARAM_DIRECTLY_INJECTED_IN_DIV_TAG=\"comment\" el valor del parámetro query se añade directamente a la etiqueta \"div\". -PERSISTENT_XSS_HTML_TAG_URL_PARAM_DIRECTLY_INJECTED_IN_DIV_TAG_REPLACING_IMG_AND_INPUT_TAG=\"comment\" el valor del parámetro query se añade directamente a la etiqueta \"div\" después de reemplazar las etiquetas " Esta vulnerabilidad se relaciona con los ataques XSS a través de la etiqueta Image. Si.. -#### Attack Vector Description -XSS_DIRECT_INPUT_SRC_ATTRIBUTE_IMG_TAG=Los parámetros de la URL se añaden directamente al atributo src de la etiqueta Image. -XSS_QUOTES_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=Las comillas se añaden a los parámetros de la URL y luego van directamente al atributo src de la etiqueta Image. -XSS_HTML_ESCAPE_ON_DIRECT_INPUT_SRC_ATTRIBUTE_IMG_TAG=El escape HTML se hace en los parámetros de la URL y luego se añaden directamente al atributo src de la etiqueta Image. -XSS_HTML_ESCAPE_ON_DIRECT_INPUT_AND_REMOVAL_OF_VALUES_WITH_PARENTHESIS_SRC_ATTRIBUTE_IMG_TAG=El escape HTML junto con la remoción de valores que contengan parentesis se hace a los parametros de la URL y luego se añaden directamente al atributo src de la etiqueta Image. -XSS_QUOTES_AND_WITH_HTML_ESCAPE_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=El escape HTML se hace en los parámetros de la URL y luego se insertan dentro de las comillas directamente al atributo src de la etiqueta Image. -XSS_HTML_ESCAPE_PLUS_FILTERING_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG_BUT_NULL_BYTE_VULNERABLE=Los parámetros de la URL se escapan con HTML y se validan contra una lista blanca, luego son insertados directamente al atributo src de la etiqueta Image. Sin embargo, el validador usado para comprobar estos nombres de archivo es vulnerable a la inyección del Byte Null. -XSS_QUOTES_AND_WITH_HTML_ESCAPE_PLUS_FILTERING_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=Los parámetros se escapan con HTML y se validan contra una lista blanca y se insertan dentro de comillas directamente al atributo src de la etiqueta Image. - -## Html Tag Injection -XSS_HTML_TAG_INJECTION=Ataque XSS basado en etiquetas HTML. -XSS_DIRECT_INPUT_DIV_TAG=La etiqueta HTML se inyecta directamente en la etiqueda div. - -### Attack vectors -XSS_DIRECT_INPUT_DIV_TAG=Los parámetros de la URL se añaden directamente a la etiqueta div. -XSS_DIRECT_INPUT_DIV_TAG_AFTER_REMOVING_VALUES_CONTAINING_ANCHOR_SCRIPT_AND_IMG_TAG=Los parámetros de la URL se añaden directamente a la etiqueta div si no tienen las etiquetas Script/Image o Anchor. -XSS_DIRECT_INPUT_DIV_TAG_AFTER_REMOVING_VALUES_CONTAINING_ANCHOR_SCRIPT_IMG_TAG_AND_ALERT_KEYWORD=Los parámetros de la URL se añaden directamente a la etiqueta div si no tienen las etiquetas Script/Image/Anchor y las palabras clave Javascript u Alert. - -# URL Redirection -## Location Header Injection -OPEN_REDIRECTION_VULNERABILITY_3XX_BASED=Las vulnerabilidadades de redirección abierta se muestran cuando una aplicación incorpora información \ -controlable por el usuario dentro del objetivo de una redirección, de una forma insegura.
Un atacante puede construir una URL desde la aplicación que \ -cause una redirección a un dominio externo arbitrario. Este comportamiento puede ser utilizado para facilitar ataques de phishing en contra de los usuarios de la aplicación.
\ -La habilidad de usar una URL auténtica de la aplicación, apuntando al dominio correcto, y con un certificado SSL válido (si se usa SSL), da credibilidad al \ -ataque de phishing debido a que muchos usuarios, incluso si pueden verificar estas características, no notarán la subsecuente redirección a un dominio diferente. \ - -

RFC 2616 - "Hypertext Transfer Protocol - HTTP/1.1" define una variedad \ - de códigos de status 3xx que causan que un navegador redirija a una ubicación especifica. Esta implementación se basa en los códigos de estatus 3xx

\ - Links importantes:
    \ -
  1. WASC-38
  2. \ -
  3. CWE-601
  4. \ -
  5. Documentación de la vulnerabilidad - Port Swiggers
  6. \ -
  7. Link de la Wiki que describe el propósito de la redirección URL
  8. \ -
  9. Lista de payloads para redirección abierta
  10. \ -
  11. Caso de estudio de añadir dominio como prefijo
  12. \ -
\ - Algunos mitos: ¿Son los acortadores de URL \u201Cvulnerables\u201D debido a la redirección abierta?
- -OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\". -OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_WWW_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\" y \"https\" o si el dominio es el mismo que el de la aplicación. -OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_WWW_//_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\" y "//" o si el dominio es el mismo que el de la aplicación. -OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_WWW_HTTPS_//_NULL_BYTE_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\", "//" y si el Byte Null o el dominio es el mismo que el de la aplicación. -OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_//_WWW_%_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\", "//" y el caracter menor que (valor 33 ascii) o si el dominio es el mismo que el de la aplicación. -OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADDED_TO_LOCATION_HEADER_BY_ADDING_DOMAIN_AS_PREFIX=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si se prefija con el nombre del dominio de la aplicación. - - -## Meta Tag based URL Redirection -OPEN_REDIRECTION_VULNERABILITY_META_TAG_BASED=Las vulnerabilidadades de redirección abierta se muestran cuando una aplicación incorpora información \ -ontrolable por el usuario dentro del objetivo de una redirección, de una forma insegura.
Un atacante puede construir una URL desde la aplicación que \ -cause una redirección a un dominio externo arbitrario. Este comportamiento puede ser utilizado para facilitar ataques de phishing en contra de los usuarios de la aplicación.
\ -La habilidad de usar una URL auténtica de la aplicación, apuntando al dominio correcto, y con un certificado SSL válido (si se usa SSL), da credibilidad al \ -ataque de phishing debido a que muchos usuarios, incluso si pueden verificar estas características, no notarán la subsecuente redirección a un dominio diferente. \ -

Un elemento HTML del tipo meta que especifique el tiempo en segundos antes de que el navegador refresque la página. \ -Proveer un URI alternativo permite que el elemento pueda ser utilizado como un redireccionador URL. \ -Por ejemplo, aquí el navegador redirigirá a example.com luego de 5 segundos
\ - <meta http-equiv="refresh" content="5;url=http://example.com">

\ - Links importantes:
    \ -
  1. WASC-38
  2. \ -
  3. CWE-601
  4. \ -
  5. Documentación de la vulnerabilidad - Port Swiggers
  6. \ -
  7. Link de la Wiki que describe el propósito de la redirección URL
  8. \ -
  9. Lista de payloads para redirección abierta
  10. \ -
  11. Caso de estudio de añadir dominio como prefijo
  12. \ -
\ - Algunos mitos: ¿Son los acortadores de URL \u201Cvulnerables\u201D debido a la redirección abierta?
- - -URL_REDIRECTION_META_TAG_BASED_INJECTION=Redirección URL basada en la etiqueta meta. -URL_REDIRECTION_URL_PARAMETER_INJECTION_INTO_META_TAG=El parametro URL se añade directamente a la etiqueta meta. - - - -# UNRESTRICTED_FILE_UPLOAD_VULNERABILITY -UNRESTRICTED_FILE_UPLOAD_VULNERABILITY=Los archivos cargados representan un riesgo significativo para las aplicaciones. El primer paso en muchos ataques es introducir algo de codigo en el sistema a atacar. Luego, el ataque sólo necesita encontrar una forma de ejecutar el código.\ -
Las consecuencias de la carga de arc no restringida puede variar, desde una apropiacion completa del sistema, un sistema de archivos sobrecargado o una base de datos, redirección de ataques a sistemas de back-end, ataques del lado del cliente, o simplemente cambio de apariencia (defacement). Dependerá enteramente de que hace la aplicación con el archivo cargado y, especificamente en dónde esté almacenado.\ -

\ -Links importantes:
\ -
  1. Owasp Wiki Link \ -
  2. Video de Ebrahim Hegazy talk sobre la carga de archivos no restringida \ -
  3. Reglas de SANS para imlementar carga de archivos segura \ -
- -#### Attack Vector Description -UNRESTRICTED_FILE_UPLOAD_NO_VALIDATION_FILE_NAME=No hay validaciones en el nombre de los archivos cargados. -UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_FILE_EXTENSION=Todas las extensiones de archivo son permitidas, a excepción de .html. -UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_NOT_HTM_FILE_EXTENSION=Todas las extensiones de archivo son permitidas, a excepción de .html y .htm. -UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_NOT_HTM_FILE_EXTENSION_CASE_INSENSITIVE=Todas las extensiones de archivo son permitidas, a excepción de las extensiones .html y .htm que no sean sensibles a mayúsculas y minúsculas. -UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_CONTAINS_.PNG_OR_.JPEG_CASE_INSENSITIVE=Sólo se permite el nombre del archivo si contiene .jpeg or .png que no sean sensibles a mayúsculas y minúsculas. -UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_ENDS_WITH_.PNG_OR_.JPEG_CASE_INSENSITIVE_AND_FILE_NAMES_CONSIDERED_BEFORE_NULL_BYTE=Sólo se permite el nombre del archivo si termina con .jpeg or .png que no sean sensibles a mayúsculas y minúsculas, y que sea considerado solamente antes del Byte Null. -UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_ENDS_WITH_.PNG_OR_.JPEG_CASE_INSENSITIVE=Sólo se permite el nombre del archivo si termina en .jpeg or .png que no sean sensibles a mayúsculas y minúsculas. - - -# XXE Vulnerability -XXE_VULNERABILITY=Un ataque de Entidad Externa XML (XML External Entity) es un tipo de ataque en contra de una \ -aplicación que parsea una entrada XML. Este ataque ocurre cuando la entrada XML contiene \ -una referencia a una entidad externa, y esta es procesada por un parser de XML pobremente configurado. \ -Este ataque puede causar la divulgación de información confidencial, denegación de servicio, \ -falsificación de solicitudes del lado del servidor (SSRF), scaneo de puertos desde la perspectiva de la ubicación de la maquina dónde \ -se encuentra el parser, y otros impactos de sistema.\ -

\ -Links importantes:
\ -
  1. Link de la Wiki OWASP \ -
  2. Video tutorial de HackHappy \ -
  3. Artículo de Medium, por OneHackMan \ -
  4. Documentación de XXE- Portswigger \ -
  5. Prevención de OWASP - Cheat Sheet \ -
-#### Attack Vector Description -XXE_NO_VALIDATION=No hay validación en el XML pasado en el cuerpo de la solicitud. -XXE_DISABLE_GENERAL_ENTITY=El parser está deshabilitado para procesar solicitudes generales externas. -XXE_DISABLE_GENERAL_AND_PARAMETER_ENTITY=El parser está deshabilitado para procesar entidades generales y de parámetros. - -# Path Traversal Attack -PATH_TRAVERSAL_VULNERABILITY=Un recorrido de directorios (o recorrido de path) consiste en explotar la poca seguridad, validación o saneamiento de la información y nombres de archivo cargados por usuarios, \ -tal que ciertos caracteres representando un \"recorrido al directorio raíz\" se pasan directamente a través de la APIs de archivos.\ -

\ -El objetivo de este ataque es usar la aplicación afectada para ganar acceso no autorizado al sistema de archivos.

\ -Links importantes:
\ -
  1. Link de Wikik \ -
  2. Link de Wiki - OWASP \ -
- -#### AttackVector description -PATH_TRAVERSAL_URL_PARAM_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente al final del path para leer el archivo. -PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene "..". -PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_OR_%2F_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene ".." o "%2f" que es el codificado URL de "/". -PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_OR_%2F_CASE_INSENSITIVE_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene ".." o "%2f" o "%2F" que es el codificado URL de "/". -PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_WITH_OR_WITHOUT_URL_ENCODING_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene "..", se encarga del codificado URL también. - -PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente al path para leer el archivo. -PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_PARENT_DIRECTORY_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "../". -PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "..". -PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_OR_%2F_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene ".." o "%2f" que es el codificado URL de "/". -PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_OR_%2F_CASE_INSENSITIVE_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene ".." o "%2f" o "%2F" que es el codificado URL de "/". -PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_WITH_OR_WITHOUT_URL_ENCODING_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "..", se encarga del codificado URL también. - - -# Command Injection Attack -COMMAND_INJECTION_VULNERABILITY=La inyección de comandos es un ataque en el cual, el objetivo es la ejecución arbitraria de comandos en el sistema operativo host \ -a través de una aplicación vulnerable. La inyección de comandos se hace posible cuando una aplicación pasa datos inseguros cargados por el usuario (formularios, cookies, headers HTTP, etc.) \ -a una consola de sistema. En este ataque, los comandos de sistema operativo cargados por el atacante se ejecutan usualmente con los privilegios de la aplicación vulnerable. \ -Asi pues, los ataques de inyección de comandos mayormente son posibles debido a la validación insuficiente de la entrada de datos.

\ -Links importantes sobre la vulnerabilidad de inyección de comandos :
\ -
  1. CWE-77 \ -
  2. Link de Wiki - OWASP \ -
- -#### Attack vectors -COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED=\"ipaddress\" el valor del parámetro query se ejecuta directamente. -COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\" o espacio no se encuentran presentes. -COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\" o espacio no se encuentran presentes. -COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_CASE_INSENSITIVE_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\", \"%3b\" o espacio no se encuentran presentes. -COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_%7C_CASE_INSENSITIVE_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\", \"%3b\", \"%7C\", \"%7c\" o espacio no se encuentran presentes. - - -# Local File Injection -#URL_BASED_LFI_INJECTION=Url based Local File Injection attack. -#LFI_URL_PARAM_BASED_DIRECT_INJECTION=Url Parameter \"fileName\" is directly passed to the include file. -#LFI_URL_PARAM_BASED_INJECTION_WITH_VALIDATION_ON_FILE=Url Parameter \"fileName\" is validated and passed to include file. - -# Local File Injection with Null Byte -#URL_WITH_NULL_BYTE_BASED_LFI_INJECTION=Url with Null Byte Injection based Local File Injection attack. -#LFI_URL_PARAM_AND_NULL_BYTE_BASED_DIRECT_INJECTION=Url Parameter \"fileName\" is directly passed to the include file if containing Null Byte. -#LFI_URL_PARAM_BASED_INJECTION_WITH_VALIDATION_ON_FILE=Url Parameter \"fileName\" is validated and passed to include file. - -# Remote File Injection -URL_BASED_RFI_INJECTION=Ataque de inyección de archivo local basada en URL (remota). - -# JWT Injection -JWT_INJECTION_VULNERABILITY= JSON Web Token es un estándar abierto ( RFC 7519) que define una forma compacta y auto contenida de \ -para transmitir información de forma segura entre entidades, como un objeto JSON. Esta información puede ser verificada y confiable porque \ -está firmada digitalmente. Luego, pueden haber multiples cosas mal o errores durante la implementación de JWT, lo que puede impactar la Autenticación o Autorización \ -de la aplicación, y como resultado, terminar en un compromiso del sistema.

Lins importantes para JWT : \ -
  1. Link de Wiki \ -
  2. Jwt.io \ -
Links importantes de implementaciones vulnerables en JWT : \ -
    \
  1. Mejores prácticas JSON Web Token \ - Prácticas actuales (documento de ieft ) \ -
  2. \ - Cheatsheet de OWASP para vulnerabilidadades de implementación JWT \ -
  3. Para \ - vulnerabilidadades del lado del servidor en implementaciones de JWT \ -
- -#### AttackVector description -JWT_URL_EXPOSING_SECURE_INFORMATION=La solicitud incluye un token JWT que es visible en la URL. Esto viola el cumplimiento de políticas y normativas de la mayoría de organizaciones, e incluso normativas PCI. -COOKIE_CONTAINING_JWT_TOKEN_SECURITY_ATTRIBUTES_MISSING=Token JWT basado en cookies, pero sin las banderas de HttpOnly/Secure y tambien sin prefijos de cookies. -COOKIE_WITH_HTTPONLY_WITHOUT_SECURE_FLAG_BASED_JWT_VULNERABILITY=Token JWT basado en cookies, pero sólo con la bandera de HttpOnly, pero sin la bandera Secure, y tambien sin prefijos de cookies. -COOKIE_BASED_LOW_KEY_STRENGTH_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por firma de clave débil. -COOKIE_BASED_NULL_BYTE_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por Byte Null. -COOKIE_BASED_NONE_ALGORITHM_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por algoritmo None. -COOKIE_BASED_KEY_CONFUSION_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por confusión de clave. -COOKIE_BASED_FOR_JWK_HEADER_BASED_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por confianza en el campo JWK sin chequear antes si la clave pública provista está presente en TrustStore o no. -COOKIE_BASED_EMPTY_TOKEN_JWT_VULNERABILITY=Token JWT basado en cookies, vulnerable por el ataque de token vacío. - - - -# SQL Injection Vulnerability -SQL_INJECTION_VULNERABILITY=Un ataque de inyección SQL consiste en la inserción o /"inyección/" de un query SQL a través de la data de entrada \ -que viene desde el cliente a la aplicación. Una inyección SQL exitosa puede leer información sensible desde la base de datos, modificar la data (Insert, Update, Delete), \ -ejecutar operaciones adiministrativas en la base de datos (como apagar el DBMS), recuperar el contenido de un archivo dado, que esté presente \ -en el sistema de archivos del DBMS y, en algunos casos ejecutar comandos sobre el sistema operativo. Los ataques de inyección SQL son un tipo de ataque de inyección, \ -en el cual los comandos SQL se inyectan en la entrada de datos, en orden de afectar la ejecución de comandos SQL predefinidos. \ -Links importantes sobre inyección SQL : \ -
  1. Link de Wiki \ -
  2. Inyección SQL - Owasp \ -
  3. Charla de Joe McCray sobre la inyección SQL \ -
  4. Cheatsheet de inyección SQL por netsparker\ -


\ Links importantes sobre técnicas de prevención : \ -
    \
  1. Cheatsheet sobre prevención de inyección SQL - OWASP \ -
  2. \ - Base de conocimiento de inyección SQL \ -
- -#### AttackVector description -ERROR_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query SQL, causando una excepción en ciertos escenarios \ - y por tanto, exponiendo información de la aplicación. -ERROR_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego se agrega al query SQL, causando excepciones en ciertos escenarios \ - y por tanto, exponiendo información de la aplicación. -ERROR_SQL_INJECTION_URL_PARAM_REMOVES_SINGLE_QUOTE_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=La comilla simple se remueve del parámetro del query y luego, se agrega al query SQL al incluirlo \ - dentro de "'". -ERROR_SQL_INJECTION_URL_PARAM_APPENDED_TO_PARAMETERIZED_QUERY=El parámetro del query se agrega directamente al query SQL y luego se forma un query parametrizado. Esto es para representar el \ - que el uso correcto de PreparedStatement es importante. - -UNION_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query y por tanto, la palabra clave \"Union\" puede ser usada para agrupar los resultados y \ -extraer la información de la aplicación. -UNION_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego, se agrega al query. De ahí que se pueda usar la palabra clave \"Union\" para agrupar los resultados y \ -extraer la información de la aplicación. -UNION_SQL_INJECTION_URL_PARAM_REMOVES_SINGLE_QUOTE_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=La comilla simple se remueve del query y luego se agrega al que SQL incluyendolo dentro de "'"\ - de ahí que ahí que se pueda usar la palabra clave \"Union\" para agrupar los resultados y extraer la información de la aplicación. - -BLIND_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query, de ahí que el query pueda ser manipulado. -BLIND_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego se agrega al query SQL, de ahí que el query pueda ser manipulado. - -#### SSRF Vulnerability - -SSRF_VULNERABILITY=En un ataque de falsificación de solicitud del servidor (Server-Side Request Forgery - SSRF) el atacante puede abusar de la funcionalidad en el servidor para \ -leer o actualizar recursos internos. El atacante puede proveer o modificar una strong>URL, sobre la cual el código ejecutandose en el servidor va a leer \ -o le va a enviar información, y mediante la selección cuidadosa de URLs, el atacante podría ser capaz de leer \ -configuración del servidor, como metadata de AWS, conectarse a servicios internos como bases de datos habilitadas mediante http, o hacer solicitudes POST \ -a servicios internos que no están dispuestos de ser expuestos. \ -Links importantes sobre SSRF : \ -
    \ -
  1. Link de Wiki \ -
  2. SSRF - OWASP \ -
  3. SSRF (Server Side Request Forgery) por Musab Khan\ -
-SSRF_VULNERABILITY_URL_WITHOUT_CHECK=No hay validación en la URL provista. -SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL=El protocolo file:// no está permitido para la URL provista. -SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL_AND_169.254.169.254=El protocolo file:// al igual que el acceso al servicio interno de metadata IP P 169.254.169.254 no está permitido. -SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL_AND_INTERNAL_METADATA_URL=El protocolo file:// al igual que el acceso al servicio interno de metadata no está permitido. +EMPTY_LABEL= + +# Exception Code Labels +INVALID_END_POINT=El endpoint {0} no está disponible. Por favor, chequea el nombre del endpoint desde la llamada allEndPoint e intenta de nuevo. +INVALID_LEVEL=El nivel {0} no es un valor válido de nivel. Por favor, chequea el nivel soportado y el endpoint desde la llamada allEndPoint e intenta de nuevo. +UNAVAILABLE_LEVEL=El nivel {0} en el endpoint {1} no está disponible. Por favor, chequea el nivel soportado y el endpoint desde la llamada allEndPoint e intenta de nuevo. +INVALID_ACCESS=No se puede acceder al método {0}. Los motivos, podrían ser visibilidad limitada o definición incorreta del método. Por favor, chequea los logs. +INVALID_AGRUMENTS=Al método {0} no se le ha pasado un conjunto de argumentos correcto. Por favor, chequea los logs. +SYSTEM_ERROR=Ha ocurrido un error de sistema. Por favor, chequea los logs. + +# XSS based Injections +XSS_VULNERABILITY=Los ataques de Cross-Site Scripting (XSS) son un tipo de inyección, en la cual se incluyen scripts maliciosos \ +en sitios web benignos y confiables. Los ataques de XSS ocurren cuando el atacante usa una aplicación web para enviar código malicioso,\ + generalmente en la forma de un script adicional dirigido a un usuario final. Las aperturas que permiten que estos ataques tengan éxito \ + son bastante generales y pueden ocurrir en la aplicación web en cualquier lugar donde se use la entrada del usuario para que se muestre como salida \ + sin que esta se haya validado o encodificado.

Un atacante puede usar XSS para enviar un script malicioso a un usuario ignorante de esto.\ + El navegador del usuario final \u2019s no tiene forma de saber que el script no es confiable, y por tanto ejecutará el script. \ + Debido a que cree que el script viene de una fuente confiable, el script malicioso puede tener acceso a las cookies, tokens de sesión, \ + u otra información sensible contenida dentro del navegador, y que pueda ser usada en ese sitio web. Estos scripts pueden incluso reescribir el contenido \ + HTML de la página.

Para más información sobre XSS:
  1. Owasp XSS \ +
  2. Seguridad de Aplicaciones de Google
+ +#### AttackVector description +PERSISTENT_XSS_HTML_TAG_URL_PARAM_DIRECTLY_INJECTED_IN_DIV_TAG=\"comment\" el valor del parámetro query se añade directamente a la etiqueta \"div\". +PERSISTENT_XSS_HTML_TAG_URL_PARAM_DIRECTLY_INJECTED_IN_DIV_TAG_REPLACING_IMG_AND_INPUT_TAG=\"comment\" el valor del parámetro query se añade directamente a la etiqueta \"div\" después de reemplazar las etiquetas " Esta vulnerabilidad se relaciona con los ataques XSS a través de la etiqueta Image. Si.. +#### Attack Vector Description +XSS_DIRECT_INPUT_SRC_ATTRIBUTE_IMG_TAG=Los parámetros de la URL se añaden directamente al atributo src de la etiqueta Image. +XSS_QUOTES_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=Las comillas se añaden a los parámetros de la URL y luego van directamente al atributo src de la etiqueta Image. +XSS_HTML_ESCAPE_ON_DIRECT_INPUT_SRC_ATTRIBUTE_IMG_TAG=El escape HTML se hace en los parámetros de la URL y luego se añaden directamente al atributo src de la etiqueta Image. +XSS_HTML_ESCAPE_ON_DIRECT_INPUT_AND_REMOVAL_OF_VALUES_WITH_PARENTHESIS_SRC_ATTRIBUTE_IMG_TAG=El escape HTML junto con la remoción de valores que contengan parentesis se hace a los parametros de la URL y luego se añaden directamente al atributo src de la etiqueta Image. +XSS_QUOTES_AND_WITH_HTML_ESCAPE_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=El escape HTML se hace en los parámetros de la URL y luego se insertan dentro de las comillas directamente al atributo src de la etiqueta Image. +XSS_HTML_ESCAPE_PLUS_FILTERING_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG_BUT_NULL_BYTE_VULNERABLE=Los parámetros de la URL se escapan con HTML y se validan contra una lista blanca, luego son insertados directamente al atributo src de la etiqueta Image. Sin embargo, el validador usado para comprobar estos nombres de archivo es vulnerable a la inyección del Byte Null. +XSS_QUOTES_AND_WITH_HTML_ESCAPE_PLUS_FILTERING_ON_INPUT_SRC_ATTRIBUTE_IMG_TAG=Los parámetros se escapan con HTML y se validan contra una lista blanca y se insertan dentro de comillas directamente al atributo src de la etiqueta Image. + +## Html Tag Injection +XSS_HTML_TAG_INJECTION=Ataque XSS basado en etiquetas HTML. +XSS_DIRECT_INPUT_DIV_TAG=La etiqueta HTML se inyecta directamente en la etiqueda div. + +### Attack vectors +XSS_DIRECT_INPUT_DIV_TAG=Los parámetros de la URL se añaden directamente a la etiqueta div. +XSS_DIRECT_INPUT_DIV_TAG_AFTER_REMOVING_VALUES_CONTAINING_ANCHOR_SCRIPT_AND_IMG_TAG=Los parámetros de la URL se añaden directamente a la etiqueta div si no tienen las etiquetas Script/Image o Anchor. +XSS_DIRECT_INPUT_DIV_TAG_AFTER_REMOVING_VALUES_CONTAINING_ANCHOR_SCRIPT_IMG_TAG_AND_ALERT_KEYWORD=Los parámetros de la URL se añaden directamente a la etiqueta div si no tienen las etiquetas Script/Image/Anchor y las palabras clave Javascript u Alert. + +# URL Redirection +## Location Header Injection +OPEN_REDIRECTION_VULNERABILITY_3XX_BASED=Las vulnerabilidadades de redirección abierta se muestran cuando una aplicación incorpora información \ +controlable por el usuario dentro del objetivo de una redirección, de una forma insegura.
Un atacante puede construir una URL desde la aplicación que \ +cause una redirección a un dominio externo arbitrario. Este comportamiento puede ser utilizado para facilitar ataques de phishing en contra de los usuarios de la aplicación.
\ +La habilidad de usar una URL auténtica de la aplicación, apuntando al dominio correcto, y con un certificado SSL válido (si se usa SSL), da credibilidad al \ +ataque de phishing debido a que muchos usuarios, incluso si pueden verificar estas características, no notarán la subsecuente redirección a un dominio diferente. \ + +

RFC 2616 - "Hypertext Transfer Protocol - HTTP/1.1" define una variedad \ + de códigos de status 3xx que causan que un navegador redirija a una ubicación especifica. Esta implementación se basa en los códigos de estatus 3xx

\ + Links importantes:
    \ +
  1. WASC-38
  2. \ +
  3. CWE-601
  4. \ +
  5. Documentación de la vulnerabilidad - Port Swiggers
  6. \ +
  7. Link de la Wiki que describe el propósito de la redirección URL
  8. \ +
  9. Lista de payloads para redirección abierta
  10. \ +
  11. Caso de estudio de añadir dominio como prefijo
  12. \ +
\ + Algunos mitos: ¿Son los acortadores de URL \u201Cvulnerables\u201D debido a la redirección abierta?
+ +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\". +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_WWW_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\" y \"https\" o si el dominio es el mismo que el de la aplicación. +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_WWW_//_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\" y "//" o si el dominio es el mismo que el de la aplicación. +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_WWW_HTTPS_//_NULL_BYTE_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\", "//" y si el Byte Null o el dominio es el mismo que el de la aplicación. +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADD_TO_LOCATION_HEADER_IF_NOT_HTTP_HTTPS_//_WWW_%_OR_DOMAIN_IS_SAME=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si no inicia con \"http\" ,\"www\", \"https\", "//" y el caracter menor que (valor 33 ascii) o si el dominio es el mismo que el de la aplicación. +OPEN_REDIRECT_QUERY_PARAM_DIRECTLY_ADDED_TO_LOCATION_HEADER_BY_ADDING_DOMAIN_AS_PREFIX=\"returnTo\" el valor del parámetro query se añade directamente al header \"Location\" si se prefija con el nombre del dominio de la aplicación. + + +## Meta Tag based URL Redirection +OPEN_REDIRECTION_VULNERABILITY_META_TAG_BASED=Las vulnerabilidadades de redirección abierta se muestran cuando una aplicación incorpora información \ +ontrolable por el usuario dentro del objetivo de una redirección, de una forma insegura.
Un atacante puede construir una URL desde la aplicación que \ +cause una redirección a un dominio externo arbitrario. Este comportamiento puede ser utilizado para facilitar ataques de phishing en contra de los usuarios de la aplicación.
\ +La habilidad de usar una URL auténtica de la aplicación, apuntando al dominio correcto, y con un certificado SSL válido (si se usa SSL), da credibilidad al \ +ataque de phishing debido a que muchos usuarios, incluso si pueden verificar estas características, no notarán la subsecuente redirección a un dominio diferente. \ +

Un elemento HTML del tipo meta que especifique el tiempo en segundos antes de que el navegador refresque la página. \ +Proveer un URI alternativo permite que el elemento pueda ser utilizado como un redireccionador URL. \ +Por ejemplo, aquí el navegador redirigirá a example.com luego de 5 segundos
\ + <meta http-equiv="refresh" content="5;url=http://example.com">

\ + Links importantes:
    \ +
  1. WASC-38
  2. \ +
  3. CWE-601
  4. \ +
  5. Documentación de la vulnerabilidad - Port Swiggers
  6. \ +
  7. Link de la Wiki que describe el propósito de la redirección URL
  8. \ +
  9. Lista de payloads para redirección abierta
  10. \ +
  11. Caso de estudio de añadir dominio como prefijo
  12. \ +
\ + Algunos mitos: ¿Son los acortadores de URL \u201Cvulnerables\u201D debido a la redirección abierta?
+ + +URL_REDIRECTION_META_TAG_BASED_INJECTION=Redirección URL basada en la etiqueta meta. +URL_REDIRECTION_URL_PARAMETER_INJECTION_INTO_META_TAG=El parametro URL se añade directamente a la etiqueta meta. + + + +# UNRESTRICTED_FILE_UPLOAD_VULNERABILITY +UNRESTRICTED_FILE_UPLOAD_VULNERABILITY=Los archivos cargados representan un riesgo significativo para las aplicaciones. El primer paso en muchos ataques es introducir algo de codigo en el sistema a atacar. Luego, el ataque sólo necesita encontrar una forma de ejecutar el código.\ +
Las consecuencias de la carga de arc no restringida puede variar, desde una apropiacion completa del sistema, un sistema de archivos sobrecargado o una base de datos, redirección de ataques a sistemas de back-end, ataques del lado del cliente, o simplemente cambio de apariencia (defacement). Dependerá enteramente de que hace la aplicación con el archivo cargado y, especificamente en dónde esté almacenado.\ +

\ +Links importantes:
\ +
  1. Owasp Wiki Link \ +
  2. Video de Ebrahim Hegazy talk sobre la carga de archivos no restringida \ +
  3. Reglas de SANS para imlementar carga de archivos segura \ +
+ +#### Attack Vector Description +UNRESTRICTED_FILE_UPLOAD_NO_VALIDATION_FILE_NAME=No hay validaciones en el nombre de los archivos cargados. +UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_FILE_EXTENSION=Todas las extensiones de archivo son permitidas, a excepción de .html. +UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_NOT_HTM_FILE_EXTENSION=Todas las extensiones de archivo son permitidas, a excepción de .html y .htm. +UNRESTRICTED_FILE_UPLOAD_IF_NOT_HTML_NOT_HTM_FILE_EXTENSION_CASE_INSENSITIVE=Todas las extensiones de archivo son permitidas, a excepción de las extensiones .html y .htm que no sean sensibles a mayúsculas y minúsculas. +UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_CONTAINS_.PNG_OR_.JPEG_CASE_INSENSITIVE=Sólo se permite el nombre del archivo si contiene .jpeg or .png que no sean sensibles a mayúsculas y minúsculas. +UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_ENDS_WITH_.PNG_OR_.JPEG_CASE_INSENSITIVE_AND_FILE_NAMES_CONSIDERED_BEFORE_NULL_BYTE=Sólo se permite el nombre del archivo si termina con .jpeg or .png que no sean sensibles a mayúsculas y minúsculas, y que sea considerado solamente antes del Byte Null. +UNRESTRICTED_FILE_UPLOAD_IF_FILE_NAME_NOT_ENDS_WITH_.PNG_OR_.JPEG_CASE_INSENSITIVE=Sólo se permite el nombre del archivo si termina en .jpeg or .png que no sean sensibles a mayúsculas y minúsculas. + + +# XXE Vulnerability +XXE_VULNERABILITY=Un ataque de Entidad Externa XML (XML External Entity) es un tipo de ataque en contra de una \ +aplicación que parsea una entrada XML. Este ataque ocurre cuando la entrada XML contiene \ +una referencia a una entidad externa, y esta es procesada por un parser de XML pobremente configurado. \ +Este ataque puede causar la divulgación de información confidencial, denegación de servicio, \ +falsificación de solicitudes del lado del servidor (SSRF), scaneo de puertos desde la perspectiva de la ubicación de la maquina dónde \ +se encuentra el parser, y otros impactos de sistema.\ +

\ +Links importantes:
\ +
  1. Link de la Wiki OWASP \ +
  2. Video tutorial de HackHappy \ +
  3. Artículo de Medium, por OneHackMan \ +
  4. Documentación de XXE- Portswigger \ +
  5. Prevención de OWASP - Cheat Sheet \ +
+#### Attack Vector Description +XXE_NO_VALIDATION=No hay validación en el XML pasado en el cuerpo de la solicitud. +XXE_DISABLE_GENERAL_ENTITY=El parser está deshabilitado para procesar solicitudes generales externas. +XXE_DISABLE_GENERAL_AND_PARAMETER_ENTITY=El parser está deshabilitado para procesar entidades generales y de parámetros. + +# Path Traversal Attack +PATH_TRAVERSAL_VULNERABILITY=Un recorrido de directorios (o recorrido de path) consiste en explotar la poca seguridad, validación o saneamiento de la información y nombres de archivo cargados por usuarios, \ +tal que ciertos caracteres representando un \"recorrido al directorio raíz\" se pasan directamente a través de la APIs de archivos.\ +

\ +El objetivo de este ataque es usar la aplicación afectada para ganar acceso no autorizado al sistema de archivos.

\ +Links importantes:
\ +
  1. Link de Wikik \ +
  2. Link de Wiki - OWASP \ +
+ +#### AttackVector description +PATH_TRAVERSAL_URL_PARAM_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente al final del path para leer el archivo. +PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene "..". +PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_OR_%2F_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene ".." o "%2f" que es el codificado URL de "/". +PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_OR_%2F_CASE_INSENSITIVE_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene ".." o "%2f" o "%2F" que es el codificado URL de "/". +PATH_TRAVERSAL_URL_PARAM_IF_DOT_DOT_PATH_WITH_OR_WITHOUT_URL_ENCODING_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query se agrega directamente si no contiene "..", se encarga del codificado URL también. + +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente al path para leer el archivo. +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_PARENT_DIRECTORY_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "../". +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "..". +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_OR_%2F_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene ".." o "%2f" que es el codificado URL de "/". +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_OR_%2F_CASE_INSENSITIVE_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene ".." o "%2f" o "%2F" que es el codificado URL de "/". +PATH_TRAVERSAL_URL_PARAM_BEFORE_NULL_BYTE_IF_DOT_DOT_PATH_WITH_OR_WITHOUT_URL_ENCODING_NOT_PRESENT_DIRECTLY_INJECTED=\"fileName\" el valor del parámetro query antes del Byte Null se agrega directamente si no contiene "..", se encarga del codificado URL también. + + +# Command Injection Attack +COMMAND_INJECTION_VULNERABILITY=La inyección de comandos es un ataque en el cual, el objetivo es la ejecución arbitraria de comandos en el sistema operativo host \ +a través de una aplicación vulnerable. La inyección de comandos se hace posible cuando una aplicación pasa datos inseguros cargados por el usuario (formularios, cookies, headers HTTP, etc.) \ +a una consola de sistema. En este ataque, los comandos de sistema operativo cargados por el atacante se ejecutan usualmente con los privilegios de la aplicación vulnerable. \ +Asi pues, los ataques de inyección de comandos mayormente son posibles debido a la validación insuficiente de la entrada de datos.

\ +Links importantes sobre la vulnerabilidad de inyección de comandos :
\ +
  1. CWE-77 \ +
  2. Link de Wiki - OWASP \ +
+ +#### Attack vectors +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED=\"ipaddress\" el valor del parámetro query se ejecuta directamente. +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\" o espacio no se encuentran presentes. +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\" o espacio no se encuentran presentes. +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_CASE_INSENSITIVE_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\", \"%3b\" o espacio no se encuentran presentes. +COMMAND_INJECTION_URL_PARAM_DIRECTLY_EXECUTED_IF_SEMICOLON_SPACE_LOGICAL_AND_%26_%3B_%7C_CASE_INSENSITIVE_NOT_PRESENT=\"ipaddress\" el valor del parámetro query se ejecuta directamente si los caracteres \";\", \"&\", \"%26\", \"%3B\", \"%3b\", \"%7C\", \"%7c\" o espacio no se encuentran presentes. + + +# Local File Injection +#URL_BASED_LFI_INJECTION=Url based Local File Injection attack. +#LFI_URL_PARAM_BASED_DIRECT_INJECTION=Url Parameter \"fileName\" is directly passed to the include file. +#LFI_URL_PARAM_BASED_INJECTION_WITH_VALIDATION_ON_FILE=Url Parameter \"fileName\" is validated and passed to include file. + +# Local File Injection with Null Byte +#URL_WITH_NULL_BYTE_BASED_LFI_INJECTION=Url with Null Byte Injection based Local File Injection attack. +#LFI_URL_PARAM_AND_NULL_BYTE_BASED_DIRECT_INJECTION=Url Parameter \"fileName\" is directly passed to the include file if containing Null Byte. +#LFI_URL_PARAM_BASED_INJECTION_WITH_VALIDATION_ON_FILE=Url Parameter \"fileName\" is validated and passed to include file. + +# Remote File Injection +URL_BASED_RFI_INJECTION=Ataque de inyección de archivo local basada en URL (remota). + +# JWT Injection +JWT_INJECTION_VULNERABILITY= JSON Web Token es un estándar abierto ( RFC 7519) que define una forma compacta y auto contenida de \ +para transmitir información de forma segura entre entidades, como un objeto JSON. Esta información puede ser verificada y confiable porque \ +está firmada digitalmente. Luego, pueden haber multiples cosas mal o errores durante la implementación de JWT, lo que puede impactar la Autenticación o Autorización \ +de la aplicación, y como resultado, terminar en un compromiso del sistema.

Lins importantes para JWT : \ +
  1. Link de Wiki \ +
  2. Jwt.io \ +
Links importantes de implementaciones vulnerables en JWT : \ +
    \
  1. Mejores prácticas JSON Web Token \ + Prácticas actuales (documento de ieft ) \ +
  2. \ + Cheatsheet de OWASP para vulnerabilidadades de implementación JWT \ +
  3. Para \ + vulnerabilidadades del lado del servidor en implementaciones de JWT \ +
+ +#### AttackVector description +JWT_URL_EXPOSING_SECURE_INFORMATION=La solicitud incluye un token JWT que es visible en la URL. Esto viola el cumplimiento de políticas y normativas de la mayoría de organizaciones, e incluso normativas PCI. +COOKIE_CONTAINING_JWT_TOKEN_SECURITY_ATTRIBUTES_MISSING=Token JWT basado en cookies, pero sin las banderas de HttpOnly/Secure y tambien sin prefijos de cookies. +COOKIE_WITH_HTTPONLY_WITHOUT_SECURE_FLAG_BASED_JWT_VULNERABILITY=Token JWT basado en cookies, pero sólo con la bandera de HttpOnly, pero sin la bandera Secure, y tambien sin prefijos de cookies. +COOKIE_BASED_LOW_KEY_STRENGTH_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por firma de clave débil. +COOKIE_BASED_NULL_BYTE_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por Byte Null. +COOKIE_BASED_NONE_ALGORITHM_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por algoritmo None. +COOKIE_BASED_KEY_CONFUSION_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por confusión de clave. +COOKIE_BASED_FOR_JWK_HEADER_BASED_JWT_VULNERABILITY=Validador de token JWT basado en cookies, vulnerable por confianza en el campo JWK sin chequear antes si la clave pública provista está presente en TrustStore o no. +COOKIE_BASED_EMPTY_TOKEN_JWT_VULNERABILITY=Token JWT basado en cookies, vulnerable por el ataque de token vacío. + + + +# SQL Injection Vulnerability +SQL_INJECTION_VULNERABILITY=Un ataque de inyección SQL consiste en la inserción o /"inyección/" de un query SQL a través de la data de entrada \ +que viene desde el cliente a la aplicación. Una inyección SQL exitosa puede leer información sensible desde la base de datos, modificar la data (Insert, Update, Delete), \ +ejecutar operaciones adiministrativas en la base de datos (como apagar el DBMS), recuperar el contenido de un archivo dado, que esté presente \ +en el sistema de archivos del DBMS y, en algunos casos ejecutar comandos sobre el sistema operativo. Los ataques de inyección SQL son un tipo de ataque de inyección, \ +en el cual los comandos SQL se inyectan en la entrada de datos, en orden de afectar la ejecución de comandos SQL predefinidos. \ +Links importantes sobre inyección SQL : \ +
  1. Link de Wiki \ +
  2. Inyección SQL - Owasp \ +
  3. Charla de Joe McCray sobre la inyección SQL \ +
  4. Cheatsheet de inyección SQL por netsparker\ +


\ Links importantes sobre técnicas de prevención : \ +
    \
  1. Cheatsheet sobre prevención de inyección SQL - OWASP \ +
  2. \ + Base de conocimiento de inyección SQL \ +
+ +#### AttackVector description +ERROR_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query SQL, causando una excepción en ciertos escenarios \ + y por tanto, exponiendo información de la aplicación. +ERROR_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego se agrega al query SQL, causando excepciones en ciertos escenarios \ + y por tanto, exponiendo información de la aplicación. +ERROR_SQL_INJECTION_URL_PARAM_REMOVES_SINGLE_QUOTE_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=La comilla simple se remueve del parámetro del query y luego, se agrega al query SQL al incluirlo \ + dentro de "'". +ERROR_SQL_INJECTION_URL_PARAM_APPENDED_TO_PARAMETERIZED_QUERY=El parámetro del query se agrega directamente al query SQL y luego se forma un query parametrizado. Esto es para representar el \ + que el uso correcto de PreparedStatement es importante. + +UNION_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query y por tanto, la palabra clave \"Union\" puede ser usada para agrupar los resultados y \ +extraer la información de la aplicación. +UNION_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego, se agrega al query. De ahí que se pueda usar la palabra clave \"Union\" para agrupar los resultados y \ +extraer la información de la aplicación. +UNION_SQL_INJECTION_URL_PARAM_REMOVES_SINGLE_QUOTE_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=La comilla simple se remueve del query y luego se agrega al que SQL incluyendolo dentro de "'"\ + de ahí que ahí que se pueda usar la palabra clave \"Union\" para agrupar los resultados y extraer la información de la aplicación. + +BLIND_SQL_INJECTION_URL_PARAM_APPENDED_DIRECTLY_TO_QUERY=El parámetro del query se agrega directamente al query, de ahí que el query pueda ser manipulado. +BLIND_SQL_INJECTION_URL_PARAM_WRAPPED_WITH_SINGLE_QUOTE_APPENDED_TO_QUERY=El parámetro del query se incluye dentro de "'" y luego se agrega al query SQL, de ahí que el query pueda ser manipulado. + +#### SSRF Vulnerability + +SSRF_VULNERABILITY=En un ataque de falsificación de solicitud del servidor (Server-Side Request Forgery - SSRF) el atacante puede abusar de la funcionalidad en el servidor para \ +leer o actualizar recursos internos. El atacante puede proveer o modificar una strong>URL, sobre la cual el código ejecutandose en el servidor va a leer \ +o le va a enviar información, y mediante la selección cuidadosa de URLs, el atacante podría ser capaz de leer \ +configuración del servidor, como metadata de AWS, conectarse a servicios internos como bases de datos habilitadas mediante http, o hacer solicitudes POST \ +a servicios internos que no están dispuestos de ser expuestos. \ +Links importantes sobre SSRF : \ +
    \ +
  1. Link de Wiki \ +
  2. SSRF - OWASP \ +
  3. SSRF (Server Side Request Forgery) por Musab Khan\ +
+SSRF_VULNERABILITY_URL_WITHOUT_CHECK=No hay validación en la URL provista. +SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL=El protocolo file:// no está permitido para la URL provista. +SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL_AND_169.254.169.254=El protocolo file:// al igual que el acceso al servicio interno de metadata IP P 169.254.169.254 no está permitido. +SSRF_VULNERABILITY_URL_IF_NOT_FILE_PROTOCOL_AND_INTERNAL_METADATA_URL=El protocolo file:// al igual que el acceso al servicio interno de metadata no está permitido. SSRF_VULNERABILITY_URL_ONLY_IF_IN_THE_WHITELIST=Sólo se permiten URL que esten en la lista blanca. \ No newline at end of file