Está en la página 1de 27

Count - Vulnerabilidad

Verificacion de practica de codificacion segura Vulnerabilidad


Administracion de sesiones Referencia insegura a Objetos
Manejo de archivos Carga arbitraria de Archivos
Manejo de errores y logs Enumeración de Usuarios
Manejo inadecuado de errores
Registro de Log Activado
Practicas criptograficas Almacenamiento no cifrado
Ofuscación de Código no Implementado
Proteccion de datos Exposición de información sensible
Seguridad de base datos Inyección de Código SQL Arbitrario – SQLI
Seguridad en las comunicaciones Aplicación se ejecuta en dispositivo "rooteado"
Débil configuración del protocolo SSL/TLS
Software desactualizado
Administracion de autentificacion y contraseñas Cambio arbitrario de contraseña
Incorrecta verificación de la fuente
Total Result
Riesgo
4.Critico 3.Alto 2.Media 1.Bajo Total Result
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
4 3 4 3 14
Vulnerabilidad Recurso Tipo Remediacion

Inyección de Código SQL Arbitrario – SQLI Portal Web Programacion /Configuracion

Cambio arbitrario de contraseña App Android Edpyme 1.1.8 Programacion

Carga arbitraria de Archivos Portal Web Programacion /Configuracion

Software desactualizado Servidor Backend Actualizacion

Referencia insegura a Objetos App Android Edpyme 1.1.8 Programacion

Débil configuración del protocolo SSL/TLS App Android Edpyme 1.1.8 Programacion
Aplicación se ejecuta en dispositivo "rooteado" App Android Edpyme 1.1.8 Programacion

Ofuscación de Código no Implementado App Android Edpyme 1.1.8 Programacion

Registro de Log Activado App Android Edpyme 1.1.8 Programacion

Enumeración de Usuarios App Android Edpyme 1.1.8 Programacion

Almacenamiento no cifrado App Android Edpyme 1.1.8 Programacion /Configuracion

Incorrecta verificación de la fuente App Android Edpyme 1.1.8 Programacion

Exposición de información sensible App Android Edpyme 1.1.8 Programacion

Manejo inadecuado de errores App Android Edpyme 1.1.8 Programacion


Riesgo

4.Critico

4.Critico

4.Critico

4.Critico

3.Alto

3.Alto
3.Alto

2.Media

2.Media

2.Media

2.Media

1.Bajo

1.Bajo

1.Bajo
Proceso

Durante el análisis del flujo de información de los web services se identificó que uno de los parámetros es vulnerable a inyecciones mediante el uso de
webservice: • "http://www.alternativa.com.pe/credito.php?codProd=145&codMenu=3" En particular, la variable "agp" es susceptible a inyecciones S
manipulación de parámetros enviados al servidor, la aplicación presenta mensajes de error provenientes desde el motor de base de datos MYSQL, pe
individuo malicioso anónimo orientar su ataque y así aumentar la probabilidad de una inyección de código SQL exitosa.

Durante el análisis del flujo de información de las opciones de cambio de contraseña, al ingreso “por primera vez al aplicativo” y en la opción de “cam
en ambas opciones es posible realizar el cambio de contraseña de cualquier usuario registrado, ya que dentro de las variables enviadas al webservice
cambio, se envía la variable “usuario”. Dicha variable puede ser modificada arbitrariamente logrando colocar datos de otros usuarios, y de esta maner
contraseña de cualquier usuario ya registrado.

Durante el análisis del presente recurso afectado, se ha constatado que el mismo permite una carga arbitraria de archivos dentro de la plataforma. En
Superior -> Tarifario -> formulas" pertenecientes a su panel administrativo, existe la opción de carga de imagen. En dicha opción es posible la carga de
sin importar el contenido y/o la extensión.

Durante las pruebas de seguridad realizadas sobre el recurso afectado, se identificó la presencia de servicios que poseen versiones de software desact
servicios observados, junto con las vulnerabilidades identificadas se detallan a continuación: Software; Apache Versión Identificada: 2.4.43 Última ver
CVE-2020-9490 // CVE-2020-11984 // CVE-2020-11993 NOTA: Esta observación fue realizada en base a la información obtenida de algunos de los enc
recursos afectados. Es posible que un
producto actualizado se refleje incorrectamente en los encabezados como
desactualizado. En esos escenarios, esta observación debería ser desestimada.
Así mismo, los CVEs listados son sólo una referencia de las vulnerabilidades
existentes

Durante las pruebas de seguridad realizadas sobre el recurso afectado,, se ha podido detectar que en la opción "Lista de Solicitudes", es posible realiz
arbitrarias de otros usuarios realizando el cambio de variable dentro del webservice utilizado: • https://busintegracion.alternativa.com.pe/prospeccio
busqueda_solicitudesgeneral?tipo=1&codigoanalista=0&usuario=UEX realizando el cambio de la variable usuario es posible realizar la consulta de sol
usuarios, de esta manera tener información de las solicitudes ingresadas por todos los usuarios.

Durante las pruebas de seguridad realizadas sobre el recurso afectado, se ha detectado que el mismo presenta debilidades en la configuración de seg
protocolo/s de seguridad TLS/SSL. Esta debilidad incluye una vulnerabilidad de re negociación insegura (CVE-2009- 3555) permitiendo asi a un atacant
MITM (Man in the middle) y poder interceptar toda la comunicación cifrada entre ambos actores
Durante las pruebas ejecutadas se ha podido determinar que la aplicación analizada no implementa controles que validen si el dispositivo en el cual se
está "Rooteado". Este proceso tiene como objetivo suprimir las restricciones o limitaciones impuestas por el propio sistema operativo respecto a la po
y/o instalar aplicaciones y/o características no oficiales.

Durante el análisis de ingeniería inversa realizadas, se identifico que el código desplegado no se encuentra ofuscado, teniendo información sensible as
aplicativo legible para su análisis de cualquier persona que tenga alcance del apk.

Durante las pruebas de análisis dinámico efectuadas es posible visualizar que el registro de log se encuentra activado, esto significa que los desarrolla
la escritura de mensajes dentro de los log del aplicativo, estos son utilizados durante el desarrollo al realizar el despliegue de la aplicación, dejando en
información sensible como los token generados al ingreso de las credenciales, así como también las url utilizadas por el aplicativo

Durante el análisis de flujo de información de las opciones de “logeo” del aplicativo, se reconocieron tres tipos de mensajes de error al momento de in
credenciales, “usuario no existe”, “contraseña incorrecta” y “usuario bloqueado”, estos mensajes pueden ser utilizados para realizar el reconocimient
usuarios posibles tomando como punto de partida el mensaje “usuario no existe” y tomando en cuenta que la longitud de caracteres de los usuarios e
automatizar un total de 46656 consultas y de esta manera lograr enumerar a todos los usuarios del aplicativo.

Durante las pruebas realizadas en el recurso afectado, se ha constatado que el mismo no posee su almacenamiento cifrado. El alcance de esta vulnera
información guardada por la aplicación, incluidas las semillas (“seeds” en inglés por su término en tal idioma) que se utilizaron. En específico la vulner
bases de datos donde se almacena la información de la sesión del cliente (al igual que datos del dispositivo donde se ejecuta la aplicación).

Durante el análisis de la aplicación, se ha constatado que el servidor backend que interactuá con la aplicación cliente, no constata que el mismo sea un
operar contra ese servidor, siendo posible así que se puedan realizar pruebas con ese servidor por parte de un atacante en búsqueda de vulnerabilida

Durante las pruebas de seguridad realizadas sobre el recurso afectado, se identificó la existencia de recursos asociados a la compañía que exponen inf
acerca de la infraestructura interna de la misma. A continuación, se detalla la información sensible que fue observada durante el análisis realizado: • L
utilizadas y sus versiones asociadas pueden ser identificadas a través de las cabeceras de los paquetes transmitidos entre el cliente y el servidor. • El n
puede ser observado a través de los paquetes transmitidos sin estar los campos cifrados.

Durante las pruebas de análisis dinámico realizadas sobre el aplicativo, se pudo comprobar que se provoca un error en el backend al enviar mediante
no esperado. Al provocar este error y/o excepción, el backend imprimirá el error ocurrido en un formato default establecido en el framwork utilizado.
mensaje contiene el nombre de la función donde ocurrió el error y el nombre del framework utilizado entre otro datos, los cuales pueden ser utilizado
para armar un vector de ataque.
Impacto

Una inyección SQL exitosa le permitiría a un individuo malicioso eludir los controles de seguridad a nivel de aplicación y ejecutar sentencias SQL direct
de bases de datos. De esta manera, un individuo malicioso podría obtener y alterar información sensible almacenada en el sistema (por ejemplo, utiliz
insertar, actualizar o eliminar registros, tablas u otros recursos almacenados).

Un atacante podría utilizar esta vulnerabilidad para poder lograr tener acceso arbitrario al aplicativo con cualquier usuario registrado con tan solo cam
de esta manera obtener información de clientes registrados para evaluación así como utilizar sin autorización el aplicativo.

Un atacante podría realizar la carga de archivos mal intencionados como por ejemplo una webshell, con intenciones de ejecutar comandos remotos e
mismo el alcance de cada uno de los comandos remotos que pueden ser ejecutados dentro del servidor y servicios afectados, está determinados por l
del sistema operativo que esta subyacente al programa afectado, limitando así (o no) el alcance y los privilegios de los que es capaz de alcanzar el mis

Un individuo malicioso podría comprometer con mayor facilidad los servicios afectados, ya que las versiones de software asociadas a los mismos pose
y/o debilidades de seguridad previamente reportadas. Las vulnerabilidades mencionadas son de conocimiento público y los detalles de las mismas se
disponibles. En consecuencia, un individuo malicioso podría intentar explotarlas para comprometer la confidencialidad, integridad y/o disponibilidad d
través de los servidores afectados.

Un atacante podría utilizar esta vulnerabilidad para obtener datos de clientes de manera arbitraria, del mismo modo un usuario con acceso podría ver
otros usuarios sin autorización. Dentro de las posibilidades del atacante entra el poder realizar un ataque de fuerza bruta para así automatizar el proc

Una configuración de seguridad inadecuada brinda a un individuo malicioso mayores oportunidades para comprometer exitosamente la información t
canal cifrado. Las debilidades identificadas exponen la información a amenazas tales como: La funcionalidad de re negociación insegura que podría pe
individuo malicioso, que haya logrado efectuar un ataque del tipo Man-in-The-Middle, enviar solicitudes arbitrarias al servidor con el objetivo de reali
autorizadas en nombre de otros usuarios. Así mismo esta vulnerabilidad permite no solamente el hurto de la identidad del usuario/a afectado/a, si no
identidad de ambos actores (cliente y servidor) puedan ser hurtadas para efectuar acciones en su nombre sin autorización. Además la presente vulner
tanto cliente como servidor vean información modificada por el atacante con el fin de realizar acciones no legítimas en ambos lados.
Un atacante podría utilizar un dispositivo "Rooteado" para instalar la aplicación analizada y realizar pruebas muy detalladas para comprender su comp
En consecuencia, podría obtener información sensible utilizada por la aplicación, evadir mecanismos de seguridad SSL/TLS implementados, modificar
en tiempo de ejecución de la propia aplicación para comprometerla o comprometer a un tercero con el cual se comunica, entre otros. Así mismo un d
posee los controles de aislamiento (“sandbox” por su término en inglés) desactivados, haciendo posible que una aplicación pueda acceder a los datos
utilizadas por otras así como la modificación en tiempo real de las mismas.

Un atacante podría utilizar esta vulnerabilidad para obtener datos sensibles del aplicativo o de la infraestructura adyacente sobre el que se ejecuta el
Así mismo, un atacante puede analizar el flujo de datos para detectar falencias
y vulnerabilidades en el tratamiento de la información.

Un atacante con acceso al dispositivo de forma remota y utilizando el cliente ADB con el comando logcat se podría visualizar datos del aplicativo, entr
utilizadas así como los token obtenidos al realizar un logeo. Pudiendo así ver un registro detallado de todas las operaciones del usuario de forma direc

Un atacante podría utilizar esta vulnerabilidad para obtener el listado de todos los usuarios posibles del aplicativo, y tomando en cuenta de que existe
- cambio arbitrario de contraseña, es posible acceder al aplicativo con cualquier usuario, sea analista o un perfil superior. Teniendo en cuenta la facilid
automatización de la presente vulnerabilidad, se constata que la misma puede ser automatizada para en pocos minutos poder tener un listado de usu
registrados

Un atacante con acceso privilegiado al almacenamiento del dispositivo puede utilizar el mismo para visualizar todos los datos disponibles que son alm
local sobre el usuario, el dispositivo en donde se ejecuta así como las operaciones que se han realizado (debido al flag de debug habilitado y detallado
anterior como “Registro de Log Activado.”) dejando así la confidencialidad y la integridad de la información de forma totalmente desprotegida. Así mi
puede modificar los datos presentes (o añadir otros) con motivo de afectar las operaciones del usuario/a, quedando el alcance del
mismo al escenario en donde se desenvuelva las operaciones de ése usuario/a

Un atacante puede realizar pruebas de diversa índole con el fin de detectar vulnerabilidades en el servidor backend debido a que el mismo no constat
autorizado para hacer uso de los servicios del mismo. Permitiendo así que el atacante no se vea limitado al uso, interacción y entendimiento de la apli

La recolección de información es, usualmente, el primer paso para realizar un ataque. La exposición de información le provee a un individuo malicioso
conocimiento acerca de la infraestructura y podría ser aprovechada para la planificación de ataques externos sobre los recursos de la compañía. Adem
acerca de las versiones de las plataformas utilizadas, le permitiría a un individuo malicioso ejecutar ataques específicos para el software utilizado, incr
probabilidad de éxito en los mismos. Por ultimo, un nombre de usuario válido del sistema podría servirle a un individuo malicioso para realizar ataque
contraseña, tales como fuerza bruta o basados en diccionario para intentar comprometer la
cuenta de usuario asociada y obtener un acceso con mayores privilegios a los
recursos de la compañía.

Un atacante podría utilizar este error para poder obtener datos del framework del backend así como también partes de la lógica de los webservice uti
uso de técnicas especializadas en la generación de errores como el “fuzzing” permitiría a un atacante la provocación de errores de forma premeditada
fallos de seguridad en la aplicación y el servidor.
Recomendación

Se recomienda analizar el diseño e implementación de los mecanismos de validación de datos de entrada utilizados por la aplicación y asegurarse que
ejecuten en el servidor y estén alineados con las mejores prácticas de seguridad correspondientes, contemplando el tipo de dato esperado, la longitud
permitidos. Asimismo, se debe garantizar que los
mecanismos mencionados sean aplicados a todos los parámetros provenientes
desde los usuarios sean susceptibles de ser modificados por un individuo
malicioso. Además, se recomienda analizar y modificar el código fuente de la
aplicación, de manera tal que ante los eventos de error producidos en el código
que se ejecuta en el servidor, se muestren al usuario mensajes de error
genéricos, personalizadas por la compañía y que no expongan ninguna
información sensible.
Para más información, se proveen las siguientes documentaciones (enlaces
con contenido en Inglés):
• http://capec.mitre.org/data/definitions/66.html
• https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.html

Se recomienda obtener los datos del usuario al que se desea realizar el cambio de contraseña de la sesión activa, del mismo modo es recomendable s
la contraseña antigua para poder realizar el cambio de la misma, para poder verificar que el cambio será realizado por usuarios que desconozcan la co
Para mayor información, visite el siguiente enlace(enlace con contenido en Inglés): https://github.com/OWASP/CheatSheetSeries/blob/master/ cheat
TÉCNICO -CONFIDENCIAL Pentest Mobile EdPyme Alternativa Insecure_Direct_Object_Reference_Prevention_Cheat_Sheet.md
• https://cheatsheetseries.owasp.org/cheatsheets/ JSON_Web_Token_for_Java_Cheat_Sheet.htm

Cuando se realiza el cargado (“upload”) de archivos a los servidores, es recomendable realizar la verificación y limitación de las extensiones como en e
ser posible realizar la carga de archivos (PNG,JPEG,GIF,BMP,PDF), los demás tipos de archivos debe ser rechazados por el aplicativo. Para mayor inform
siguiente documentación (enlace con contenido en Inglés): • https://github.com/OWASP/CheatSheetSeries/blob/master/ cheatsheets/File_Upload_C

Se recomienda analizar la posibilidad de actualizar los servicios afectados a las versiones recomendadas por los fabricantes o bien aplicar todos los pa
disponibles. A tal fin se proveen los siguientes enlaces con las últimas versiones del software afectado: • https://httpd.apache.org/download.cgi#apac
ha podido detectar la versión en uso de Apache debido a la cabecera “Server”. La misma no puede ser totalmente anulada en Apache Web Server, an
modificación “ModSecurity” que permite el endurecimiento de tal servicio: • https://github.com/SpiderLabs/ModSecurity-apache

Se recomienda limitar las consultas a la sesión del usuario dentro las opciones "Lista de Solicitudes", del mismo modo es recomendable obtener la var
sesión iniciada y no mandarlo por GET y/o POST, al ser enviado por GET o POST un atacante podría modificar fácilmente dicha variable. Para mayor in
siguiente enlace(enlace con contenido en Inglés): • https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/
Insecure_Direct_Object_Reference_Prevention_Cheat_Sheet.md

Se recomienda revisar si las configuraciones observadas son requeridas por necesidades particulares del negocio. Si no son requeridas, se recomienda
directivas: • Actualizar el software identificado a la última versión recomendada por el fabricante o aplicar los parches de seguridad que se encuentre
problema de re negociación insegura. Además, se recomienda revisar los estándares de configuración de los sistemas para asegurarse que las configu
línea con las políticas de la organización, y asegurarse de que las configuraciones relacionadas sean
consistentes con todas las aplicaciones accesibles desde internet. Por último,
se recomienda analizar la posibilidad de actualizar los estándares de
configuración para que estos requieran el uso de la última versión del protocolo
TLS (TLSv1.3).
Por ultimo, se recomienda la utilización de cifrado en cada uno de los campos
de los paquetes involucrados en el canal de comunicación. Durante el
transcurso del proyecto se ha detectado que la aplicación involucrada utiliza el
protocolo de objetos; JSON. Por lo que se recomienda la utilización de un
cifrado adicional en los campos de los mismos.
- A tal fin se provee la siguiente documentación (en ingles):
• https://tools.ietf.org/html/rfc7520
Se recomienda modificar la aplicación para que únicamente se ejecute si el dispositivo no se encuentra "Rooteado" . En caso que se detecte el disposi
aplicación debería cerrarse, previniendo que el usuario la pueda continuar utilizando. Si bien existen técnicas para evadir detecciones de dispositivos c
implementar las más conocidas y procurar ofuscar el código fuente para que no sea tán fácil encontrar el código que las implementa y cómo. Para ma
visite el siguiente enlace (enlace con contenido en Inglés): • https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05j_x0002_Testing-R
Reverse-Engineering.md Así mismo se provee el siguiente programa, API y librería “open source” para la detección mediante diferentes sistemas de u
“root”: • https://github.com/scottyab/rootbeer Por último, se provee la siguiente documentación (en inglés) con chequeos adicionales que pueden se
tiempo real por la aplicación para la detección de indicadores de “root”: • https://blog.netspi.com/android-root-detection-techniques

Se recomienda realizar la ofuscación del código desplegado, la ofuscación se debe realizar a nivel del framework utilizado y no de android, en este cas
debe realizar a nivel de javascript utilizando tool de ofuscación Para mayor información, visite el siguiente enlace(enlace con contenido en Inglés): •
https://github.com/javascript-obfuscator/javascript-obfuscator

Es recomendable quitar el registro de los mensajes utilizados en el desarrollo cuando se hace el despliegue del aplicativo, se recomienda manejar esta
el aplicativo de forma que solo sea imprimible en el stdout (la salida de la información; una pantalla como un archivo) el registro de datos en los log cu
en estado DEV, deshabilitando esta opción cuando el aplicativo se encuentra en PROD o QA. Para mayor información, visite el siguiente enlace: •
https://github.com/OWASP/owasp-mstg/blob/1.1.3-excel/Document/ 0x05d-Testing-Data-Storage.md#testing-logs-for-sensitive-data-mstg_x0002_s

Se recomienda configurar los mensajes de error de manera generalizada para no proporcionar información a un posible atacante y este pueda ser util
comúnmente utilizado para los mensajes de logeo recomendable es “el usuario y/o contraseña son incorrectos”, de esta manera un atacante no sabrá
equivoco en la contraseña o en el nombre de usuario. Para mayor información, visite el siguiente enlace(enlace con contenido en ingles): • https://ow
project-web-security-testing-guide/latest/4- Web_Application_Security_Testing/03-Identity_Management_Testing/04-
Testing_for_Account_Enumeration_and_Guessable_User_Accoun

Se recomienda la utilización del cifrado de las bases de datos SQLite a tal fin de que un actor no autorizado no pueda hacer uso de tales datos. Se reco
de una llave de cifrado que sea específica para cada dispositivo, sea mediante un MFA o ID del propio dispositivo como de otros medios que se consid
tal motivo, se proveen las siguientes documentaciones (en inglés): • SQLite Encryption Extension: ◦ https://www.sqlite.org/see/doc/release/www/rea
Encryption: ◦ https://source.android.com/security/encryption

Se recomienda analizar el diseño e implementación de los mecanismos de validación de datos de entrada del cliente, a fin de constatar mediante dive
el cliente sea quien dice ser y no una suplantación. Entre los mecanismos recomendados para tal fin se encuentran; la utilización de IDs específicos (pu
en tiempo, u otros algoritmos mas seguros), MFA (Multi Factor Autentication a nivel de aplicación) usando como keys los IDs de los dispositivos en do
entre otros métodos que el cliente considere mejor según la infraestructura adyacente (ya que depende de los programas subyacentes en el backend

Se recomienda eliminar la información sensible expuesta a través de los recursos mencionados. Además, se recomienda actualizar los estándares de s
desarrollo y puesta en producción de servicios, de manera tal que contemple los riesgos asociados a la exposición de información sensible acerca de la
interna, tales como nombres de hosts, direcciones IPs, versiones de software, path internos y nombres de usuarios

Se recomienda modificar la configuración de los servidores web para que los mismos muestren al usuario pantallas de errores generales, personalizad
no revelen información detallada del error y/o de la infraestructura que soporta el sitio web. Para más información, por favor visite el siguiente enlace
inglés): • https://owasp.org/www-project-top-ten/OWASP_Top_Ten_2017/Top_10- 2017_A6-Security_Misconfiguration
Verificacion de practica de codificacion segura Que se hizo

Se ha solicitado la reconsideracion del impacto para que el riesgo baje


Seguridad de base datos a alto

Administracion de autentificacion y contraseñas

Se ha solicitado la reconsideracion del impacto para que el riesgo baje


Manejo de archivos a alto

Se cuenta con la alerta de amenazas (PERCET). Se notificó a TI sobre


Seguridad en las comunicaciones
las actualizaciones del servicio

Administracion de sesiones

Seguridad en las comunicaciones


Considerar las buenas practicas de los servidores de produccion

Seguridad en las comunicaciones

Practicas criptograficas

Manejo de errores y logs

Manejo de errores y logs

Recomendaciones en: EVALUACIÓN DEL PROYECTO APP MOVIL

Practicas criptograficas

Administracion de autentificacion y contraseñas

Proteccion de datos

Manejo de errores y logs


Que hacer

*Mejoras al estandar de desarrollo de software (El cambio de contraseña actual debe solcitar la
contraseña anterior y administracion de sesiones)
*Los estandar de desarrollo y base datos pasaran a seguridad corporativa

*Mejoras al estandar de desarrollo de software (manejo de archivos)


*Los estandar de desarrollo y base datos pasaran a seguridad corporativa

*Implementar Procedimiento de reporte y atencion de alertas PERCET


*Definir line abase y configuracion segura de servicios en servidores
*Definicion de canales digitales.

*Mejoras al estandar de desarrollo de software (sessiones)


*Los estandar de desarrollo y base datos pasaran a seguridad corporativa

*Mejoras al estandar de desarrollo de software


*Los estandar de desarrollo y base datos pasaran a seguridad corporativa
*Concientizacion del uso de medios seguro en la nube
*Politicas para el monitorio de actualziacion de versiones de los canales digitales.
*Definir line abase y configuracion segura de servidores. (Configurar los privilegios de usuarios.)

*Utilizar alguna herramienta de ofuscacion en servidor o aplicativo.


*Mejoras al estandar de desarrollo de software (practicas criptograficas)
*Los estandar de desarrollo y base datos pasaran a seguridad corporativa

*Mejoras al estandar de desarrollo de software (manejo de errors y log no pueden quedar activos
mensajes en produccion )
*Los estandar de desarrollo y base datos pasaran a seguridad corporativa

*Politica de cuentas de usuarios.


*Mejoras al estandar de desarrollo de software l(os mensajes de errores para caso de contraseñas
debe estar de manera generalizada para no proporcionar información )
*Los estandar de desarrollo y base datos pasaran a seguridad corporativa

*Detenerminar la criticidad de la informacion de la base de datos.


*Mejoras al estandar de desarrollo de software (encriptacion)
*Los estandar de desarrollo y base datos pasaran a seguridad corporativa

*Ejecutar recomendación.
*Mejoras al estandar de desarrollo de software (autentificacion y contraseñas)
*Los estandar de desarrollo y base datos pasaran a seguridad corporativa .

*Ejecutar recomendación.
*Solicitar el cambio "sensible" en informe final no tiene relacion con el riesgo bajo
*Mejoras al estandar de desarrollo de software (proteccion datos)
*Los estandar de desarrollo y base datos pasaran a seguridad corporativa

*Desactivar del framework mensajes de error por defecto.


*Mejoras al estandar de desarrollo de software (manejo errores)
*Los estandar de desarrollo y base datos pasaran a seguridad corporativa
Open Web Application Security Project (OWASP)

FASE Actividades
Control de autentificación
Control de roles y privilegios
Requerimientos
Requerimiento orientado al riesgo
Aprobacion de privilegios
Acceso a componentes y administracion del sistema
Pistas de auditoria
Gestion de sesiones
Analisis y Diseño
Datos historicos
Manejo apropiado de errores
Separacion de funciones
Aseguramiento del ambiente de desarrollo
Elaboracion documentacion tecnica
Implementacion y
codificacion Codificacion segura
Seguridad de las comunicaciones
Seguridad en ambientes de produccion
Control de calidad en controles de seguridad
Inspeccion de codigos por fase
Pruebas
Comprobacion de gestion de configuraciones
Caja negra
Aseguramiento basado en riesgos
Mantenimiento
Pruebas de seguridad ( caja blanca y negra) despues de los cambios
Buenas practicas
Validacion de entradas
Codificacion de salidas
Estilo de programacion
manejo de log de cambios
practicas criptograficas
manejo de errores y log
manejo de archivos
manejo de memoria
estandarizacion y reutilizacion de funciones de seguridad

pues de los cambios


Tipo de
# Id Vulnerabilidad Riesgo Recurso Comprometido
Remediación

Portal Web
(http://www.alternativa.com.pe/sistema/c
3 A1 Carga arbitraria de Archivos Alto apa_presentacion/ Programación
imagenes/pdfs/pdf_20210302231108_1.
php)

Portal Web
Inyección de Código SQL Arbitrario –
4 A2 Alto (http://www.alternativa.com.pe/credito.p Programación
SQLI
hp? codProd=145&codMenu=3)
Recomendación

1.Cuando se realiza la carga (“upload”) de archivos a los servidores, es recomendable realizar la verificación y limitación de las extensiones como en
este caso solo debe ser posible realizar la carga de archivos (PNG,JPEG,GIF,BMP,PDF), los demás tipos de archivos debe ser rechazados por el
aplicativo.
2.Cuando un archivo es correctamente cargado en el servidor, el mismo no debe tener permiso alguno de ejecución en el mismo. Esto es para evitar
que un archivo infectado pueda comprometer el servidor y los servicios.

1.Analizar el diseño e implementación de los mecanismos de validación de datos de entrada utilizados por la aplicación y asegurarse que los mismos
se ejecuten en el servidor y estén alineados con las mejores prácticas de seguridad correspondientes, contemplando el tipo de dato esperado, la
longitud y caracteres permitidos. Asimismo, se debe garantizar que los mecanismos mencionados sean aplicados a todos los parámetros
provenientes desde los usuarios sean susceptibles de ser modificados por un individuo malicioso.
2.Analizar y modificar el código fuente de la aplicación, de manera tal que ante los eventos de error producidos en el código que se ejecuta en el
servidor, se muestren al usuario mensajes de error genéricos, personalizadas por la compañía y que no expongan ninguna información sensible.
Afectación Oportunidades de Mejora

Integridad, *Incluir el tratamiento de carga de archivos en todos los estándares de desarrollo de


Confidencialidad y software
Disponibilidad *Los estandar de desarrollo y base datos pasaran a seguridad corporativa

Integridad,
Confidencialidad y
Disponibilidad
Costo App Costo Total
Detalle de la implementación
Movil (S/) Bus (S/) (S/)

Proveedor App Movil:


1.Analizar código fuente del aplicativo y las consultas que se ejecutan en el.
2.Revisión y configuración de htaccess.
3.Implementar validación MIME Type.
750 - 750
4.Implementar validaciones en las extensiones de los archivos que se cargaran al servidor.
5.Implementar validaciones para extensiones dobles de archivos.
6.Implementar validaciones que limiten en tamaño del archivo, así como limitar el numero de
caracteres en el nombre del archivo

Proveedor App Movil:


1.Analizar código fuente del aplicativo, versión de PHP y las consultas que se ejecutan en el.
2.Rediseñar las consultas que se hacen a la base de datos teniendo en cuenta las mejores
750 - 750
prácticas.
3.Implementación de procedimientos almacenados y la utilización de consultas preparadas
4.Adecuar los formularios de envío de datos, para mostrar un mensaje de error generalizado.
Prioridad Solucion Sustento

Se puede
desarrollar en
3 App
paralelo
subcontrato

Se puede
desarrollar en
3 App
paralelo
subcontrato
Estimado Juan, Juan Carlos y Vanessa

Bajo el escenario de que el software se instale en servidores locales (On Premise), remito los requerimientos no fun

Cabe indicar que no contempla los aspectos no funcionales propias de la tecnología, así como los aspectos de la g

Proceso de Autenticación
Administración del sistema
Gestión de perfiles y cuentas de usuario
Logs de auditoría
Parametrización de seguridad
Parametrización para la segregación de funciones
Mecanismos de respaldo

Así mismo, de manera general se requiere que el sistema implemente mecanismos que garanticen la integridad y c

Otros aspectos y que recomiendo se tenga en cuenta en el proyecto son las estrategias para garantizar su disponib

Saludos,
mito los requerimientos no funcionales de seguridad de la información de alto nivel, así como algunos recomendaciones a toma

sí como los aspectos de la gestión del proyecto.

e garanticen la integridad y confidencialidad de los datos (en reposo, en proceso y en tránsito) y de las operaciones.

s para garantizar su disponibilidad, la escalabilidad, usabilidad(accesibilidad, pertinencia y coherencia de la interfaz de usuario


nos recomendaciones a tomarse en cuenta durante la evaluación.

de las operaciones.

encia de la interfaz de usuario.), fiabilidad (disponibilidad, precisión y capacidad de recuperción), compatibilidad con la tecnolog
ompatibilidad con la tecnologia, rendimiento (tiempo de respuesta).

También podría gustarte