Guía técnica de Pruebas y Evaluación de Seguridad de la Información
Recomendaciones del NIST Publicación 800-115 - Resumen referente a evaluaciones de un Test de Penetración.
El uso de las tic en la vida ,lo importante que son
Evaluación - Test de penetracion
1. Guía técnica de Pruebas y Evaluación de Seguridad de la
Información
Recomendaciones del Instituto Nacional de Estándares y
Tecnología
El propósito es proporcionar una guía para las organizaciones en la planificación y la realización
de las pruebas técnicas de seguridad de la información y las evaluaciones, análisis de los
resultados, y el desarrollo de estrategias de mitigación. Se ofrece recomendaciones prácticas para
el diseño, implementación y mantenimiento de la información técnica relativa a las pruebas de
seguridad y los procesos y procedimientos de evaluación, que puede ser usado para varios
propósitos, tales como la búsqueda de vulnerabilidades en un sistema o red y verificar el
cumplimiento de una política o de otro tipo.
Pruebas de Penetración
Las pruebas de penetración son las pruebas de seguridad en el que los evaluadores
imitan ataques del mundo real para identificar los métodos para burlar las medidas de
seguridad de una aplicación, sistema o red. A menudo consiste en lanzar ataques
reales en sistemas reales utilizando las herramientas y técnicas comúnmente
utilizados por los atacantes. La mayoría de las pruebas de penetración implica la
búsqueda de una combinación de vulnerabilidades en uno o más sistemas que pueden
utilizarse para obtener más acceso que a través de una sola vulnerabilidad.
Las pruebas de penetración también pueden ser útiles para determinar:
¿Qué tan bien tolera el sistema patrones de ataques de estilo real
El nivel de sofisticación necesario que un atacante necesita para comprometer
el sistema con éxito
Medidas adicionales que podrían mitigar las amenazas contra el sistema
Capacidad de los defensores para detectar los ataques y responder
apropiadamente.
Las pruebas de penetración pueden ser muy valiosas, pero requiere mucho trabajo y
gran experiencia para reducir al mínimo el riesgo para los sistemas que entraran en el
testeo. Los sistemas pueden ser dañados o de otras maneras inoperantes durante el
curso de las pruebas de penetración, a pesar de que la organización se beneficia de
saber cómo un sistema puede ser inutilizado por un intruso. Sin embargo la
penetración de evaluadores con experiencia puede mitigar este riesgo, nunca puede
ser totalmente eliminado.
Las pruebas de penetración deben realizarse solamente después de una cuidadosa
consideración, notificación, y la planificación.
Las pruebas de intrusión a menudo incluye métodos no técnicos de ataque. Por
ejemplo, una prueba de intrusión puede violar los controles físicos y procedimientos de
seguridad para conectarse a una red, robar equipos, captura de información sensible
(tal vez mediante la instalación de dispositivos de registro de teclas), o interrumpir las
comunicaciones.
Se debe tener precaución al realizar las pruebas de seguridad física, los guardias
deben ser conscientes de cómo verificar la validez de la actividad de la persona que
realiza el testeo, como por ejemplo a través de un punto de contacto o de la
documentación que el porte. Otros medios no técnicos de ataque es el uso de
ingeniería social, tales como pasar por un analista de mesa de ayuda y llamar para
2. solicitar contraseñas de un usuario, o llamando a la mesa de ayuda para hacerse
pasar por un usuario y solicitar que una contraseña sea restaurada.
Fases de Pruebas de Penetración
La Figura 1.5 representa las cuatro fases del test de penetración. En la fase de
planificación, las reglas son identificadas, aprobación de la dirección se considera
terminada y documentada, y los objetivos de la prueba se encuentran ya definidas. La
fase de planificación establece las bases para una prueba de penetración exitosa. No
hay pruebas reales que se produzcan en esta fase.
La fase de descubrimiento de pruebas de penetración consta de dos partes. La
primera parte es el comienzo de las pruebas reales, y cubre la recopilación de
información y análisis. Identificación de puertos de red y de servicios, se llevan
a cabo para identificar posibles objetivos. Además de la identificación de
puertos y servicios, se utilizan otras técnicas para recoger información sobre la
red objetivo como:
Nombre de host y la información de la dirección IP puede ser obtenida a
través de muchos métodos, incluido el interrogatorio de DNS, las consultas de
InterNIC (WHOIS), y la network sniffing (por lo general sólo durante las pruebas
internas)
Nombres de empleados e información de contacto se pueden obtener
mediante la búsqueda de los servidores Web de la organización o de
servidores de directorio
Información del sistema, tales como nombres y accesos compartidos se
pueden encontrar a través de métodos tales como la enumeración de NetBIOS
(por lo general sólo durante las pruebas internas) y el Sistema de Información
de Red (NIS) (por lo general sólo durante las pruebas internas)
Aplicaciones y servicios de información, como números de versión, se
pueden registrar a través banner grabbing.
La segunda parte de la fase de descubrimiento es el análisis de vulnerabilidad,
que consiste en comparar los servicios, aplicaciones y sistemas operativos
escaneados de los hosts contra las vulnerabilidades de las bases de datos (un
3. proceso que es automática para los escáneres de vulnerabilidad) y el
conocimiento de las vulnerabilidades de los probadores
La ejecución de un ataque está en el corazón de cualquier prueba de
penetración. La Figura 5.2 representa los distintos pasos de la fase de ataque,
el proceso de verificación de posibles vulnerabilidades previamente
identificadas para tratar de explotarlos. Si el ataque tiene éxito, la vulnerabilidad
se verifica y se identifican las acciones para mitigar los riesgos de seguridad
asociados.
En muchos casos, los exploits que se ejecutan no conceden el máximo nivel de
acceso a un atacante. Esto puede generar en que los evaluadores aprendan
más sobre la red objetivo y sus posibles vulnerabilidades, o inducir a un cambio
en la seguridad de la red objetivo. Algunas brechas de seguridad permiten a los
evaluadores elevar sus privilegios en el sistema o la red para que puedan
acceder a recursos adicionales. Si esto ocurre, el análisis y pruebas adicionales
son necesarias para determinar el verdadero nivel de riesgo de la red, tales
como la identificación de tipos de información que pueden ser obtenidas, si es
posible cambiarlas o eliminarlas del sistema. En el caso de un ataque contra
una vulnerabilidad específica resulte imposible, el evaluador debe aprovechar
otra vulnerabilidad descubierta para continuar con el test. Si los evaluadores
son capaces de explotar una vulnerabilidad, ellos podrán instalar más
herramientas en el sistema de destino o de la red para facilitar el proceso de
prueba. Estas herramientas se utilizan para acceder a los sistemas o recursos
adicionales en la red, y obtener acceso a la información sobre la red u
organización. Pruebas y análisis en varios sistemas deben ser llevadas a cabo
durante una prueba de penetración para determinar el nivel de acceso que un
atacante podría ganar. Este proceso se representa en el circuito de
retroalimentación en la Figura 5-1 entre el ataque y la fase de descubrimiento
de un test de penetración.º
Mientras que los escáneres de vulnerabilidad sólo se ejecutan para comprobar la
posible existencia de una vulnerabilidad, la fase de ataque de una prueba de
penetración explota la vulnerabilidad para confirmar su existencia. La mayoría de las
4. vulnerabilidades explotadas en las pruebas de penetración son las siguientes
categorías:
Errores de configuración. Malas configuraciones de seguridad, configuraciones
predeterminadas son particularmente inseguras, estas suelen ser fáciles de explotar.
Defectos del núcleo. El código del kernel es el núcleo de un sistema operativo, el
mismo impone el modelo de seguridad global del sistema por lo que cualquier falla de
seguridad en el kernel pone todo el sistema en peligro.
Desbordamientos de búfer. Un desbordamiento de búfer se produce cuando los
programas no responden adecuadamente una longitud adecuada. Cuando esto ocurre,
código arbitrario puede ser introducido y ejecutado en el sistema con privilegios, a
menudo a nivel administrativo de los programas en ejecución.
Validación insuficiente de entrada. Muchas aplicaciones fallan al validar totalmente
los inputs que reciben de los usuarios. Si el usuario introduce los comandos SQL en
lugar de o además del valor deseado, y la aplicación Web no filtra los comandos SQL,
la consulta se puede ejecutar con cualquier cambio malicioso que el usuario solicitó
que causan lo que se conoce como ataque de inyección SQL.
Enlaces simbólicos. Un enlace simbólico (symlink) es un archivo que apunta a otro
archivo. Los sistemas operativos incluyen programas que pueden cambiar los
permisos concedidos a un archivo. Si estos programas se ejecutan con permisos
privilegiados, un usuario podría crear enlaces simbólicos estratégicamente para
engañar a estos programas en la modificación o el listado de archivos críticos del
sistema.
Ataques archivo descriptor. Los descriptores de fichero son los números que utiliza
el sistema de seguimiento de los archivos en lugar de nombres de archivo. Los tipos
específicos de descriptores de archivos tienen varios usos. Cuando un programa
privilegiado asigna un descriptor de archivo inadecuado, se expone a ese archivo a
estar comprometido.
Condiciones de carrera. Las condiciones de carrera pueden ocurrir durante el tiempo
que un programa o proceso ha entrado en un modo privilegiado. Un usuario puede
medir el tiempo de un ataque para tomar ventaja de privilegios elevados, mientras que
el programa o proceso está todavía en el modo privilegiado.
De archivo incorrecto y acceso a un directorio. Archivos y directorios de permisos
controlan el acceso asignados a los usuarios y procesos. Permisos pobres podrían
permitir muchos tipos de ataques, incluyendo la lectura o escritura de archivos de
contraseñas o adiciones a la lista de hosts de confianza a distancia.
La fase de información ocurre simultáneamente con las otras tres fases de la prueba
de penetración (ver Figura 5-1). En la fase de planificación, el plan de evaluación se
desarrolla. En el descubrimiento y las fases de ataque, los registros escritos
generalmente se mantienen y los informes periódicos se hacen para los
administradores de sistemas y/o de gestión. Al término de la prueba, un informe
general es elaborado para describir las vulnerabilidades identificadas, se presenta un
informe de los rates de riesgo, y se da orientación sobre la manera de mitigar las
debilidades descubiertas.
Logística de pruebas de penetración
Las pruebas de penetración son importante para determinar la vulnerabilidad de la red
de una organización y el nivel de daño que puede ocurrir si la red se ve comprometida.
5. Es importante tener en cuenta que dependiendo de las políticas de la organización, los
evaluadores pueden ser prohibidos del uso de determinadas herramientas o técnicas,
o puede limitarse a ellas utilizando sólo durante ciertas horas del día o días de la
semana. Las pruebas de penetración también representan un alto riesgo a las redes
de la organización y sistemas, ya que se utilizan ataques reales y los ataques contra
los sistemas de producción y de los datos. Debido a su alto costo y el impacto
potencial de las pruebas, la penetración de la red de una organización y los sistemas
deben realizarse sobre una base anual, la cuál puede ser suficiente. Además, las
pruebas de penetración pueden ser diseñadas para detenerse cuando el evaluador
llega un momento en que una acción adicional puede causar daños.
Los resultados de las pruebas de penetración deben ser tomadas en serio, y las
vulnerabilidades descubiertas deben ser mitigados. Los resultados, cuando estén
disponibles, deben ser presentados a los gerentes y Directores de la organización.
Un programa bien diseñado de la red regular y escaneo de vulnerabilidades,
intercaladas con las pruebas de penetración periódicas, puede ayudar a prevenir
muchos tipos de ataques y reducir el impacto potencial de aquellos exitosos.
Ingeniería Social
La ingeniería social es un intento de engañar a alguien para revelar información (por
ejemplo, una contraseña) puede ser utilizado para atacar sistemas o redes. Se utiliza
para poner a prueba el elemento humano y la conciencia del usuario respecto a la
seguridad de la información, la misma puede revelar deficiencias en el comportamiento
del usuario, tales como no cumplir con los procedimientos estándar.
La ingeniería social se puede realizar a través de muchos medios, incluyendo de forma
analógica (por ejemplo, las conversaciones se realizan en persona o por teléfono) y
digital (por ejemplo, e-mail, mensajería instantánea). Una forma de ingeniería social
digital que se conoce como phishing es donde los atacantes tratan de robar
información como números de tarjetas de crédito, de débito, nombres de usuario y
contraseñas. El phishing utiliza auténticos correos electrónicos de aspecto para
solicitar información a los usuarios en un sitio Web falso, para recopilar información.
Otros ejemplos de la ingeniería social digital incluyen la elaboración de correos
electrónicos fraudulentos y envío de archivos adjuntos que podrían imitar la actividad
de un gusano para recopilar información
La ingeniería social puede ser usada para destinatarios específicos de alto valor
jerárquico o grupos específicos en la organización, tales como ejecutivos, o puede
tener un conjunto de objetivos generales.
Los objetivos específicos se pueden identificar cuando la organización tiene
conocimiento de una amenaza existente o se siente que la pérdida de información de
una persona o un grupo específico de personas podrían tener un impacto significativo.
Por ejemplo, los ataques de phishing pueden ser escogidos en base a la información
pública disponible sobre personas concretas (por ejemplo, títulos, temas de interés,
cargo, sueldo). Es importante que los resultados de las pruebas de ingeniería social se
utilicen para mejorar la seguridad de la organización y no solamente a los individuos
afectados. Los evaluadores deben elaborar un informe final detallado que identifica las
tácticas exitosas y fallidas utilizadas. Este nivel de detalle ayudará a las
organizaciones a adaptar sus programas de formación de sensibilización.