Está en la página 1de 79

Facultad de Ingeniería en Ciencias de la

Computación y Telecomunicaciones, Universidad


Autónoma Gabriel Rene Moreno
Testing in web applications (Vulnerability and Performance)

Grupo: 4

Integrantes:
Martinez Rodriguez Miguel Angel
Paco Surco Alex Junior
Reyes Pereyra Franz Edwin
Rojas Alba Willian
Velásquez Sánchez Brandon

Materia: INF512 SB – Ingeniería de Software II


Docente: MSc. Rolando Antonio Martinez Canedo
3 de mayo de 2022
Contenido
I. Introducción ........................................................................................................................... 4
II. Objetivos ................................................................................................................................. 4
A. Objetivo general ................................................................................................................. 4
B. Objetivo Especifico ............................................................................................................. 4
III. Pruebas en aplicaciones Web ................................................................................................. 5
A. ¿Qué son las pruebas en aplicaciones web? ...................................................................... 5
B. Pruebas de seguridad (Security testing) ............................................................................. 6
1. ¿Por qué son importantes las pruebas de seguridad? ................................................... 6
2. Tipos de pruebas de seguridad: ..................................................................................... 6
3. Ejemplos de casos de prueba para pruebas de seguridad: ............................................ 6
4. Roles de prueba de seguridad ....................................................................................... 6
5. Ataques o vulnerabilidades más conocidas ................................................................... 7
6. Herramienta de prueba de seguridad .......................................................................... 13
C. Pruebas de rendimiento ................................................................................................... 17
1. ¿Qué son las pruebas de rendimiento? ....................................................................... 17
2. Tipos de pruebas de rendimiento de aplicaciones web .............................................. 17
3. Implicaciones de las pruebas de rendimiento ............................................................. 19
4. Cómo ejecutar correctamente una prueba de velocidad de sitio web ........................ 20
5. Las 10 principales métricas de rendimiento del sitio web ........................................... 21
6. herramientas de prueba de velocidad del sitio web .................................................... 26
IV. Casos de estudio donde se realizaron las pruebas de seguridad y pruebas de rendimiento
29
A. Litmus ............................................................................................................................... 29
1. Cómo Intruder ayuda a Litmus a automatizar la seguridad de su red ......................... 29
B. InsightVm ......................................................................................................................... 30
1. El distrito escolar de Blue Valley se asocia con Rapid7 para potenciar su nuevo equipo
de seguridad 30
C. Ravelin .............................................................................................................................. 32
1. Cómo Intruder ayuda a Ravelin a cumplir con los requisitos de cumplimiento y ganarse
la confianza del cliente ....................................................................................................................... 32
V. Casos de estudio propuestos para realizar las pruebas de seguridad y pruebas de
rendimiento 34
A. Caso de Estudio Unitel ..................................................................................................... 34
1. requisitos previos ......................................................................................................... 34
VI. RESULTADOS ......................................................................................................................... 38
A. Caso de estudio Página Web de Unitel ............................................................................ 38
1. Test and Report information ....................................................................................... 38
B. Caso de estudio – Virtual UAGRM ................................................................................... 43
C. Caso de estudio – SoftBenz .............................................................................................. 48
VII. Discusión y conclusiones ...................................................................................................... 50
A. Artículo de reflexión: Martinez Rodriguez Miguel Angel ................................................. 50
B. Artículo de reflexión: Reyes Pereyra Franz Edwin ............................................................ 51
C. Artículo de reflexión: Rojas Alba Willian .......................................................................... 52
D. Artículo de reflexión: Velásquez Sánchez Brandon .......................................................... 53
VIII. Bibliografía ....................................................................................................................... 55
Pruebas de seguridad y pruebas de
rendimiento en aplicaciones web
I. INTRODUCCIÓN
Todos tenemos que estar de acuerdo en que, en el mundo competitivo y en constante cambio de
hoy, Internet se ha convertido en una parte integral de nuestras vidas.
La mayoría de nosotros tomamos nuestras decisiones buscando información en Internet en estos
días, por lo tanto, alojar un sitio web ya no es opcional sino obligatorio para todo tipo de empresas. Es el
primer paso para convertirse y mantenerse relevante en el mercado.
Tener un sitio web no es suficiente. Se necesita una organización para desarrollar un sitio web que
sea informativo, accesible y fácil de usar. Para mantener todas estas cualidades, el sitio web debe
probarse bien, y este proceso de prueba de un sitio web se conoce como prueba web.
La prueba web es una práctica de prueba de software para probar sitios web o aplicaciones web
en busca de posibles errores. Es una prueba completa de las aplicaciones basadas en web antes de
ponerlas en marcha.
Un sistema basado en la web debe verificarse completamente de principio a fin antes de que entre
en funcionamiento para los usuarios finales.
Al realizar pruebas del sitio web, una organización puede asegurarse de que el sistema basado en
la web funcione correctamente y pueda ser aceptado por los usuarios en tiempo real.

II. OBJETIVOS
A. Objetivo general
Desarrollar conocimientos en el área de las pruebas de seguridad y pruebas de rendimiento en
aplicaciones web.

B. Objetivo Especifico
• Recabar y analizar información sobre las pruebas en aplicaciones web.
• Recabar y analizar información sobre pruebas de seguridad en aplicaciones web.
• Recabar y analizar información sobre pruebas de rendimiento en aplicaciones web.
• Investigar información de los casos donde se aplicó pruebas de seguridad de aplicaciones
web.
• Investigar información de los casos donde se aplicó pruebas de rendimiento de
aplicaciones web.
• Desarrollar habilidades para realizar pruebas de seguridad y pruebas de rendimiento en
aplicaciones web.
• Demostrar conocimientos sobre pruebas de seguridad en casos de uso que se encuentran
en producción.
• Demostrar conocimientos sobre pruebas de rendimiento en casos de uso que se
encuentran en producción.
III. PRUEBAS EN APLICACIONES WEB
A. ¿Qué son las pruebas en aplicaciones web?
Las pruebas en aplicaciones son una práctica de prueba de software en busca de posibles errores.
Es una prueba completa de aplicaciones basadas en la web antes de hacerlas en vivo.
Un sistema basado en la web debe verificarse completamente de extremo a extremo antes de que
se active para los usuarios finales.
Al realizar pruebas de sitios web, una organización puede asegurarse de que el sistema basado en
la web funcione correctamente y pueda ser aceptado por los usuarios en tiempo real.
El diseño y la funcionalidad de la interfaz de usuario son los capitanes de las pruebas del sitio web.
A continuación, se lista las pruebas que se realizan a las aplicaciones web:
• Functionality Testing
• Usability testing
• Interface testing
• Compatibility testing
• Performance testing
• Security testing
En el presente documento nos adentramos en las pruebas de seguridad y pruebas de rendimiento.
B. Pruebas de seguridad (Security testing)
Las pruebas de seguridad son un tipo de prueba de software que revela vulnerabilidades,
amenazas, riesgos en una aplicación de software y previene ataques maliciosos de intrusos. El propósito
de las Pruebas de Seguridad es identificar todas las lagunas y debilidades potenciales en el sistema de
software que podrían resultar en la pérdida de información, ingresos, reputación de los empleados o
personas ajenas a la Organización.

1. ¿Por qué son importantes las pruebas de seguridad?


El objetivo principal es Prueba de seguridad es identificar las amenazas en el sistema y medir las
vulnerabilidades potenciales, para que las amenazas puedan ser detectadas y el sistema no deje de
funcionar o no pueda ser explotado. También ayuda a detectar todos los posibles riesgos de seguridad en
el sistema y ayuda a los desarrolladores a solucionar los problemas mediante la codificación.

2. Tipos de pruebas de seguridad:


Hay siete tipos principales de pruebas de seguridad de acuerdo con el manual de metodología de
pruebas de seguridad de código abierto. Se explican de la siguiente manera:
• Análisis de vulnerabilidades: Esto se hace a través de un software automatizado para
escanear un sistema contra firmas de vulnerabilidades conocidas.
• Escaneo de seguridad: Implica identificar las vulnerabilidades de la red y los sistemas, lo
que a su vez proporciona soluciones para reducir estos riesgos. Este escaneo se puede
realizar para escaneo manual y automático.
• Prueba de penetración: Este tipo de prueba simula un ataque de un pirata informático
malintencionado. Esta prueba implica el análisis de un sistema en particular para verificar
posibles vulnerabilidades de un intento de piratería externa.
• Evaluación de riesgos: Esta prueba incluye un análisis de los riesgos de seguridad
observados en la organización. Los riesgos se clasifican en Bajo, Medio y Alto. Esta prueba
recomienda controles y medidas para reducir el riesgo.
• Auditoría de seguridad: Esta es una auditoría interna de la aplicación y los sistemas
operativos para detectar fallas de seguridad. También se puede realizar una auditoría a
través de una auditoría en línea del código.
• Apoyo ético: Está pirateando sistemas de software organizacional. A diferencia de los
piratas informáticos malintencionados, que roban para sus propios beneficios, el secreto
es exponer las fallas de seguridad en el sistema.
• Evaluación de la postura: Esto combina el escaneo de seguridad, Apoyo ético y
evaluaciones de riesgos para demostrar la postura de seguridad general de una
organización.

3. Ejemplos de casos de prueba para pruebas de seguridad:


Ejemplos de casos de prueba para darle una idea de los casos de prueba de seguridad:
• La contraseña debe estar en formato cifrado
• Una aplicación o sistema no debe permitir usuarios inválidos
• Verifique las cookies y el tiempo de la sesión para las solicitudes
• Para los sitios financieros, el botón de retroceso del navegador no debería funcionar.

4. Roles de prueba de seguridad


• Piratas informáticos: acceso no autorizado a un sistema informático o red
• Cookies: irrumpir en sistemas para robar o eliminar datos.
• Ethical Hacker: realiza la mayoría de las actividades interrumpidas solo con el permiso del
propietario
Script Kiddies o packet monkeys: piratas informáticos sin experiencia con habilidades en lenguaje
de programación.

5. Ataques o vulnerabilidades más conocidas


a) Ataque de inyección SQL
Este tipo de ataque es una técnica que emplea la inyección de códigos para explotar la
vulnerabilidad de un determinado sitio web. Se utiliza comúnmente para atacar aplicaciones que son
controladas únicamente por datos, donde se colocan sentencias de SQL en un campo de entrada para su
ejecución. [1]
Con este tipo de ataques se busca vulnerar la seguridad del software de la aplicación y permite al
atacante poder falsificar identidades, manipular datos existentes, cambiar saldos y transacciones, destruir
datos, convertirse en administradores de base de datos y hasta divulgar completamente los datos del
sistema.
La inyección de SQL es un tipo de ciberataque encubierto en el cual un hacker inserta código propio
en un sitio web con el fin de quebrantar las medidas de seguridad y acceder a datos protegidos. Una vez
dentro, puede controlar la base de datos del sitio web y secuestrar la información de los usuarios

(1) ¿Qué es la inyección de SQL? ¿Y que es SQL?


EL SQL es desarrollado en la década de 1970, es un lenguaje de consulta estructurado
(“Structured Query Languaje”) que se ha convertido en el lenguaje estándar para la gestión de base datos.
Cuando un sitio web necesita acceder a la base de datos que tiene en su servidor para buscar o editar
información, utiliza SQL para procesar es consulta o solicitud.
El SQL es un lenguaje amplio y flexible que ofrece a los diseñadores de bases de datos infinidad de
posibilidades. Casi todos los diseñadores crean bases de datos con su propio conjunto de normas SQL,
aquellas que mejor se adaptan a sus necesidades particulares.
(2) ¿Y dónde entra la parte de la inyección?
Si un desarrollador web no es meticuloso, al crear un sitio podría dejar un resquicio que alguien
con malas intenciones podría usar para provocar efectos inesperados en su base de datos. Las inyecciones
de SQL (o SQLI) se producen cuando el hacker introduce o inyecta en el sitio web código SQL malicioso,
un tipo de malware que se conoce como la carga útil, y consigue subrepticiamente que envíe ese código
a su base de datos como si de una consulta legítima se tratara.
Los hackers recurren a los ataques de inyección de SQL con el fin de introducirse en la base de
datos de un sitio web. A veces solo quieren eliminar datos para provocar el caos y, en otras ocasiones, lo
que buscan es editar la base de datos, especialmente en el caso de sitios web financieros.
Los ataques de inyección de SQL únicamente son viables cuando un sitio web carece de un
saneamiento de entrada adecuado: el proceso que vela por que la información que introducen los
usuarios finales no pueda colarse por ningún resquicio y funcionar como código ejecutable en el servidor.
Esto requiere más trabajo por parte del desarrollador, pero, en última instancia, protege frente a la
inyección de SQL, las secuencias de comandos en sitios cruzados y otras clases de ataques a sitios web.
(3) ¿Qué efecto tienen los ataques de inyección de SQL?
Los hackers recurren a los ataques de inyección de SQL con el fin de introducirse en la base de
datos de un sitio web. A veces solo quieren eliminar datos para provocar el caos y, en otras ocasiones, lo
que buscan es editar la base de datos, especialmente en el caso de sitios web financieros. En el momento
en que el hacker ha logrado el control de la base de datos, ya es fácil interferir en los saldos de las cuentas
de los clientes y mandarse dinero a su propia cuenta.
Sin embargo, a menudo lo que el ciberdelincuente quiere son los datos de usuario guardados en
el sitio web, como las credenciales de inicio de sesión. Estos datos de inicio de sesión robados puede
emplearlos para realizar acciones en nombre de los usuarios afectados o reunirlos en una gran lista que
luego venderá a otros ciberdelincuentes en la red oscura. Las personas que compran información robada
lo hacen, frecuentemente, con la finalidad de robar identidades y cometer fraudes.
(4) ¿Cómo se produce un ataque de inyección de SQL?
Si un sitio web no toma las medidas adecuadas para sanear la introducción de datos, un hacker
puede inyectar el código SQL que quiera. De este modo, el sitio web envía el código del hacker, la carga
útil, a su servidor. Cuando llega a la base de datos del sitio web, ubicada en su servidor, la carga útil del
hacker entra en acción e interfiere en la base de datos, de modo que el hacker puede cumplir sus objetivos

Los hackers recurren a los ataques de inyección de SQL con el fin de introducirse en la base de
datos de un sitio web.

(5) Inyección de SQL mediante la introducción de datos del usuario


La inyección de SQL mediante la introducción de datos del usuario es la forma más sencilla de
perpetrar un ataque de inyección de SQL. Hay un montón de sitios web que recopilan las entradas del
usuario y las transmiten al servidor. Eso quiere decir que, si hace un pedido por Internet y pone su
dirección, este dato se recopila. Y ocurre lo mismo en un apartado de comentarios o de reseñas de
usuario. Sin un saneamiento de entrada seguro, un formulario con campos para rellenar o un recuadro
para poner comentarios constituyen una vulnerabilidad flagrante en cuanto a la inyección de SQL.
En lugar de cumplimentar estos formularios con contenido y respuesta normales y corrientes, los
hackers que utilizan la inyección de SQL hacen algo muy diferente: introducir una secuencia de comandos
de código SQL. Cuando un sitio web con un saneamiento de entrada deficiente envía el contenido del
formulario a su servidor, el código del hacker se ejecuta. Así es como los hackers usan la SQLI para robar
los datos de los usuarios o trastocar el funcionamiento de un sitio web.
Veámoslo con un ejemplo real: una situación en la que una persona va a solicitar un empleo. El
nombre del candidato es Juan González, pero en la solicitud escribe «Contratar a Juan González». Cuando
el director de contrataciones lee el nombre del candidato en voz alta, el equipo de RR. HH. le oye decir
«Contratar a Juan González», así que le envían a Juan una oferta de empleo formal.
En lugar de indicar su nombre real, Juan ha enviado una carga útil de SQL que, al ejecutarla la base
de datos (el director de contrataciones), hace que Juan consiga el trabajo.

(6) Inyección de SQL mediante la modificación de cookies


Las cookies son archivos pequeños que residen en el navegador y facilitan a los sitios web
información sobre el usuario. Algunas veces son útiles, por ejemplo, cuando recuerdan sus credenciales
de inicio de sesión o sus preferencias; es cómodo. Otras veces dan miedo: muchos sitios emplean cookies
para seguir las actividades del usuario en Internet y en sus páginas. Utilizan la información obtenida con
el seguimiento para llevar a cabo investigaciones de mercado y con fines publicitarios. Este segundo tipo
de cookie es una herramienta de seguimiento web habitual.
Los ciberdelincuentes son capaces de manipular o «envenenar» las cookies de manera que, cuando
transmitan información al servidor del sitio web, envíen código SQL a la base de datos.

(7) Inyección de SQL mediante variables de servidor


Al introducir la URL de un sitio web en el navegador, tiene lugar una rápida secuencia de
comunicaciones cuya finalidad es ofrecer el sitio al usuario. Dentro de este proceso, el navegador solicita
una lista de datos denominada «variables de servidor» que sirve para que el sitio se renderice
correctamente.
Un hacker astuto puede meter sigilosamente código SQL en las solicitudes del navegador, las
cuales, si no se sanean debidamente, se inyectarán en la base de datos del sitio web, que se encuentra en
el servidor.

(8) Inyección de SQL mediante herramientas de hackeo automáticas


Si esto parece demasiado complicado, existe una opción más sencilla. Hay herramientas
automáticas de inyección de SQL, como SQLMAP, que detectan y aprovechan las vulnerabilidades en la
inyección de SQL presentes en un sitio web determinado y en su base datos.
SQLMAP es una herramienta de código abierto muy popular entre los gestores de bases de datos
y los desarrolladores de sitios web que quieren parchear sus sitios para protegerlos contra la inyección de
SQL. Pero no hay nada que impida a las personas utilizar SQLMAP con malas intenciones.
(9) Ataques SQL de segundo orden
La inyección de SQL de segundo orden va un poco más lejos, ya que emplea un método mucho más
sofisticado. Dado que muchos sitios web se sanean para evitar la introducción de datos directa por parte
los usuarios, los hackers inyectan SQL diseñado para ejecutarse únicamente en las visitas posteriores. Al
implantar unas medidas preventivas básicas de saneamiento de entrada, el sitio web en cuestión
bloquearía un ataque normal de SQLI, también denominado ataque de «primer orden». Sin embargo, un
ataque de inyección de SQL de segundo orden es una bomba de relojería. Lo que sucede es lo siguiente:
Un hacker inyecta un fragmento de código en la base de datos que, por sí mismo, no hace nada.
Pero este código está diseñado para alterar el funcionamiento de la base de datos al interpretarlo como
una entrada más de todas las que contiene. Así, cuando el SQL de la base de datos incluye el código del
hacker entre sus propias funciones, se lanza el ataque.
(10) La repercusión de los ataques de inyección de SQL
Los ataques de inyección de SQL pueden tener muy diversas consecuencias. Un solo ataque de
SQLI puede tener unos efectos devastadores tanto en los usuarios afectados como en la empresa o el
negocio atacados.
Efectos de las SQLI en las personas
Aunque los blancos de una SQLI no son las personas, si usted utiliza un sitio web donde se haya
perpetrado un ataque de este tipo, el impacto podría ser considerable. Tener una cuenta en un sitio web
que sufra un ataque o enviar datos personales a este sitio permitiría a los hackers hacer muchas cosas, no
solo conseguir sus datos personales.
Los ataques de inyección de SQL pueden tener consecuencias graves para las personas, a saber:
• Pérdida de dinero: un hacker puede usar una SQLI en la página de una entidad bancaria
u otra institución financiera a fin de transferir dinero desde la cuenta de un usuario.
• Robo de identidad: cuando un hacker controla una base de datos, puede hacerse con la
información que contiene y venderla en la red oscura. Otros ciberdelincuentes pueden
comprar estos datos y utilizarlos para robar identidades.
(11) Efectos de las SQLI en las empresas
Como los verdaderos blancos de los ataques de SQLI son las empresas, estas se enfrentan a una
serie de amenazas mucho más diversas. Cuando un hacker se introduce en una base de datos, puede
realizar varias acciones y, una vez que el suceso se divulga, la empresa afectada se ha de preparar para
hacer frente a los perjuicios a su imagen pública y minimizarlos.
A continuación, detallamos algunos de los daños que pueden sufrir las empresas en un ataque de
SQLI:

Sabotaje: un hacker puede sembrar el caos fácilmente en una empresa borrando su base de datos
o destrozando el sitio web.
Robo de datos: muchos ataques de SQLI tienen por objeto robar datos confidenciales tales como
secretos comerciales, información privilegiada, propiedad intelectual protegida y, a menudo, información
de los usuarios o clientes.

Filtraciones de seguridad: un hacker podría usar el contenido de una base de datos quebrantada
para acceder a otras partes de la red interna de una empresa. Al final, toda la red puede estar en riesgo.

Pérdida de reputación: tras sufrir los efectos de un ataque de SQLI, puede resultar difícil que una
empresa recupere la confianza de sus clientes y del público en general.
b) Vulnerabilidad de redirección de URL
Una de las vulnerabilidades más comunes y en gran medida ignoradas por los desarrolladores web
es Open Redirect (también conocido como “Redireccionamientos y Reenvíos no Validados “).
Una redirección abierta (Open Redirect) es cuando una aplicación o servidor web utiliza un enlace
no validado enviado por el usuario para redirigirlo a un sitio o página web determinado. Aunque parece
una acción inofensiva dejar que el usuario decida a qué página quiere ser redirigido, esa técnica, si se
explota, puede tener un grave impacto en la seguridad de la aplicación, especialmente cuando se combina
con otras vulnerabilidades y trucos.

(1) Cómo evitar el redireccionamiento de páginas


Hay que tener en cuenta que esto debemos cuidarlo tanto a nivel de usuario como también cuando
tenemos una página web. Es importante tener siempre actualizados los sistemas y complementos.
Hemos visto que en ocasiones pueden inyectar código a través de vulnerabilidades existentes. Por tanto,
será vital tener siempre las últimas versiones.
El sentido común es esencial a nivel de usuario. Hay que observar siempre la URL a la que estamos
entrando, tener cuidado de posibles links fraudulentos, etc. Puede librarnos de problemas importantes.
Hay que asegurarse de entrar siempre en páginas HTTPS.
También puede ser interesante el uso de herramientas de seguridad. Podrían ayudarnos a
detectar amenazas muy variadas y que afecten al buen funcionamiento del sistema y, en definitiva, a
nuestra seguridad y privacidad.
c) Ataque DDOS O Denegación de servicio
(1) ¿Qué es un ataque de denegación de servicio?

Este tipo de ataques tienen como objetivo degradar la calidad de un servicio, por ejemplo, una
página web, y dejarlo en un estado no funcional. Para lograrlo, se saturan los recursos del sistema que
aloja el servicio que se quiere interrumpir, enviándoles una avalancha de peticiones que no son capaces
de atender.

Una evolución de este tipo de ataque es la denegación de servicio distribuido o DDoS por sus siglas
en inglés Distributed Denial of Service. Consiste en utilizar un elevado número de dispositivos atacantes
contra el objetivo. Los ataques DDoS muchas veces son llevados a cabo por bots, sistemas infectados cuyo
propietario muchas veces desconoce que sus dispositivos forman parte de esta red maliciosa.
(2) Medidas de prevención frente a las DoS y DDoS
Los ataques de denegación de servicio, ya sea distribuido o no, causan graves consecuencias en los
sistemas atacados. Implementar medidas preventivas será imprescindible ya que, en caso contrario,
solamente sabremos que hemos sido víctimas de este ataque cuando el servicio deje de funcionar.
Para minimizar las consecuencias de estos ataques sobre nuestros sistemas se deberán incorporar
distintas medidas de seguridad.
(3) Medidas de protección en la red interna
Cuando la página web se encuentra en la red interna de la empresa se han de incorporar elementos
de protección perimetral para protegerlo. Entre otras medidas:
• Ubicar el servidor web en una zona desmilitarizada (entre cortafuegos), también llamada
DMZ, evitando así que un intruso pueda acceder a la red interna si vulnera el servidor
web;
• implementar un sistema de detección y prevención de intrusiones (IDS/IPS) que
monitorizan las conexiones y nos alerta si detecta intentos de acceso no autorizados o
mal uso de protocolos;
• utilizar un dispositivo o software con funcionalidad mixta (antivirus, cortafuegos y otras),
como un UTM que permite gestionar de manera unificada la mayoría de ciber amenazas
que pueden afectar a una empresa.

El uso combinado de estos elementos, que pueden ser tanto software como hardware, y su
correcta configuración, reducirá las posibilidades de sufrir un ataque de denegación de servicio.
(4) Medidas de protección en el hosting
En caso de que se haya contratado un hosting debes informarte sobre las medidas de seguridad
que ha implementado el proveedor. Tendrás que comprobar que son como las del apartado anterior.
Algunos proveedores ofrecen estas medidas de seguridad en el panel de administración del alojamiento
web. Verifica con el proveedor quién será el encargado de su configuración y administración.
Los ataques de denegación de servicio pueden afectar a cualquier empresa, pero las consecuencias
variarán mucho dependiendo de las medidas de prevención que se hayan tomado. Si estas son correctas,
las consecuencias del ataque serán imperceptibles, pero en cambio si las medidas de prevención son nulas
el sitio web puede quedar inoperativo durante todo el tiempo que dure el ataque. ¡Protege tu web frente
ataques de denegación de servicio!

6. Herramienta de prueba de seguridad


a) Intruder

Intruder Es un escáner de vulnerabilidades en línea de nivel empresarial fácil de usar que encuentra
debilidades de ciberseguridad en su infraestructura digital, para evitar costosas filtraciones de datos.
Ejecuta más de 10,000 controles de seguridad de alta calidad en todas sus infraestructuras de TI, que
incluyen, entre otros: vulnerabilidades de configuración, vulnerabilidades de aplicaciones (como
inyección SQL y secuencias de comandos entre sitios) y parches faltantes. Al proporcionar resultados de
prioridad inteligentes, así como análisis proactivos para las últimas amenazas, Intruder ayuda a ahorrar
tiempo y mantiene a las empresas de todos los tamaños a salvo de los piratas informáticos. [2]

Aspectos:
• Conectores en la nube de AWS, Azure y Google
• Resultados específicos del contorno para reducir su superficie de ataque externa
• Informes de alta calidad
• Slack integrado, Microsoft Staff, Jira, Zapier
• Integración de API con su canalización de CI / CD
b) Owasp Zap
El OWASP Zed Attack Proxy (ZAP) es una de las herramientas de seguridad gratuitas más populares
del mundo de 1992 y es mantenida activamente por cientos de voluntarios internacionales. Puede
ayudarlo a encontrar automáticamente vulnerabilidades de seguridad en sus aplicaciones web mientras
desarrolla y prueba sus aplicaciones. También es una gran herramienta para que los pentesters
experimentados la usen para pruebas de seguridad manuales.
c) InsightVM
(1) ¿Qué es InsightVM?

InsightVM utiliza el poder de la plataforma Rapid7s Insight y la herencia de su galardonado


producto Nexpose. InsightVM proporciona una herramienta totalmente disponible, escalable y eficiente
para recolectar datos de vulnerabilidad, convertirlos en respuestas y minimizar el riesgo. Este líder del
sector de la administración de vulnerabilidades, InsightVM, aprovecha la última tecnología de analíticas y
punto final para descubrir vulnerabilidades en tiempo real, identificar su ubicación, establecer prioridades
según el contexto comercial y el riesgo de las amenazas y confirmar la reducción de la exposición.
• Escanear la red completa
• Eliminar vulnerabilidades
• Seguir y comunicar el progreso
(a) RAPID7: GESTIÓN DE VULNERABILIDADES
Rapid7 ha creado una poderosa herramienta InsightVM un software de gestión de vulnerabilidades
con la capacidad de mostrar a las empresas el nivel de riesgo.
Los escáneres de vulnerabilidad tradicionales cada vez son menos insuficientes ante la acelerada
evolución de amenazas digitales.
Por eso qué es necesario enumerar las soluciones más efectivas para la protección de tus sistemas
teniendo esto en cuenta.

Monitoreo continuo

Rapid7 Insight VM monitorea en tiempo real todos tus activos. Lo mejor de esto esta solución
actúa de forma simple sin ralentizar o afectar de forma negativa tus sistemas. Lo que te brinda poder y
ligereza al mismo tiempo.
(b) CARACTERISTICAS
• Agente de punto final ligero
• Tableros en vivo
• Priorización de riesgos reales
• Proyectos de remediacion integradis de TI
• Evaluacion de la infraestructura virtual y de la nube
• Seguridad del contenedor
• Fuentes integradas de amenazas
• Objeticos y SLA
• API RESTful facil de usar
• Evaluacion de políticas.
• Aplicación de parches asistida por automatizacion
• Contencion automatizada.
C. Pruebas de rendimiento
1. ¿Qué son las pruebas de rendimiento?
Las pruebas de rendimiento son uno de los componentes más desafiantes de las pruebas de
aplicaciones web. Pero vale la pena: si se hace bien, las pruebas de rendimiento pueden pronosticar el
comportamiento del producto y su respuesta a las acciones del usuario con una cantidad impresionante
de detalles y precisión. Los datos irrelevantes de las pruebas de rendimiento web o las métricas
incorrectas elegidas durante las pruebas cuestan a las empresas mucho dinero y esfuerzo, mientras que
no monitorear el rendimiento de su aplicación web en absoluto puede conducir directamente a un
bloqueo, por ejemplo, en el Black Friday, si no está preparado para manejar un mayor número de usuarios
simultáneos.
En el contexto del desarrollo web, las pruebas de rendimiento implican el uso de herramientas de
software para simular cómo se ejecuta una aplicación en circunstancias específicas. Las pruebas
cuantitativas de rendimiento analizan métricas como el tiempo de respuesta, mientras que las pruebas
cualitativas se ocupan de la escalabilidad, la estabilidad y la interoperabilidad.
Cuando se escucha la palabra "rendimiento", la mayoría de la gente piensa inmediatamente en la
velocidad. Los tiempos de carga rápidos y los tiempos de respuesta son absolutamente necesarios en
estos días, pero debe pensar en el panorama general, que requiere más que solo hacer clic en todos sus
enlaces para asegurarse de que funcionen. El hecho de que todo funcione perfectamente durante las
pruebas de producción no significa que ese será el caso cuando su sitio web esté inundado de tráfico
a) Objetivos de las pruebas de rendimiento:
• Localizar cuellos de botella. Por ejemplo, si hay mucha carga de usuarios y el sistema colapsa o
los tiempos de respuesta son muy altos, estas pruebas nos sirven para detectar dónde está el
problema, si es debido a que el sistema se queda sin CPU, si se queda sin memoria, o si el ancho
de banda es insuficiente.
• Identificar y localizar problemas de rendimiento en la aplicación. Por ejemplo, si observamos
que cierta funcionalidad de la aplicación tiene un tiempo de respuesta muy alto, a partir de ahí
tenemos que ver por qué ocurre y cómo optimizarlo. Es decir, no sólo nos permite encontrar el
problema rendimiento, sino que también ayuda a localizar dónde está ese problema de
rendimiento para poder subsanarlo.
• Verificar el cumplimiento de los SLA (Acuerdos de Nivel de Servicio). Por ejemplo, si tenemos
una aplicación que prevé tener unos mil usuarios de forma concurrente y necesitamos que los
tiempos de respuesta sean inferiores a 3 segundos. Podemos ejecutar una prueba con esas
condiciones y ver esos tiempos de respuesta.

2. Tipos de pruebas de rendimiento de aplicaciones web


Las pruebas de rendimiento de una aplicación web son, simplemente hablando, un proceso de uso
de herramientas de software para simular cómo se ejecuta una aplicación bajo una carga de trabajo
esperada y medir de acuerdo con puntos de referencia y estándares. Se centra en una amplia gama de
métricas y características: los profesionales de control de calidad evalúan el tiempo de respuesta, la
utilización de recursos, el rendimiento del sistema, etc. Diseñamos la clasificación a continuación para
ayudar a los equipos de proyecto a asegurarse de que no se salten un solo aspecto crucial de las pruebas.
Aunque las herramientas de prueba de páginas web son útiles y pueden brindarle una visión
general rápida de la velocidad y el rendimiento general de un sitio web, debe realizar un análisis más
exhaustivo utilizando una variedad de pruebas. [3]
Estos son los principales tipos de pruebas de rendimiento de aplicaciones web:
a) Performance testing
Una prueba de rendimiento es cualquier prueba que mide la estabilidad, el rendimiento, la
escalabilidad y/o el rendimiento de su aplicación web. Se utiliza para garantizar que la construcción final
cumpla con las expectativas de un usuario final y ayude a una empresa a alcanzar sus objetivos.
Idealmente, los propietarios deberían terminar con una lista de desajustes entre el rendimiento esperado
y real de su aplicación web. Tener una visión más profunda de los puntos más débiles de su aplicación
ayuda durante el ajuste fino y aporta más sustancia al proceso de toma de decisiones.
b) Load testing
Las pruebas de carga evalúan la capacidad de la aplicación web para funcionar bajo una mayor
carga, por ejemplo, bajo un número masivo de usuarios virtuales simultáneos que realizan transacciones.
Las pruebas de carga analizarían cómo sus acciones afectan el tiempo de respuesta de la aplicación y
medirían el poder de permanencia. Los ingenieros identificarán y solucionarán los problemas de
simultaneidad y se asegurarán de que tengan suficiente potencia y ancho de banda del servidor para
soportar una carga estimada. Este tipo de pruebas es una necesidad para la planificación de la
escalabilidad.
c) Stress testing
Los bloqueos pueden sucederle a cualquiera, y algunos propietarios de productos dirían que son
inevitables. Pero es crucial asegurarse de que no se pierdan datos durante el apagado y que no haya
exploits de seguridad a la intemperie. Las pruebas de estrés ayudan a los equipos a definir problemas que
solo se hacen visibles en condiciones de carga máxima, y evalúan hasta qué punto un sistema sigue
trabajando bajo cargas intensas o con parte de su hardware o software comprometido. Para ejecutar
pruebas de esfuerzo, los especialistas en control de calidad simulan cargas que exceden las estimaciones
razonables para probar el rendimiento de las aplicaciones web. Los resultados deben ser utilizados por
los gerentes para preparar al equipo de mantenimiento para situaciones extremas.
d) Capacity testing
Una prueba de capacidad es una prueba para determinar cuántos usuarios puede manejar la
aplicación antes de que el rendimiento o la estabilidad se vuelvan inaceptables. Al conocer el número de
usuarios que su aplicación puede manejar "con éxito", tendrá una mejor visibilidad de los eventos que
podrían llevar a su sitio más allá de sus limitaciones, mientras que los administradores de su sistema
sabrán qué capacidad del servidor, ancho de banda, etc. se necesitan para un rendimiento del producto
de alta calidad y sin errores.
e) Component testing
Cualquier tipo de prueba de rendimiento web se puede manejar como prueba de componentes.
Es un enfoque que apunta a los componentes arquitectónicos del sistema. Redes, servidores, bases de
datos, dispositivos de almacenamiento, firewalls, son todos ejemplos de estos componentes discretos.
f) Smoke testing
Una prueba de humo es la primera ejecución a través de una aplicación desarrollada que ayuda a
determinar sus puntos más débiles y problemas más apremiantes. Las pruebas de humo generalmente se
realizan en condiciones normales de producción, con una carga de usuario estimada y un volumen de
datos. Si la prueba falla, no se necesitan más pruebas hasta que la prueba más simple haya pasado con
éxito. Es una práctica recomendada iniciar una de estas ejecuciones de "verificación" antes de ejecutar
pruebas más grandes para garantizar que la prueba sea válida.
g) Unit testing
El propósito de una prueba unitaria es garantizar que una unidad de código funcione como se
esperaba. La unidad típica de código es una función. Una prueba unitaria envía datos a una función y
verifica la exactitud del resultado de esa función. Normalmente, las pruebas unitarias son realizadas
directamente por los desarrolladores. Las pruebas unitarias son una forma de incorporar sin problemas la
validación del rendimiento del sistema en el ciclo de desarrollo.
h) Investigation
Para determinar la causa raíz del problema, un equipo debe realizar investigaciones: recopilar
datos relacionados con el rendimiento. Todos los conocimientos recopilados durante la investigación
ayudan a los evaluadores a respaldar o refutar una hipótesis con respecto a una causa o una solución a
un problema de rendimiento.
i) Validation
Las pruebas de validación determinan si un sistema coincide con un conjunto de requisitos y
expectativas empresariales. Los desarrolladores suelen validar las siguientes características del proyecto:
• Velocidad
• Estabilidad
• Escalabilidad

3. Implicaciones de las pruebas de rendimiento


Las pruebas de rendimiento implican probar la aplicación web para determinar cómo se ven
afectadas la estabilidad, la velocidad y la capacidad de respuesta en diferentes cargas de trabajo. Esto le
permite determinar cuánto puede manejar el sitio web, comparar el rendimiento y realizar mejoras
basadas en estos resultados.
Los aspectos clave de las pruebas de rendimiento incluyen pruebas de carga de sitios web, pruebas
de estrés, velocidad de conexión y optimización del rendimiento web.
a) Prueba de carga web
Las pruebas de carga web implican probar lo que sucede si varios usuarios acceden o solicitan la
misma página. Se trata de determinar si su sistema puede mantener los tiempos de carga máxima. Su sitio
web debe ser capaz de manejar solicitudes de usuarios simultáneas, conexiones simultáneas, tiempos de
carga pesados de ciertas páginas y grandes entradas de datos.
El objetivo principal de las pruebas de carga es determinar la cantidad máxima de trabajo que un
sistema de software puede tomar antes de que el rendimiento comience a sufrir. En la práctica, las
pruebas de carga se pueden llevar a cabo de muchas maneras diferentes dependiendo del tipo de sitio
web que esté probando. En resumen, una prueba de carga implica los siguientes pasos:
1. Determine un entorno de prueba dedicado y escenarios de prueba.
2. Describa las transacciones para una aplicación y trace el recorrido del usuario.
3. Ejecute el escenario de prueba.
4. Monitoree y mida los resultados contra varias métricas.
5. Utilice los resultados para ajustar el sistema.
b) Prueba de esfuerzo web
Las pruebas de estrés web implican estirar el sitio web más allá de sus límites al colocar altas
cantidades de estrés en el sitio para analizar cómo reacciona y se recupera. La diferencia entre una prueba
de carga y una prueba de esfuerzo es que esta última sobrecarga el sistema para encontrar su punto de
ruptura.
En este tipo de prueba, generalmente se coloca presión en los campos de entrada y las áreas de
inicio de sesión para identificar cuellos de botella en el sistema e identificar áreas potenciales de falla. El
proceso típico de pruebas de esfuerzo implica unos pocos pasos simples:
1. Planifique la prueba de esfuerzo recopilando y analizando los datos del sistema y
delineando los objetivos de la prueba.
2. Genere datos de escenarios de prueba y cree scripts de automatización de pruebas.
3. Ejecute la prueba.
4. Analice los resultados de las pruebas de esfuerzo e identifique cualquier cuello de botella
en el sistema.
5. Ajuste y optimice el sistema para mejorar el rendimiento del sitio
c) Velocidad de conexión
Es importante probar el rendimiento del sitio web o la aplicación de software en diferentes
velocidades de conexión, como el acceso telefónico y la RDSI.
d) Optimización del rendimiento web
El 40% de los consumidores no esperará más de tres segundos para que un sitio web se cargue
antes de abandonarlo. La velocidad de carga de la página es un factor importante de clasificación SEO, y
los sitios web que se cargan más rápido tienen más probabilidades de lograr clasificaciones SERP más
altas, lo cual es ideal para los negocios.
1. Elija un proveedor de alojamiento confiable.
2. Audite los complementos y ejecute pruebas de velocidad de página para asegurarse de
que los complementos no afecten el rendimiento.
3. Optimice las imágenes y utilice diferentes tipos de almacenamiento en caché.
4. Minimice y combine archivos JS y CSS para reducir el ancho de banda y los recursos
necesarios para cargar un sitio web.

4. Cómo ejecutar correctamente una prueba de velocidad de sitio web


Cuando se trata de su sitio web, la velocidad es importante. Esto es un hecho. ¿Por qué? En primer
lugar, la velocidad del sitio web es un factor importante en el algoritmo de Google. Los sitios web de carga
rápida pueden esperar clasificarse en lo más alto en los SERPs y atraen a más visitantes. En segundo lugar,
están todas las consideraciones de experiencia del usuario. Si un sitio se carga rápidamente, es más
probable que los visitantes se queden, lean su contenido y, en última instancia, se conviertan. En otras
palabras, un sitio web rápido como el rayo desbloquea todas las cosas buenas que los webmasters
anhelan. [4]
Ejecutar una prueba de velocidad del sitio web incorrectamente, puede que no pienses que este
es un problema tan grande ... pero en realidad, lo es, especialmente cuando estás tratando de medir las
mejoras. Si ejecuta una prueba de velocidad del sitio web de manera incorrecta, puede parecer que su
sitio es más lento, cuando en realidad es más rápido. [4]
Entonces, a continuación, nos sumergiremos en la forma correcta de ejecutar una prueba de
velocidad del sitio web, junto con algunas herramientas que puede usar para medir tangiblemente la
velocidad de su sitio y realizar un seguimiento de cualquier mejora. [4]
a) Antes de ejecutar una prueba de velocidad del sitio web
Antes de ejecutar una prueba de velocidad, debe verificar si ya tiene las siguientes dos cosas
configuradas y ejecutándose en su sitio de WordPress:
• Caching (Cache): Configurar el almacenamiento en caché.
• Content Delivery Network: Habilitar la red de entrega de contenido (CDN).
Ahora que tiene el almacenamiento en caché configurado y una CDN habilitada, es hora de
sumergirse en cómo acelerar adecuadamente la prueba de su sitio web.
Hay muchas herramientas diferentes que puede utilizar para medir el rendimiento de su sitio.
b) La ubicación de la prueba de velocidad importa
Casi todas las herramientas de prueba de velocidad le permiten elegir entre diferentes ubicaciones
de prueba en todo el mundo, y esto importa bastante. Esto se debe a que su velocidad es relativa al centro
de datos donde se aloja su sitio de web. TTFB, latencia de red, y más entran en juego.
Por lo tanto, es importante probar rápidamente su sitio tanto desde una ubicación que esté cerca
de su centro de datos, como desde una que esté lejos. Esto también le ayudará a ver cuánto impacto tiene
la CDN en su sitio de web. Incluso puede deshabilitar su CDN temporalmente y volver a probar
nuevamente sin ella para ver realmente la diferencia.
Hagas lo que hagas, sé coherente con la ubicación que elijas.
c) Tienes que probar varias veces
No profundizaremos demasiado en caché en este artículo, pero solo recuerde que el
almacenamiento en caché, tanto desde su host o complemento desde su CDN, es lo que hace que su sitio
web se cargue súper rápido.
El gran problema es que muchos usuarios tienden a ejecutar solo una prueba de velocidad una vez.
A menudo, en este caso, el contenido aún no está almacenado en caché en el host o CDN, por lo que
parece que el sitio es en realidad es más lento.
¿Cómo puede saber que su contenido o medios no se están sirviendo desde la memoria caché?
Es fácil: Cada herramienta de prueba de velocidad muestra lo que se denominan encabezados
HTTP (también conocidos como encabezados de respuesta). Estos contienen información importante
sobre cada solicitud.
Para acelerar correctamente la prueba, necesita ver todo lo que se carga desde la caché, tanto
desde su host como desde su CDN. Esto generalmente requiere ejecutar su prueba de velocidad varias
veces.
¿Por qué esto es tan importante? Porque si nos fijamos en nuestra prueba de velocidad antes y
después, el sitio que se cargó completamente desde la caché suele ser más del 50% más rápido.

5. Las 10 principales métricas de rendimiento del sitio web


Hay 1.300 millones de sitios web en lo desconocido y es difícil no pensar en lo que los hace
diferentes entre sí. ¿Por qué los usuarios acuden en masa a un sitio web e ignoran el otro por completo?
Un diferenciador importante es, por supuesto, el contenido. Otra razón por la que los usuarios se adhieren
a un sitio web sobre otro es la experiencia del usuario. [5]
Mientras que los sitios web simples son mucho más fáciles de mantener y garantizar el máximo
rendimiento, las aplicaciones web más complejas presentan un desafío más difícil cuando se trata de
garantizar una experiencia de usuario fluida en todos los niveles.
a) Satisfacción del usuario y Apdex (User satisfaction and Apdex)
La satisfacción del usuario, o Apdex, es una medida del nivel de satisfacción de sus usuarios en
función del tiempo de respuesta de las solicitudes al interactuar con su sitio web o aplicación.
Hay una fórmula matemática simple que lo ayudará a calcular el índice de satisfacción de su
aplicación web y se ve así:

Donde se desea T o se define la latencia de la solicitud (según lo definido por usted)


El recuento satisfecho es el número de muestras (o solicitudes) que recibieron una respuesta en T
o menos
Recuento de tolerancia = número de muestras (o solicitudes) que son 4 veces T o menos
Total, de muestras = Número total de solicitudes utilizadas para calcular la puntuación de Apdex
"la aplicación se carga en 2,5 segundos". Esto no es ni aquí ni allá, ya que las pruebas realizadas en
entornos controlados no le mostrarán datos del mundo real. Las personas de todo el mundo tendrán
diferentes tiempos de carga y experimentarán la aplicación de una manera muy diferente.
Esta es la razón por la que el índice de satisfacción del usuario es una de las métricas más
importantes para el rendimiento del sitio web: se basa en los comentarios recibidos de sus usuarios y
proporcionará información sobre cómo están utilizando la aplicación.
b) FP / FCP: First Paint (FP) and First Contentful Paint (FCP)
First Paint (FP) y First Contentful Paint (FCP) son una métrica de rendimiento que se refiere a los
primeros píxeles que se representan después de que los usuarios acceden a su sitio web y cuánto tiempo
tarda el usuario en verlos. La diferencia entre los dos es que FP es el punto en que los navegadores dibujan
algo en la página, mientras que FCP es el punto donde los navegadores comienzan a mostrar piezas de
contenido como texto o imágenes.
Las partes más importantes del sitio web deben cargarse primero y rápido. Google describe estas
partes como Primera pintura significativa (FMP) o elementos de héroe y deben ser la prioridad. Aquí hay
algunos ejemplos:
(1) Cómo mejorar la FP y la FCP
La optimización del FP/FCP se realiza eliminando cualquier script de bloqueo de renderizado y CSS
del encabezado de su documento. A continuación, identifique el conjunto mínimo de estilos que necesita
para mostrar los primeros bits importantes de su sitio. El uso de la inserción del servidor HTTP / 2 en su
aplicación puede resultar en increíbles primeros tiempos de pintura y definitivamente vale la pena
intentarlo.
La inserción del servidor es básicamente la capacidad del servidor para enviarle varios archivos a
una sola solicitud de cliente. Piénselo así, cuando cargue su índice.html probablemente necesitará más
archivos para representar esa página, como hojas de estilo o archivos javascript. Lo que hace Server push
es que empaqueta esos archivos necesarios en una sola respuesta, por lo que para cuando se analice el
DOM, sus hojas de estilo y javascript ya se habrán cargado.
Aquí hay un ejemplo para Go versión 1.8 y superior donde el servidor sabe que se necesita .js
aplicación para que se represente la página. Por lo tanto, está configurado para cargarlo antes de que se
haya realizado una solicitud tradicional del archivo en el lado del cliente.
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
if pusher, ok := w.(http.Pusher); ok {
// Push is supported.
if err := pusher.Push("/app.js", nil); err != nil {
log.Printf("Failed to push: %v", err)
}
}
// ...
})
c) Tiempo para interactuar (Time to interactive)
Lo siguiente que debe buscar es el Tiempo de interacción (TTI) que mide el tiempo hasta que se
renderiza la aplicación y puede responder a la entrada del usuario.
Aquí hay un método rápido para calcular su ITT:
• Comience en First Contentful Paint (FCP).
• Busque hacia adelante en el tiempo una ventana silenciosa de al menos cinco segundos,
donde la ventana silenciosa se define como: sin tareas largas y no más de dos solicitudes
GET de red en vuelo.
• Busque hacia atrás la última tarea larga antes de la ventana silenciosa, deteniéndose en
FCP si no se encuentran tareas largas.
• TTI es la hora de finalización de la última tarea larga antes de la ventana silenciosa (o el
mismo valor que FCP si no se encuentran tareas largas).

(1) Cómo mejorar su puntaje TTI


La optimización de TTI puede ser tan simple como cargar solo scripts que proporcionen
interactividad solo a los elementos que ya se han cargado. Si bien esto suena simple en teoría, tener
aplicaciones que tienen contenido cargado, pero no interactivo es bastante común.
Sin embargo, hay ciertas cosas que puede hacer para reducir su ITT.
• Minimizar y comprimir el código. Es bastante fácil de hacer, realmente no hay costo
involucrado.
• Uso de Preload. Cuando usamos la precarga en la etiqueta de enlace, hace una solicitud
de búsqueda temprana para obtener el recurso. Se utiliza principalmente para obtener
recursos de alta prioridad que se utilizan en la ruta actual.
• Minimizar el trabajo del hilo principal. El hilo principal es lo que convierte el código en una
página web visual e interactiva. Crea el DOM, analiza el CSS y html, y ejecuta javascript.
Para reducir la carga en el subproceso principal, puede eliminar el código no utilizado,
minimizar el código y usar la división de código para asegurarse de que solo está
ejecutando el código que realmente necesita.
d) Velocidad de la página y tiempo de carga (Page speed and load time)
La velocidad de la página mide el tiempo que se tarda en descargar y mostrar todo el contenido de
una página web. Con el tiempo, el umbral de velocidad de la página ha cambiado y difiere según el tipo
de sitio o aplicación web que estemos viendo. Para un sitio web de comercio electrónico, el tiempo de
carga aceptado es de entre 2 y 3 segundos.
Con las velocidades modernas de Internet y las máquinas potentes, el tiempo de carga de 2
segundos es bastante fácil de lograr. El desafío está en hacerlo a través de redes móviles, especialmente
3G. Aquí es donde el rendimiento real de la aplicación web entra en juego más. No puede usar los mismos
recursos en todos los dispositivos y esperar el mismo resultado. El mismo sitio web que se carga en 2
segundos en su escritorio va a tardar hasta 6 veces más en los móviles que en 3G.
Con las herramientas adecuadas, puede verificar la velocidad de carga de la página en cualquier
momento en el escritorio, así como en el móvil. Si está buscando uno, consulte nuestra revisión de las
mejores herramientas de prueba de rendimiento y velocidad del sitio web.
e) Tiempo hasta el primer byte (Time to first byte)
Además, la velocidad a la que los primeros bits de información llegan a sus usuarios no es
consistente en todas las ubicaciones del mundo. Sus usuarios del Reino Unido tendrán una experiencia
diferente a la de las personas en los Estados Unidos.
Para medir esto utilizamos una métrica llamada Time to First Byte (TTFB) que es el tiempo que el
primer byte de cada archivo llega al navegador del usuario después de que se haya establecido una
conexión de servidor.
(1) Cómo mejorar TTFB
No tener un buen TTFB va a afectar tanto a tu experiencia de usuario como a tus esfuerzos de SEO,
por lo que lo primero que te vendrá a la mente es, ok, cómo mejoro estos números y la respuesta es que
puedes mejorar tu tiempo hasta el primer byte, pero no va a ser una tarea fácil. Sin embargo, aquí hay
algunas cosas que puede hacer para que ese primer byte se cargue más rápido.
• Optimiza tu código. Parece algo obvio de decir, pero uno que se revisa a menudo. Cosas
como los equilibradores de carga, las cachés estáticas y el contenido dinámico son algunas
de las mejores maneras de obtener una aplicación de mejor rendimiento, pero sin tener
una solución de monitoreo adecuada, ninguna de estas será útil, ya que no podrá ver
ningún cuello de botella en su sistema.
• Utilice un servidor que se adapte a sus necesidades. Tener un alto uso de CPU y RAM todo
el tiempo inevitablemente degradará su TTFB. Sematext puede proporcionar el uso de
CPU y RAM en tiempo real y le ayudará a optimizar sus recursos.
• Utilice una red de entrega de contenido. Una buena CDN le ayudará a entregar contenido
estático como imágenes y scripts más rápido a los usuarios a través de una red de
servidores en todo el mundo. Esto reducirá la estabilidad de la diferencia de velocidad
entre los usuarios que viven en diferentes partes del mundo.
• Reducir las consultas. Primero tendrá que verificar cuántas solicitudes HTTP realiza su sitio
web y eliminar las que no son críticas. Reducir la cantidad de imágenes que carga y
combinar sus archivos CSS, así como hacer sus llamadas JS asincrónicas, le dará una mejor
velocidad de TTFB en todas partes.
f) Tiempo de búsqueda de DNS (DNS Lookup time)
El tiempo de búsqueda de DNS es el tiempo que tarda una búsqueda de dominio mientras el
navegador carga el recurso. Las búsquedas DNS pueden agregar una cantidad significativa de tiempo de
carga a sus navegadores, especialmente si su aplicación carga una gran cantidad de scripts de terceros.
Hay una gran cantidad de proveedores de DNS diferentes y es básicamente una cuestión de
encontrar el adecuado para sus necesidades. Para ayudar a pintar una imagen más clara de los diferentes
proveedores de DNS, puede usar esta herramienta para verificar los de mayor rendimiento.

Para optimizar su velocidad de búsqueda de DNS, todo lo que necesita hacer es averiguar qué
servicio proporcionará el mayor rendimiento por su dinero. Si está buscando un servidor de nombres de
alto volumen, programable y autorizado que utilice la infraestructura de Google, pruebe el DNS en la nube
de Google. Por supuesto, Google es solo una opción entre otros servicios.
g) Tasa de error (Error Rate)
La tasa de error es una métrica de rendimiento que realiza un seguimiento del porcentaje de
problemas de solicitud que tiene en relación con el número total de solicitudes. Es importante vigilar este
número, ya que cualquier pico significará que está viendo una falla importante en algún momento pronto
en el futuro.
Los errores pueden ser el resultado de innumerables cosas diferentes y no hay una buena manera
de prevenirlos. Lo mejor que puede hacer es asegurarse de ponerse frente a ellos monitoreando de cerca
su sitio web o aplicación utilizando una herramienta de monitoreo de usuario real.
h) Tiempo pico de respuesta (Peak Response Time)
El tiempo de respuesta pico (PRT) mide el tiempo de respuesta más largo para todas las solicitudes
que llegan a través del servidor. Le dará una idea de dónde su aplicación web tiene un rendimiento inferior
o tiene dificultades para cumplir con las solicitudes y también lo ayudará a identificar al culpable más
fácilmente.
Al trabajar con API de terceros, es importante supervisar cómo funcionan las API bajo carga y cuál
es su tiempo de respuesta para los usuarios que están más lejos de usted. Podría estar usando la CDN más
rápida y tener una aplicación que se escale con gracia, pero si está utilizando una API para analizar las
imágenes de perfil cargadas para los usuarios que inician sesión que se crea solo para servir a las personas
en los EE. UU., De una manera eficiente, todos sus usuarios de Europa o Asia tendrán una experiencia
bastante mala.
i) Utilización del hardware (Hardware utilization)
Puede tener la impresión de que la utilización del hardware no cae bajo su responsabilidad y la
empresa de alojamiento o el proveedor de servicios tiene que controlar sus máquinas, pero en realidad,
esto afectará directamente el rendimiento de su sitio web, por lo que controlar el hardware será una
prioridad.
Tiene tres componentes principales en los que centrarse:
• La CPU
• Utilización de RAM
• Espacio en disco
Cualquiera de estos componentes puede crear cuellos de botella de rendimiento que pueden
provocar fallos catastróficos como apagar todo el servidor.
j) Tiempo de actividad (Uptime)
Esta no es una métrica de rendimiento per se, pero, sin embargo, es un aspecto crucial de su sitio
web o aplicación. ¿Recuerdas ese pequeño número que viste en la página de precios de tu empresa de
hosting y fue de alrededor del 99%? Ese decimal es extremadamente importante y realmente necesitas
prestarle atención. Permítanme poner las cosas en perspectiva:
99%: significa alrededor de 7 horas de tiempo de inactividad
99.9%: significa alrededor de 45 minutos de tiempo de inactividad
99.999%: significa alrededor de 30 segundos de tiempo de inactividad
k) Cómo medir las métricas de rendimiento del sitio web con las herramientas
El rendimiento de la aplicación web o del sitio web no es algo que hagas una vez y luego te olvides,
sino más bien una tarea continua que sin las herramientas adecuadas será casi imposible de lograr. Una
forma de analizar las métricas de rendimiento del sitio web es mediante el uso de herramientas reales de
monitoreo de usuarios.
6. herramientas de prueba de velocidad del sitio web
Ahora es el momento de sumergirse en todas las diferentes herramientas de prueba de velocidad
del sitio web que puede usar. ¿Cuál es el tiempo de carga óptimo al que debería aspirar? Bueno, cuanto
más rápido mejor, pero la mayoría de los expertos sugieren que alrededor de dos segundos o menos es
un buen objetivo. Recuerda también que hay una diferencia entre rendimiento percibido y el rendimiento
real.
Una de las reglas más importantes cuando se trata de pruebas de velocidad de sitios web es elegir
una herramienta y seguir con ella. Cada uno tiene su propio conjunto de métricas diferentes y, por lo
tanto, no puede comparar directamente los resultados de las pruebas de una herramienta con otra. No
hay una herramienta correcta o incorrecta; simplemente debe centrarse en el que prefiera para ayudarlo
a realizar mejoras.
a) APACHE JMETER

JMeter es una herramienta que facilita la gestión integral de los procesos de


pruebas de rendimiento, no obstante no es la única puesto que tenemos otras como:
Micro Focus LoadRunner, IBM RPT, SilkPerformer, WebLoad, NeoLoad, OpenSTA, otras
La prueba de rendimiento es del tipo de prueba no funcional.
Las pruebas de carga, las pruebas de estrés, las pruebas de picos, las pruebas de
resistencia y las pruebas de volumen son subconjuntos de las pruebas de rendimiento.
(1) ¿Qué es el Apache JMeter?

‘Apache JMeter’ es una aplicación de código abierto, 100% basada en Java con una
interfaz gráfica de usuario. Está diseñada para analizar, medir el rendimiento y cargar el
comportamiento funcional de la aplicación web y la variedad de servicios.
(2) ¿Para qué sirve JMeter?

JMeter se utiliza principalmente para:


• probar aplicaciones web
• aplicaciones FTP
• pruebas funcionales
• conexiones de bases de datos JDBC
• servicios web
• conexiones TCP genéricas
• procesos nativos del sistema operativo
b) Google PageSpeed Insights
Google ha dicho desde 2010 que velocidad de la página es un factor de clasificación importante
para el SEO. Para ayudarlo a mejorar la velocidad de su sitio, Google tiene su propia herramienta de
prueba de velocidad, Estadísticas de Google PageSpeed, que mide el rendimiento de una página para
dispositivos móviles y dispositivos de escritorio.
Las puntuaciones de PageSpeed varían de 0 a 100 puntos, y se basan en Faro. Una puntuación más
alta es mejor; una puntuación de 85 o superior indica que la página está funcionando bien. La página del
informe le ofrece un desglose útil de los pasos que puede seguir para mejorar el rendimiento. PageSpeed
Insights también le proporciona sugerencias adicionales de experiencia de usuario para dispositivos
móviles.
c) Google Mobile Website Speed Testing Tool
Según Google, las personas tienen cinco veces más probabilidades de abandonar un sitio si no es
compatible con dispositivos móviles. Es por eso por lo que lanzaron su herramienta de prueba de
velocidad de sitios web móviles. Esta herramienta en realidad está impulsada por Google PageSpeed
Insights, y está dirigida más a los especialistas en marketing y las agencias para ofrecer mejor informes de
optimización fáciles de entender.
Puede recibir informes enviados directamente a su correo electrónico o reenviar la información a
su webmaster o desarrollador. Sin embargo, recuerde que una puntuación de 100/100 podría ni siquiera
ser posible en todos los escenarios, dependiendo de cómo esté configurado su sitio web. Con una gran
cantidad de temas multipropósito y sitios con docenas de scripts externos, le resultará casi imposible
lograr una puntuación perfecta, lo que, tenga en cuenta, está perfectamente bien y no es en absoluto
culpa del desarrollador.
d) Google Analytics
Google Analytics también tiene la capacidad de medir la velocidad del sitio. Esto existe en el panel
de GA en el menú Comportamiento. Captura información a través de un fragmento de código que incluiría
en sus páginas web.
Sus informes de velocidad del sitio miden tres aspectos de la latencia:
Tiempo de carga de página para una muestra de páginas vistas en su sitio
Velocidad de ejecución o tiempo de carga de cualquier golpe discreto, evento o interacción del
usuario que desee rastrear
La rapidez con la que el navegador analiza el documento y lo pone a disposición para la interacción
del usuario
e) GTmetrix
GTmetrix es otra herramienta popular de análisis de velocidad y posiblemente la más conocida de
todas. Es fácil de usar, por lo que los principiantes pueden recogerlo bastante rápido. La herramienta
proporciona un análisis exhaustivo al combinar el rendimiento y las recomendaciones proporcionadas por
Google PageSpeed Insights y YSlow. Esto significa que GTmetrix es efectivamente una ventanilla única
para todas sus necesidades de optimización de velocidad.
f) KeyCDN Website Speed Test
KeyCDN es una herramienta de prueba de velocidad del sitio web proporciona una forma
increíblemente rápida y fácil de determinar la velocidad general de su sitio web. La prueba de velocidad
de página simple incluye un desglose en cascada y una vista previa del sitio web. Puede seleccionar entre
14 ubicaciones de prueba diferentes ubicadas estratégicamente en todo el mundo para determinar mejor
el tiempo total de descarga de sus activos desde esa región física.
g) DareBoost
DareBoost es un servicio todo en uno para pruebas de velocidad de sitios web, supervisión del
rendimiento weby análisis de sitios web (velocidad, SEO, calidad y seguridad). Y aunque son
principalmente un servicio premium, puede usar su herramienta de prueba de velocidad del sitio web
para cinco informes gratuitos por mes, aunque le faltarán algunas funciones avanzadas que son solo para
clientes pagos. ¡Los informes gratuitos son realmente impresionantes!
h) Chrome DevTools
El Panel de red de Chrome DevTools viene como parte de Chrome y otros navegadores basados en
Chromium. Esta es una herramienta muy popular entre los desarrolladores, ya que es de fácil acceso y
una gran opción para la depuración y pruebas locales. Puede iniciar fácilmente el panel de red en Chrome
presionando (Mac) o (Windows y Linux). A continuación, puede generar un análisis en cascada de su sitio
y profundizar en el rendimiento de cada uno de sus activos.
El equipo de Google también integró Lighthouse en Chrome DevTools. Lighthouse es una
herramienta automatizada de código abierto para mejorar la calidad de las páginas web. Ofrece auditorías
de rendimiento, accesibilidad, aplicaciones web progresivas y más. Puede ejecutarlo desde la pestaña
"Auditoría". Tiene un sistema de clasificación similar de 0/100. Puede sumergirse en sus solicitudes, ver
qué scripts podrían ser de bloqueo de renderizado, encuentre sus ahorros de compresión de imágenes,
etc.
IV. CASOS DE ESTUDIO DONDE SE REALIZARON LAS PRUEBAS
DE SEGURIDAD Y PRUEBAS DE RENDIMIENTO
A. Litmus

1. Cómo Intruder ayuda a Litmus a automatizar la seguridad de su red


Las empresas SaaS operan completamente en el ámbito digital. Tener una seguridad cibernética
sólida es extremadamente importante para estas empresas, ya que ayuda no solo a proteger sus datos,
sino también a generar confianza en los clientes y las partes interesadas. [6]
Este estudio de caso examina cómo Litmus, una empresa de marketing por correo electrónico SaaS,
ha podido utilizar Intruder para proteger continuamente los datos de sus clientes y automatizar los
procesos de seguridad manuales. También veremos cómo el uso de Intruder ayuda a Litmus a cerrar más
tratos y ganarse la confianza del cliente.
a) Desafíos
• Garantizar que los datos de los clientes permanezcan seguros
• Automatización de las pruebas de seguridad de la red para conseguir una ciberprotección
continua
• Satisfacer las crecientes demandas de los clientes de escaneos regulares de la red
b) Solución
• Intruder's Pro Plan, que ofrece controles de seguridad líderes en la industria para la
infraestructura de TI moderna
• Resultados
• El uso del escáner de vulnerabilidades automatizado de Intruder ayuda a Litmus a
permanecer constantemente protegido contra amenazas recién descubiertas mientras
ahorra tiempo y dinero a su equipo.
• Litmus está cerrando más acuerdos porque pueden demostrarles a sus clientes que han
implementado sólidas medidas de seguridad cibernética para mantener sus datos
seguros.
• Las integraciones de Slack y Jira ayudan a Litmus a optimizar sus procesos de seguridad
Litmus es una plataforma de diseño, prueba y análisis de correo electrónico. La empresa opera en
todo el mundo y tiene más de 200 empleados con oficinas ubicadas en los EE. UU. y el Reino Unido. Litmus
quiere asegurarse de que su plataforma esté protegida al máximo contra las infracciones de seguridad, ya
que quieren que sus clientes les confíen sus datos. Para lograr esto, la empresa utiliza un enfoque de tres
niveles para su seguridad cibernética: seguridad de aplicaciones, redes e infraestructura.
Para fortalecer aún más sus prácticas de seguridad cibernética, Litmus estaba mirando más allá de
las pruebas de penetración estándar; querían una solución que pudiera ayudarlos a automatizar sus
pruebas regulares de seguridad de la red y notificarles sobre las vulnerabilidades descubiertas. Al hacerlo,
su equipo técnico podría estar al tanto de las amenazas recién descubiertas e implementar correcciones
de seguridad sin demora.
Después de probar Intruder, la empresa vio rápidamente que su escáner de vulnerabilidades
robusto y fácil de usar les permite lograr justo lo que querían e incluso más. El equipo ahora puede
ejecutar escaneos de seguridad completamente automatizados en su red, que cubren las tres áreas
principales: seguridad de aplicaciones, redes e infraestructura. Además, la empresa se beneficia del uso
de la característica única de análisis de amenazas emergentes de Intruder que les ayuda a ahorrar tiempo
y evitar tener que monitorear manualmente las noticias en busca de posibles amenazas de seguridad.
También reciben notificaciones periódicas sobre las vulnerabilidades descubiertas en Slack y las presionan
para que las corrijan en Jira, lo que ayuda a optimizar sus procesos de seguridad.
“Realmente nos encantan los análisis programados con regularidad, así como los análisis de
amenazas emergentes. Es genial saber que está protegido contra las vulnerabilidades más recientes.
También usamos Slack para las alertas y Jira para la gestión de vulnerabilidades. De esa manera podemos
cumplir con nuestros controles para la gestión de parches”.
Justin Unton, Jefe de Seguridad de la Información
Intruder le brinda tranquilidad a Litmus al monitorear continuamente su red y asegurarse de que
permanezca protegida contra las amenazas descubiertas diariamente. Aún más, con las crecientes
demandas de sus clientes, Litmus puede usar el escáner de vulnerabilidades de nivel empresarial de
Intruder para mantener la confianza de sus clientes y ganar más acuerdos:
“Intruder no solo me ahorra tiempo y dinero, sino que también nos ayuda a cerrar tratos. Algunos
clientes ahora requieren escaneos regulares de la red para hacer negocios con empresas de SaaS. Al
utilizar Intruder, podemos satisfacer la demanda de los clientes y asegurarnos de que estamos haciendo
lo correcto para mantener la confianza de nuestros clientes”.
Justin Unton, jefe de Seguridad de la Información
Cuando se le preguntó cuál es la principal razón para recomendar Intruder a otros, Justin
respondió:
“Es una forma robusta, simple e intuitiva de identificar debilidades y mantener la confianza del
cliente”
Con un escáner de vulnerabilidad automatizado implementado, que les brinda una mayor
visibilidad de la seguridad de su red al mismo tiempo que monitorea y protege contra amenazas
emergentes, Litmus mantiene seguros los datos de sus clientes.

B. InsightVm

1. El distrito escolar de Blue Valley se asocia con Rapid7 para potenciar su nuevo
equipo de seguridad
• Producto: InsightVM , InsightIDR , InsightConnect
• Industria: Educación
• Tamaño: Empresa (Grande)
El Distrito Escolar Unificado Blue Valley en Kansas abarca a más de 23,000 estudiantes y 3,100
miembros del personal y maestros repartidos en cinco escuelas secundarias, nueve escuelas intermedias
y 21 escuelas primarias. El distrito tiene un compromiso de larga data para garantizar el uso de la
tecnología como parte integral del plan de estudios y la instrucción del distrito. Blue Valley Schools es un
distrito habilitado 1:1, lo que significa que, a partir del jardín de infantes, hay un dispositivo disponible
para cada estudiante y, a partir del sexto grado, esos dispositivos van y vienen entre la escuela y el hogar,
un entorno lo suficientemente desafiante como para brindar seguridad. pausa seria profesional.
De igual importancia, las Escuelas de Blue Valley se comprometen a proporcionar entornos de
aprendizaje seguros para los estudiantes. Todos los dispositivos del distrito y las actividades que los
estudiantes realizan en línea están protegidos a través de un sistema de filtrado basado en la nube las 24
horas del día, los 7 días de la semana. Esto significa que los estudiantes pueden aprender en cualquier
momento, en cualquier lugar y siempre experimentar el mismo nivel de seguridad digital cuando usan
dispositivos del distrito, ya sea que estén en el salón de clases, en el autobús o en casa.
a) Los desafios
En agosto de 2019, Blue Valley fue el objetivo de un exitoso ataque de ransomware y,
afortunadamente, después de mitigar el ataque, emprendió de inmediato una evaluación de seguridad
de arriba a abajo de su vasta infraestructura de red y aplicaciones. El ingeniero de ciberseguridad Evan
Nichols fue el primer ingeniero de ciberseguridad de Blue Valley y es el experto residente del
departamento. En este artículo, Evan destaca los principales desafíos de seguridad que enfrenta el distrito
escolar.
(1) Secuestro de datos
Los ataques de ransomware siempre estarán en la parte superior de la lista de amenazas del equipo
de seguridad, señala Nichols. “Nuestras mayores amenazas en curso son los puntos de entrada para el
phishing. La percepción es que los distritos escolares públicos tienen presupuestos reducidos y carecen
de mano de obra y los ciberdelincuentes confían en eso. Nuestro distrito fue atacado en 2019 porque
somos uno de los distritos más grandes del estado y fue solo unos días antes del comienzo de la escuela”.
(2) Visibilidad

“Todo se reduce a poder obtener una vista de 1,000 pies de las cosas con solo un pequeño equipo
de personas para observar lo que estamos introduciendo”, explica Nichols. “El mayor desafío es evitar
cosas como la fatiga por alertas y asegurarnos de que enviamos los datos pertinentes a la administración
del distrito de inmediato”.
(3) dotación de personal
Nichols también reconoce que muchos distritos escolares no pueden hacer el nivel de inversión en
personal y software que se necesita para hacer frente a las demandas del entorno de ciberseguridad
actual. “Muchos entornos públicos K-12 no tienen la mano de obra para hacer lo que se requiere para
ejecutar una pila de seguridad completa. O pueden depender de herramientas de código abierto que
requieren mucha atención; pero eso también requiere horas de personal y experiencia que muchos
distritos escolares no tienen”.
b) Las soluciones
El primer paso de Nichols fue implementar Rapid7 Insight Platform, que incluye InsightIDR para
detección y respuesta, InsightVM para gestión de vulnerabilidades e InsightConnect para automatización.
“Elegí Rapid7 Insight Platform porque tenía el tamaño y la forma adecuados para nosotros”, afirma
Nichols. “Estamos lidiando con cantidades masivas de datos, pero no tenemos muchos cuerpos calientes.
Y no tenemos mucha gente capacitada como analistas o ingenieros de SOC. Necesitamos que la
plataforma Rapid7 haga gran parte del trabajo pesado por nosotros”.
“Comenzamos con la detección, porque no sabes qué más vas a necesitar hasta que evalúas. Y
pudimos ponernos en marcha con Rapid7 InsightIDR en menos de una semana. Fue realmente fácil y
rápido de implementar en nuestro entorno”. Blue Valley también usa InsightVM para escanear los activos
del centro de datos como parte de su objetivo de cambiar a un modelo de confianza cero. "InsightVM nos
dio la capacidad de movernos allí con confianza".
En la actualidad, Blue Valley Schools cuenta con tres profesionales que se capacitan continuamente
en todo lo relacionado con la ciberseguridad, un equipo de seguridad reducido, pero altamente efectivo.
Rapid7 Insight Platform les brinda el panorama general y la visibilidad profunda que necesitan para
supervisar y proteger su entorno desafiante. “Insight Platform es bueno para sacar a la superficie los datos
que queremos ver”, dice Nichols. “No tengo que buscar muy lejos para ver qué está pasando. Esto se debe
a que las búsquedas en InsightDR son muy fáciles de navegar y se adaptan a nuestro entorno. Además, es
fácil guardar y volver a llamar a las consultas”.
“Estamos monitoreando un poco de todo. Las fuentes fundamentales de InsightIDR son una sola
cosa, y eso alimenta los modelos de análisis de detección del comportamiento del usuario que
proporciona InsightIDR. Además de eso, tenemos toneladas de análisis personalizados y fuentes de
eventos de registro que podemos hacer mucho más rápido de lo que podríamos hacerlo con otros
productos. Rapid7 ya realizó gran parte del trabajo inicial porque Rapid7 se preocupa por las mismas
fuentes de seguridad y eventos de TI que nosotros”.
"Rapid7 vino preparado con la respuesta a nuestro problema de mano de obra a través de
InsightConnect", continúa Nichols. "Realmente ayuda con nuestro problema de escasez de mano de obra
porque puede enviar todas sus alertas a un sistema de flujo de trabajo central. Antes era muy difícil para
nosotros para actuar y responder a escala. lnsightConnect nos ha permitido hacer una gran parte de
nuestra respuesta a incidentes de forma automatizada. Y por nosotros, realmente me refiero a mí. Porque
al principio yo era el único que manejaba la respuesta a incidentes".
c) Los beneficios
“Cuando miramos otras soluciones de seguridad en la nube con amplitud y profundidad
comparables, nos habríamos quedado fuera de nuestro presupuesto bastante rápido. Con la plataforma
Rapid7 obtenemos muchas capacidades por el dinero. Las otras plataformas habrían sido demasiado
complejas para que nuestro pequeño equipo las operara a diario. La única otra opción hubiera sido
hacerlo todo nosotros mismos con un software de código abierto. Lo que habría significado una gran
cantidad de almacenamiento y sistemas en las instalaciones, lo que equivale a muchos costos. Y luego hay
que considerar el capital humano para gestionarlo. Ese es un entorno completo que debe supervisar. Esas
son las cosas que nos guiaron en la dirección de InsightIDR y la Plataforma Insight más amplia”.

C. Ravelin
1. Cómo Intruder ayuda a Ravelin a cumplir con los requisitos de cumplimiento y
ganarse la confianza del cliente
a) Sobre la empresa
Ravelin proporciona tecnología sofisticada para ayudar a sus clientes a prevenir el fraude y aceptar
pagos con confianza. La empresa logra esto mediante la inspección de múltiples puntos de datos, incluidos
los datos de pago en tiempo real, importados a través de una API desde los sistemas de sus clientes. [7]
Ravelin se estableció en el Reino Unido en 2014 y desde entonces ha crecido hasta tener más de
cien empleados, ayudando a marcas como Deliveroo, Just Eat y Booking.com a gestionar el fraude de
pagos.
b) Objetivo de seguridad que Ravelin quería lograr
Como empresa que procesa datos de pagos, Ravelin se preocupa especialmente por brindar un
servicio confiable a sus clientes. Dado que la gestión de vulnerabilidades es uno de los componentes
esenciales para lograr una sólida postura de seguridad, Ravelin estaba decidido a encontrar una solución
creíble para realizar controles de seguridad periódicos en sus sistemas orientados a Internet.
Para adherirse a los más altos estándares de seguridad, también necesitaban un escáner de
seguridad que ayudaría a cumplir con los requisitos de cumplimiento de la norma ISO 27001 y brindaría
una cobertura continua entre sus escaneos PCI (industria de tarjetas de pago) regulares.
c) Gestión de vulnerabilidades eficaz y rápida
Antes de probar Intruder, el equipo de seguridad de Ravelin ya tenía experiencia trabajando con
otros escáneres de vulnerabilidades. Intruder se destacó rápidamente como una solución más eficiente y
que ahorra tiempo.
“A diferencia de otros escáneres de seguridad equivalentes, Intruder es fácil de usar y muy fácil de
configurar”.
William, ingeniero de seguridad en Ravelin
Intruder fue diseñado específicamente para priorizar fallas de alto impacto que aumentan la
superficie de ataque externa, lo que ayuda a Ravelin a discernir rápidamente las vulnerabilidades en sus
sistemas perimetrales, sin necesidad de una investigación exhaustiva.
“Utilizamos principalmente Intruder para los análisis externos programados de todos nuestros
dominios públicos. Estos análisis son excelentes para estar atentos a las vulnerabilidades emergentes y
detectarlas antes de que sea demasiado tarde”.
William, ingeniero de seguridad en Ravelin
Además de los análisis de rutina, Ravelin se beneficia de las comprobaciones automáticas de
vulnerabilidades que se realizan cuando se revelan nuevas amenazas. Este enfoque proactivo de la gestión
de vulnerabilidades permite que la empresa reaccione inmediatamente cuando se reciben alertas e
implemente rápidamente medidas preventivas.
d) Cumplir con los requisitos de seguridad del cliente y de terceros
Además de realizar escaneos PCI trimestrales a través de un proveedor de escaneo aprobado (ASV),
Ravelin usa Intruder para probar continuamente sus sistemas y remediar las debilidades descubiertas de
manera oportuna. Intruder utiliza un escáner de vulnerabilidades aprobado por PCI para todos sus
escaneos, lo que le da a Ravelin una comprensión clara de su postura de seguridad en cualquier momento.
Después de cada prueba, Ravelin recibe un informe detallado, que actúa como prueba de
seguridad para sus socios y clientes, además de ayudar a cumplir con los requisitos de cumplimiento de
la norma ISO 27001.
Cuando se trata de la gestión de activos, Ravelin observa continuamente su entorno de TI desde la
perspectiva de un hacker utilizando la vista de red de Intruder. Esta función permite a la empresa rastrear
qué puertos y servicios han cambiado y detectar rápidamente cualquier alteración no deseada en sus
sistemas.

Un ejemplo de la página de red de Intruder, que mapea la superficie de ataque externa.

Dado que Ravelin se dedica a ir más allá para proteger sus sistemas, están explorando otros
servicios en la cartera de Intruder, como el agente de escaneo interno.
V. CASOS DE ESTUDIO PROPUESTOS PARA REALIZAR LAS
PRUEBAS DE SEGURIDAD Y PRUEBAS DE RENDIMIENTO
A. Caso de Estudio Unitel
Unitel (abreviado de Universal de Televisión) o también Red Unitel es un canal de televisión abierta
boliviano de programación generalista. Fue lanzado oficialmente en septiembre de 1997 y es propiedad
de la Empresa de Comunicaciones de Oriente Ltda.
Unitel cuenta con su página web donde ofrece contenido similar al de Televisión, por medio de su
pagina web comparte videos gran parte de su programación del día, así también como streaming de
noticias.
En esta ocasión se realizará una serie de pruebas de rendimiento a su pagina web, y observaremos
su comportamiento a lo largo de probar rondas de 3000 solicitudes (Usuarios) por segundo durante un
tiempo de 10 segundos.
Con la herramienta de código abierto JMETER realizaremos pruebas de carga y el rendimiento que
ofrece la página web del Canal de televisión UNITEL.

1. requisitos previos
a) Instalación
• Java 8 ,
• JMeter 3.3 o superior.
b) Comprender las métricas de JMeter
Las métricas de JMeter se utilizan ampliamente en la siguiente sección, por lo que es mejor si se
siente cómodo con su definición:
• Tiempo transcurrido: Mide el tiempo transcurrido desde justo antes de enviar la solicitud
hasta justo después de recibir la última parte de la respuesta.
• Latencia: Mide la latencia desde justo antes de enviar la solicitud hasta justo después de
recibir la primera parte de la respuesta.
• Tiempo de conexión: mide el tiempo que tomó establecer la conexión, incluido el
protocolo de enlace SSL,
• Mediana: Número que divide las muestras en dos mitades iguales,
• Línea del 90 % (percentil 90): El tiempo transcurrido por debajo del cual cae el 90 % de las
muestras,
• Desviación estándar: Medida de la variabilidad de un conjunto de datos. Esta es una
medida estadística estándar.
• Nombre del subproceso: derivado del nombre del grupo de subprocesos y el subproceso
dentro del grupo. El nombre tiene el formato groupName + " " + groupIndex + “-” +
threadIndex donde:
o groupName : nombre del elemento Thread Group,
o groupIndex : número del grupo de subprocesos en el plan de prueba, a partir de
1,
o threadIndex : número del subproceso dentro del grupo de subprocesos,
comenzando desde 1.
• Rendimiento: calculado como solicitudes/unidad de tiempo. El tiempo se calcula desde el
inicio de la primera muestra hasta el final de la última muestra. La fórmula es:
Rendimiento = (número de solicitudes) / (tiempo total).
c) Tablero de informes HTML
El Tablero de informes HTML se puede generar al final de la prueba usando una línea de comando
separada. Este informe es bastante rico y muestra muchas métricas diferentes. Para obtener una lista
completa de todas las configuraciones personalizables, consulte Generación de panel en el sitio web de
JMeter.
Una vez que tenga un JTL que contenga todos los resultados, ejecute:
./bin/jmeter -g JTL_FILE -o OUTPUT_FOLDER
Donde:
-g JTL_FILE: ruta relativa o completa al archivo JTL. Ejemplo: jmeter.jtl,
-o OUTPUT_FOLDER: la carpeta en la que se debe escribir el informe HTML.
La ejecución de la línea de comandos puede demorar un tiempo según el tamaño del archivo JTL.
Una vez terminado, no se debe mostrar ningún error dentro de la terminal. El informe está listo en la
carpeta de salida dada.
Ventajas:
El informe HTML es fácil de generar,
Los gráficos y tablas están bien diseñados,
Puede seleccionar/deseleccionar solicitudes y/o transacciones en cada gráfico.
Contras:
Demasiadas configuraciones de personalización, ¿por dónde empezar?
El informe no se puede personalizar completamente agregando texto, imágenes y más. Es un
informe estático.
Desde JMeter 3.0, HTML Report Dashboard es un gran paso adelante que simplifica el análisis de
resultados de pruebas de JMeter.
El resumen del informe contiene la siguiente información:
Hora de inicio y hora de finalización de la prueba,
Puntuaciones APDEX para cada solicitud y contenedor,
Un gráfico circular denominado Resumen de solicitudes que proporciona la proporción de
muestras exitosas/fallidas.
La tabla de estadísticas proporciona estadísticas de prueba globales para cada solicitud que se ha
ejecutado:
Ejecuciones : Número de aciertos y errores,
# Muestras : Número total de muestras ejecutadas,
KO : número total de muestras que no se pudieron ejecutar,
Errores % : Porcentaje de errores,
Tiempos de respuesta (ms) : tiempos de respuesta en milisegundos,
Promedio : tiempo promedio transcurrido,
Min : Tiempo mínimo transcurrido,
Max : Tiempo máximo transcurrido,
90.º porcentaje : 90.º percentil,
95.º porcentaje : 95.º percentil,
99.º porcentaje : 99.º percentil,
Rendimiento : número de visitas por segundo,
Red : rendimiento en KB/s
Recibido : KB recibidos por segundo,
Enviado : KB enviados por segundo.
Las líneas se pueden ordenar por cualquiera de las estadísticas anteriores, lo que facilita la
búsqueda de solicitudes que causan cuellos de botella. Solicitudes de pedido al disminuir el Promedio ,
debería ver que la solicitud más lenta es la primera en la tabla de estadísticas.
La tabla de errores brinda más detalles sobre los errores encontrados durante la prueba de carga.
Para cada tipo de error, verá:
Número de errores : cuántos errores ocurrieron,
% en errores : porcentaje de solicitudes en error,
% en todas las muestras : Porcentaje de errores en comparación con el número total de muestras.
ay muchos otros gráficos disponibles:
Rendimiento :
Visitas por segundo (excluidos los recursos integrados) : número de visitas por segundo a lo largo
del tiempo,
Códigos por segundo (excluyendo recursos incrustados) : Códigos HTTP por segundo a lo largo del
tiempo (200 OK, 500 Error interno, etc.)
Transacciones por segundo : transacciones (relacionadas con Transaction Controller) por segundo
a lo largo del tiempo,
Tiempo de respuesta frente a solicitud: el tiempo de respuesta en comparación con las solicitudes
por segundo,
Latencia Vs Solicitud : Latencia comparada con solicitudes por segundo,
Tiempos de respuesta :
Percentiles de tiempo de respuesta : tiempo transcurrido por percentil en incrementos del 10 %.
Descripción general del tiempo de respuesta : brinda el porcentaje de solicitudes por rango de
Apdex (satisfactorio, tolerante y frustrante),
Tiempo frente a subprocesos : tiempo transcurrido por subprocesos activos, para ver cómo se
degrada el tiempo transcurrido cuando aumenta la carga,
Distribución del tiempo de respuesta : cómo se distribuye el tiempo transcurrido entre el tiempo
transcurrido mínimo y máximo.
El informe HTML es claramente un buen paso para ponerse al día con algunas herramientas
costosas como LoadRunner o NeoLoad. Claro, podría haber sido mucho más personalizable para
personalizar un informe que se ajuste a sus necesidades. De todos modos, es un gran paso adelante en la
mejora del análisis de los resultados de las pruebas de JMeter en comparación con los oyentes de interfaz
de usuario integrados.
Teniendo en cuenta que JMeter es una herramienta de prueba de carga de código abierto,
disponible de forma gratuita, estoy impresionado de ver cuántas herramientas hay para analizar los
resultados de las pruebas. ¡Y aún no hemos terminado!
VI. RESULTADOS
A. Caso de estudio Página Web de Unitel
1. Test and Report information
B. Caso de estudio – Virtual UAGRM
https://virtual.uagrm.edu.bo/pregrado/login/index.php
Esta es la plataforma de aulas virtuales de la UAGRM para estudiantes de pregrado.

Informe de seguridad
C. Caso de estudio – SoftBenz
Es un Software basado en servicios web para talleres automotrices.
Antes de solucionar el fix de seguridad
Despues de solucionar el fix de seguridad
VII. DISCUSIÓN Y CONCLUSIONES
A. Artículo de reflexión: Martinez Rodriguez Miguel Angel
1 mayo de 2022 – Reg.: 213045559
Las pruebas de vulnerabilidad de Mantener los datos que no son de
aplicaciones web tiene como objetivo identificar confianza separados de los comandos y las
las vulnerabilidades de seguridad resultantes de consultas.
prácticas de desarrollo inseguras en el diseño,
Desarrollar controles sólidos de
codificación y publicación de software o un sitio
autenticación y administración de sesiones.
web.
Mejorar el control de acceso.
Las pruebas de vulnerabilidad de
aplicaciones web generalmente incluirán: Descubrir las rutas más vulnerables a
través de la cual se puede realizar un ataque.
Probar la autenticación de usuario para
comprobar que las cuentas no pueden poner en Hallar cualquier vulnerabilidad que
peligro los datos; pueda conducir al robo de datos confidenciales.

Evaluar las aplicaciones web en busca de El nivel constante de rendimiento de un


fallas y vulnerabilidades, como XSS (cross-site software viene con muchos beneficios para un
scripting); negocio en línea. El rendimiento debe
considerarse como una característica crucial de
Confirmar la configuración segura de los
un producto de software, y sus pruebas deben
navegadores web e identificar las características
ser un proceso continuo, parte de la estrategia
que pueden causar vulnerabilidades; y
general.
Protección de la seguridad del servidor
La mayoría de los problemas de
web y la seguridad del servidor de bases de
rendimiento giran en torno a la velocidad.
datos.
Probar el rendimiento de un sitio web o
Las vulnerabilidades se presentan en un aplicación permite mejorarlo y el rendimiento
formato que permite a una organización evaluar general, lo que conduce a una mejor experiencia
su riesgo comercial relativo y el costo de la del usuario, tasas de rebote reducidas,
remediación. Estos se pueden resolver de conversiones más altas, mayor satisfacción del
acuerdo con el presupuesto y el apetito de usuario. Con diferentes tipos de pruebas de
riesgo del propietario de la aplicación, rendimiento, puede ser consciente de los
induciendo una respuesta proporcionada a los posibles problemas y puede planear cómo
riesgos cibernéticos. tratarlos de antemano.
Obtener información del mundo real La mejora de la satisfacción, la lealtad y la
sobre sus vulnerabilidades. retención del cliente generalmente compensan
con creces los costos de las pruebas.
B. Artículo de reflexión: Reyes Pereyra Franz Edwin

El masivo uso actual de las aplicaciones


web hace prioritario conocer que tan
vulnerables pueden ser estas aplicaciones. El
presente trabajo muestra cómo se puede
identificar y valorar los riesgos presentes en las
aplicaciones descritas gracias a diversidad de
herramientas que cumplen con dicho cometido.
Pero más importante aún es, cuáles pueden ser
los controles recomendados con el fin de
Univ.: Franz Edwin Reyes Pereyra mitigarlos.
Con el uso de tecnologías que apoyan los
procesos de negocio en las empresas, vienen
El manejo inadecuado de los recursos en inherentes riesgos que deben ser identificados,
las aplicaciones web se presenta en un mayor valorados y tratados antes que estos se
grado por la falta de capacitación de manifiesten, de no hacerlo se verán expuestos a
sensibilización de riesgos, a lo cual se deben daños y pérdidas considerables.
definir políticas de seguridad claras para cada
uno de los activos y usuarios que hacen uso de Los avances de las aplicaciones web en
ellos. Bolivia demuestran que su uso es muy
importante, en especial para que las empresas
Los controles de acceso impuestos a puedan posicionarse bien en la Web es
usuarios o aplicaciones contribuyen en gran indispensable si quiere que las personas
medida en la disminución de los riesgos a conozcan a su empresa antes que las de la
vulnerabilidades presentados ante los tres competencia. Si no está en internet no existe, Si
pilares de seguridad: confidencialidad, está primero ha dejado atrás a sus
disponibilidad e integridad, la incorporación de competidores.
estas medidas son eficientes siempre y cuando
exista un seguimiento en las tareas de los Gracias por su atención.
usuarios y el funcionamiento de las aplicaciones.
C. Artículo de reflexión: Rojas Alba Willian

1.conocias las pruebas de rendimiento?


Como futuros ingenieros en ciencias de la
computación, conocer el uso de las pruebas de
rendimiento son muy necesarios para hacer
cálculo de costos en estimaciones aplicaciones
por ejemplos tiendas y comercios electrónicos
2.que son las pruebas de carga 4.Como funciona las pruebas de estrés

Que comprendí Comprendí sobre las Ahora explicare sobre las pruebas de
pruebas de carga, las pruebas de carga es la ESTRES ,en esta prueba sometemos el producto
cantidad de usuarios que soporta su producto o la aplicación a condiciones extremos donde
durante un lapso de tiempo incrementando veremos qué es lo que pasa con el producto
usuarios cada cierto y observación el ,aquí nos interes saber bastante que tan
comportamiento del servidor, esto sirve para confiable es el producto y que tan robots es ,
saber cuánto debo gastar en un servidor según por que por ejemplo Podemos hacer una prueba
el consume de las peticiones realizadas por los donde ingresen 10, 000 mil usuarios en un
usuarios mismo instante sin intervalo de ingreso o se
realicen 10 mil peticiones al mismo tiempo a un
login , También veremos si el Sistema se
recupera de manera autónoma sin la
intervención de los encargados de la
infraestructura

3.que son las pruebas de capacidad


Hablemos de Pruebas de capacidad: es el
punto de quiebre o cantidad máxima de
usuarios que puede soportar la aplicación
(hablamos de escalabilidad), con esta prueba
informaremos a nuestro cliente la cantidad
máxima que puede soportar su producto
Conclusión las pruebas de carga,
capacidad y estrés se deben realizar antes de
lanzar el producto a producció
D. Artículo de reflexión: Velásquez Sánchez Brandon
2 de mayo de 2022
Hoy en día estamos acostumbrados a que avance de tecnología podemos ver las amenazas
el software falle. Al construir un software en el sistema y medir las vulnerabilidades
habitualmente se comenten errores. Gracias a potenciales, para que las amenazas puedan ser
la tecnología y auditoria podemos solucionar los detectadas y el sistema no deje de funcionar o
problemas derivados de dichos errores, que no pueda ser explotado. También ayuda a
serían la prueba en el software, que consiste en detectar todos los posibles riesgos de seguridad
varios pasos realizados ante y después de la en el sistema y ayuda a los desarrolladores a
construcción del software. solucionar los problemas mediante la
codificación.
También podemos decir históricamente,
por la mala ausencia o por la forma incorrecta de El alcance de las pruebas realizadas sobre
la realización de prueba en el software sea han las aplicaciones web no se deben limitar a la
producido varios desastres que han llegado a lógica del negocio y a los requerimientos
afecta económicamente hasta vida humana. funcionales, sino también deben tener en
cuenta los aspectos de seguridad que van de la
Las pruebas son parte fundamental de
mano con la calidad del software, pues en lo que
cualquier proyecto ya que nos ayudara a tener
respecta a seguridad de información, es
mejor resultado, todo ofreceremos mayor
importante verlo como un todo dentro de los
calidad en el producto y los clientes estarán más
procesos de la organización, y si se implementan
satisfecho.
las mejores prácticas de desarrollo y de pruebas
Las pruebas de rendimiento son de software es necesario crear también una
imprescindibles en todos los entornos de conciencia de los riesgos a la información y a la
desarrollo y producción para garantizar que su empresa, e interpretar los errores en el software
sitio web o aplicación esté al día y pueda como impacto a los objetivos estratégicos de la
soportar la carga de usuario esperada. Las organización
pruebas de seguridad podemos apreciar que el
E. Artículo de reflexión: Paco Surco Alex Junior

El propósito de este documento es poder graficas explicitas para el análisis de los


entender un poco más sobre las herramientas y resultados.
procesos de pruebas de seguridad y rendimiento
En las pruebas de seguridad podremos
en el desarrollo de software. Con el objetivo de
analizar los diferentes tipos de fix de seguridad
que el lector pueda tener un mayor criterio con
más conocidos y haremos el uso de las
respecto a las herramientas de software libre y
herramientas de análisis de seguridad como
de pago. Con el uso de estas herramientas
OWAS ZAP. La herramienta OWAS ZAP nos
podremos realizar las pruebas para dar fe de la
ayudara con el análisis de seguridad atacando a
calidad del software.
las páginas web o servicios web conocidos,
En las pruebas de rendimientos elaborando un informe sobre las
podremos ver los tipos y los procesos que se vulnerabilidades, causas y posibles soluciones.
usan para medir el rendimiento con las
Ambos tipos de pruebas son
herramientas como Jmeter. La herramienta
fundamentales en el desarrollo de software, sin
Jmeter nos proporcionara un informe completo
estas pruebas no se podría salir a producción ya
sobre la medición de tiempo de respuesta y
que se debe de garantizar el rendimiento y la
seguridad del software.
VIII. BIBLIOGRAFÍA

[1 Dongee, «Dongee,» 10 Noviembre 2018. [En línea]. Available:


] https://blog.dongee.com/las-7-vulnerabilidades-m%C3%A1s-comunes-de-sitios-web-que-no-
puedes-pasar-por-alto-59f29c1c3aea. [Último acceso: 25 Abril 2022].

[2 intruder.io, «intruder.io,» [En línea]. Available:


] https://www.intruder.io/?utm_source=referral&utm_campaign=guru99_what_is_security_te
sting. [Último acceso: 24 Abril 2022].

[3 M. Williams, «keycdn.com,» 15 Agosto 2019. [En línea]. Available:


] https://www.keycdn.com/blog/performance-testing. [Último acceso: 20 Abril 2022].

[4 B. Jackson, «Kinsta.com,» 5 Abril 2022. [En línea]. Available:


] https://kinsta.com/blog/website-speed-test/?kaid=LUAHHLEJMLMT. [Último acceso: 20 Abril
20].

[5 J. Demian, «sematext.com,» 23 Marzo 2020. [En línea]. Available:


] https://sematext.com/blog/website-performance-metrics/. [Último acceso: 25 Abril 2022].

[6 intruder.io, «intruder.io,» [En línea]. Available: https://www.intruder.io/success-


] stories/how-intruder-helps-litmus-automate-their-network-security. [Último acceso: 24 Abril
2022].

[7 intruder.io, «intruder.io,» [En línea]. Available: https://www.intruder.io/success-


] stories/how-intruder-helps-ravelin-meet-compliance-requirements-and-gain-customer-trust.
[Último acceso: 24 Abril 2022].
PRUEBA EN APLICACIONES
WEB

PRUEBAS DE RENDIMIENTO Y
SEGURIDAD

GRUPO #4
Integrantes

• Martínez Rodriguez Angel


• Paco Surco Alex Junior
• Rojas Alba Willian
• Reyes Pereyra Franz Edwin
• Velásquez Sánchez Brandon
Introducción
¿Cuál es su objetivo?
1. Presentar información sobre la calidad del producto.
¿Por qué son necesarias las
pruebas ?
Asegura que el software funcione como se espera que funcione en todo momento.

Ventajas de las pruebas


• Mejora el rendimiento y tiempo de respuesta de los
proceso
• Ayuda a mejorar la calidad del producto
• Adelantarse a posibles delitos aplicable a su
aplicaciones web
• Permite obtener información de valor
TIPOS DE PRUEBA EN EL SOFTWARE
PRUEBAS DE SEGURIDAD
(SECURITY TESTING)
¿Por qué son importantes las pruebas de seguridad?
Tipos de pruebas de seguridad:
• Análisis de vulnerabilidades:
• Escaneo de seguridad:
• Prueba de penetración
• Evaluación de riesgos
• Auditoría de seguridad
• Apoyo ético:
• Evaluación de la postura
Roles de prueba de seguridad

Piratas informáticos: acceso no autorizado a un


sistema informático o red
Cookies: irrumpir en sistemas para robar o eliminar
datos.
Ethical Hacker: realiza la mayoría de las actividades
interrumpidas solo con el permiso del propietario
Ataques o vulnerabilidades
más conocidas

Ataque de inyección SQL

Ataque DDoS O Denegacion de servicio

• Vulnerabilidad de redirección de url


Herramienta de prueba
de seguridad
Pruebas de rendimiento

¿Que son las pruebas de Rendimiento?

Es un proceso de uso de herramientas de software para


simular circunstancias especificas
Pruebas de rendimiento
El enfoque es comprobar:
La velocidad
La escalabilidad
Estabilidad

¿Por qué realizar pruebas de rendimiento?

El objetivo de las pruebas de rendimiento no es encontrar


errores, sino eliminar los cuellos de botella de rendimiento.
Pruebas de rendimiento
Cumplir con las
Evaluar la Capacidad a mayor carga
Expectativas del
usuario Condiciones de carga máxima
Load testing
Determina si cumple o no con la Performance
velocidad , estabilidad y escalabilidad Stress testing
testing
validation

Recopilación de información del


equipo de una causa o solución
tipos Capacity testing
investigation Cantidad de usuarios que puede
manejar con éxito

Unit testing
Component testing
Resultados éxitosos Smoke testing
Prueba de las
Prueba en condiciones normales redes,db,servers,firewall
Pruebas de rendimiento
Implicaciones de las pruebas de
rendimiento

PRUEBA DE CARGA VELOCIDAD DE OPTIMIZACION DEL


PRUEBA DE
WEB CONEXION RENDIMIENTO
ESFUERZOS

Cantidad máxima de Es la comprobación del Hosting


Estirar el sitio mas allá de
trabajo software en diferentes Imágenes
sus limites
velocidades Usar cache
Pruebas de Rendimiento
COMO EJECUTAR UNA PRUEBA
DE VELOCIDAD DE SITIO WEB

Repetir varias veces la


Configuración del cache y
La velocidad será relativa al centro de prueba hasta que el
habilitar CDN
datos donde se aloja el sitio web resultado llegue a un
resultado lineal
Métricas Principales

Tiempo para
Satisfacción interactuar Velocidad de la
del usuario pagina y tiempo de
Uso de
herramientas carga

métricas Tiempo de
búsqueda de DNS

Utilización del
hardware
Tiempo pico de Tasa de Error
Respuesta
Pruebas de Rendimiento
HERRAMIENTAS

APACHE JMETER
Google PageSpeed Insights GTmetrix
CASOS DE ESTUDIO

LITMUS BLUE VALLEY SCHOOLS RAVELIN


CASOS DE ESTUDIO 1
CASOS DE ESTUDIO 1
CASOS DE ESTUDIO 1
CASOS DE ESTUDIO 1
CASOS DE ESTUDIO 1
CASOS DE ESTUDIO 1

También podría gustarte