¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Desarrollo seguro de interfaces de usuario ABAP confrontado con el OWASP Top 10: Ejemplos y mejores prácticas

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 24 Vistas
0
Cargando...
The Open Web Application Security Project (OWASP) es una comunidad en línea que produce artículos, metodologías, documentación, herramientas y tecnologías de forma gratuita en el campo de la seguridad de aplicaciones web. En particular, han publicado el OWASP Top 10 , que describe en detalle las principales amenazas contra las aplicaciones web.

En este artículo confrontaremos el documento con las responsabilidades del desarrollador ABAP en la programación de interfaces de usuario seguras. Hay algunas reglas simples que todo programador ABAP debería conocer.



Las siguientes secciones describen ejemplos de diferentes vulnerabilidades en la interfaz de usuario de aplicaciones web y explican cómo prevenirlas con una programación segura. El problema con las aplicaciones web es que deseas que los usuarios visiten tu sitio e interactúen con la aplicación. Si el usuario realiza entradas inesperadas, un atacante podría hacer que el servidor o el cliente/navegador realicen acciones no deseadas. Por lo tanto, la primera pauta para desarrollar una aplicación web segura es:
Nunca confíes en ninguna información proveniente del exterior y nunca asumas nada al respecto.

Validación de entrada

Siempre que el software procese una entrada, debe validarse. Esto garantiza una alta calidad de datos y evita entradas inesperadas. La validación adecuada de la entrada debe constar de 6 pasos:

Paso 1: Verificación de existencia y longitud

Paso 2: Canonicalización

El contenido de la variable de entrada se transforma en su representación más simple y más corta.

Paso 3: Verificación de tipo

Paso 4: Verificación de rango

Paso 5: Filtro de lista blanca

La lista blanca es la tabla que contiene elementos permitidos.
TYPES whitelist TYPE HASHED TABLE OF string
  WITH UNIQUE KEY table_line.

DATA(whitelist_name) = VALUE whitelist( ( `APPLE` ) ( `ORANGE` ) ( `PEACH` ) ).
PARAMETERS p_input TYPE string.

IF NOT line_exists( whitelist_name[ table_line = p_input ] ).
  cl_demo_output=>write( `Solo se permiten los siguientes elementos:` ).
  cl_demo_output=>display( whitelist_name[] ).
ENDIF. 

Paso 6: Filtro de lista negra

La lista negra es lo opuesto a una lista blanca y contiene elementos que no están permitidos.
TYPES blacklist TYPE HASHED TABLE OF string
  WITH UNIQUE KEY table_line.

DATA(blacklist_name) = VALUE blacklist( ( `APPLE` ) ( `ORANGE` ) ( `PEACH` )    
            
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?