Anexo:Éticas hacker

De Wikipedia, la enciclopedia libre

Se considera como ethical hacking a todas las técnicas que comprenden la penetración de vulnerabilidades de sistemas informáticos para arreglarla, a quienes realizan esto se los denomina hackers de quienes “buscan vulnerabilidades en los sistemas o en las redes y, a continuación, informa estas vulnerabilidades a los propietarios de los sistemas informáticos. Por lo general un hacker de sombrero blanco se concentra en proporcionar seguridad a los sistemas informáticos[1]​ Ethical Hacking comprende todas las técnicas utilizadas y empleadas para encontrar vulnerabilidades en los sistemas informáticos para aprovechar esos puntos débiles y de esta manera proteger la integridad de los equipos , información , infraestructura ,etc. Comúnmente se asocia el término hacking como una serie de acciones ilícitas sin embargo estas comprenden más que vulnerar las medidas de seguridad , sino más bien encontrarlas y hacerlas más robustas. Cuando hablamos de hacking ético nos referimos a la acción de efectuar pruebas de intrusión controladas sobre sistemas informáticos; es decir que el consultor o pentester, actuará desde el punto de vista de un cracker , para tratar de encontrar vulnerabilidades en los equipos auditados que puedan ser explotadas, brindándole - en algunos casos - acceso al sistema afectado inclusive; pero siempre en un ambiente supervisado, en el que no se ponga en riesgo la operatividad de los servicios informáticos de la organización cliente. Es importante enfatizar que aunque es indudable que el pentester debe poseer conocimientos sólidos sobre tecnología para poder efectuar un hacking ético, saber de informática no es suficiente para ejecutar con éxito una auditoría de este tipo. Se requiere además seguir una metodología que nos permita llevar un orden en nuestro trabajo para optimizar nuestro tiempo en la fase de explotación, además de aplicar nuestro sentido común y experiencia. Y aunque lamentablemente la experiencia y el sentido común no se pueden transferir en un libro, haré mi mejor esfuerzo por trasmitirles la metodología y las buenas prácticas que he adquirido a lo largo de los años de ejercer la profesión de auditora de seguridad informática[2]​ o

Mentalidad de un hacker[editar]

La forma de pensar de un hacker se basa en sus doctrinas innatas como por ejemplo que el acceso a las computadoras deber ser libre y de uso ilimitado , la información debe ser de dominio público, desconfiar de los gobiernos promoviendo la descentralización, en primera instancia podría pensarse que la mentalidad de un hacker se basa en un tipo de pensamiento anarquista sin embargo ser hacker es un estilo de vida , no tiene edades ni géneros, pero si tiene sus propios fines los cuales difieren entre lo ético burlar brechas de seguridad y lo legal utilizar esas habilidades para ofrecer seguridad informática a la información de medianas o grandes empresas .

Tipos de hackers[editar]

  • Black Hat: Son los villanos de la película. Usan sofisticadas técnicas para acceder a sistemas, apoderarse de ellos y sus datos, destruirlos, venderlos, etc.
  • White Hat: Son hackers éticos, que trabajan asegurando y protegiendo sistemas de TI. Usualmente se desempeñan en empresas de seguridad informática y dan cuenta de las vulnerabilidades de las empresas para poder tomar medidas correctivas.
  • Grey Hat: Es un híbrido, ya que a veces actúa de manera ilegal, aunque con buenas intenciones. Puede penetrar sistemas y divulgar información de utilidad al público general, como por ejemplo acusar con pruebas a grandes compañías por la recopilación no autorizada de datos de los usuarios. Ver caso Edward Snowden
  • Los Crackers Son un tipo de Black Hat. Su principal finalidad es dañar sistemas y ordenadores, rompiendo sistemas de seguridad de computadores, colapsando servidores, infectando redes y entrando a zonas restringidas. El término “programas crackeados” viene de los generadores de números o claves de acceso que logran vulnerar los sistemas.
  • Carder Experto en fraudes con tarjetas de crédito. Generan números falsos y códigos de acceso que violan exitosamente los sistemas de control para robar y clonar tarjetas.
  • Pharmer Se dedican a realizar ataques de “phishing”, donde el usuario cree que está entrando a un sitio real y en realidad introduce sus datos en uno creado por el hacker. Posteriormente usan las credenciales para robar fondos de las cuentas de sus víctimas.
  • Phreakers: Son los que cablean sus propios teléfonos, construyen aparatos electrónicos llamados bluebox, blackbox y redbox los cuáles les ayudan a explorar la red y hacer llamadas telefónicas gratuitas, violar sistemas de conferencias telefónicas y "rondas de bucle" para comunicarse entre sí
  • War driver: Son crackers que saben aprovechar las vulnerabilidades de todo tipo de redes de conexión móvil.
  • Defacer: Buscan bugs de páginas web en internet para poder infiltrarse en ellas y así modificarlas.
  • Spammer y diseminadores de Spywares: Hay empresas que les pagan por la creación de spams de sus principales productos y en otros casos también lucran con publicidad ilegal.
  • Script-kiddie: Son internautas que se limitan a recopilar información, herramientas de hacking gratuitos y otros programas para probar sus efectos en posibles víctimas. Más de alguna vez terminan comprometiendo sus propios equipos.
  • Cívicos:son los que trabajan en el desarrollo de soluciones orientadas a asuntos sociales, civiles o políticos. Ver caso Aaron Swartz
  • Wizard: Es el que conoce a fondo como actúa cada sistema por complejo que sea. Un hacker usa técnicas avanzadas, pero el wizard entiende cómo o por qué funcionan.
  • Programador Vodoo: Es el programador que se basa en técnicas que leyó, pero que todavía no entiende. Así que éstas podrían funcionar o no.
  • El Newbie: Alguien “noob” o novato que aprende hacking a partir de tutoriales o información de una web. Son aprendices que aspiran a ser hackers.[3]

Footprinting and Reconnaissance[editar]

En esta primera etapa de ethical hacking consiste en averiguar toda la información posible de la víctima , organización , empresa , etc., es decir que se levantara la información necesaria para poder seguir con la siguiente etapa , esto lo convierte en un paso muy importante y determinante. Se tienen dos tipos de reconocimientos el reconocimiento activo y el pasivo

Reconocimiento Activo[editar]

En el reconocimiento activo hay una interacción cercana con la víctima por ejemplo:

  • Barridos de ping para determinar los equipos públicos activos dentro de un rango de IPs. Conexión a un puerto de un aplicativo para obtener un banner y tratar de determinar la versión.
  • Uso de ingeniería social para obtener información confidencial.
  • Hacer un mapeo de red para determinar la existencia de un firewall o router de borde
Reconocimiento Pasivo[editar]

Algunos ejemplos de reconocimiento pasivo:

  • Buscar en el periódico por anuncios de ofertas de empleo en el departamento de sistemas de la empresa X. Si resulta que buscan un DBA experto en Oracle, eso nos da una pista sobre qué base de datos utilizan, o si quieren un Webmaster que conozca sobre administración de Apache ya sabemos qué webserver utilizan.
  • Consultas de directorios en Internet. Cuando una empresa registra un nombre de dominio, el proveedor de hosting publica información de contacto en un base de datos pública denominada Who-Is, por lo que consultándola se puede obtener información valiosa como el nombre de la empresa dueña del dominio, dirección y teléfonos de la oficina matriz, correo electrónico del administrador, rangos de direcciones IP asignados, en fin. Es posible pagar para mantener esta información privada, pero muchas empresas que adquieren un nombre de dominio no contratan el servicio de privacidad de información.
  • Búsquedas en redes sociales. Sitios como Facebook, Linkedin, Twitter, entre otros, tienen joyas de información gratuita para los hackers que pueden ser usadas fácilmente en un ataque de ingeniería social.
  • Recuperación de información desde la basura. A este método para nada agradable se lo conoce también como dumpster diving, pero aunque suene repulsivo puede resultar muy útil a la hora de adquirir información confidencial de una empresa. Aún en esta época de inseguridad son pocas las empresas que usan trituradores e incineradores para destruir información confidencial y aunque suene de Ripley, son muchos los empleados que "reciclan" hojas impresas de informes que salieron mal o que botan notas post-it con claves a la basura[4]

Scanning Networks[editar]

Comprenden todos los procedimientos para identificar puertos , hosts y servicios de red en donde se obtienen direcciones ip , arquitectura de los sistemas operativos ,puertos activos.

Buffer Overflow[editar]

Un buffer overflow se lleva a cabo cuando un programa informático excede el uso de cantidad de memoria asignado por el sistema operativo, escribiendo en el bloque de memoria siguiente. Estos fallos son utilizados por hackers para lograr ejecutar código ilegal en un equipo, de manera que en muchos casos logran se logra controlar el equipo de la víctima o ejecutar un ataque de Denegación de Servicios (DoS).El principio operativo de un desbordamiento de búfer guarda relación con la arquitectura del procesador en la que se ejecuta una aplicación vulnerable, que puede ser de 32 y 64 bits. Los datos ingresados en una aplicación se almacenan en la memoria de acceso aleatorio, en una zona conocida como buffer. Un programa con un diseño correcto debería determinar un tamaño máximo para los datos entrantes y garantizar que no superen ese valor. Los datos ubicados después del búfer contienen una dirección de retorno (que se denomina puntero de instrucción) que le permite al programa continuar con su ejecución. Si el tamaño de los datos es mayor que el del búfer establecido, la dirección de retorno se sobrescribe y el programa leerá una dirección de memoria inválida, generando una violación de segmento en la aplicación[5]

Using Exploits[editar]

En primera instancia, es fundamentar determinar la conceptualización para “exploit”. Las definiciones habituales hablan de un programa o código que se aprovecha de un agujero de seguridad (vulnerabilidad) en una aplicación o sistema, de forma que un atacante podría usarla en su beneficio.Plasmado en la vida real, sería como si un modelo de cerradura (sistema o aplicación) tuviera un fallo de diseño que nos permitiera crear llaves que la abrieran (exploit) y poder así acceder al sitio que trata de proteger y realizar actos ilegales (malware).Ya sabiendo qué es un exploit, se pueden diferenciar dos tipos: los conocidos o desconocidos (0-day). Los exploits conocidos son aquellos de los que se tiene constancia y podemos tomar medidas para evitar ver nuestros sistemas afectados. Suelen ser los que aparecen en la mayoría de noticias de seguridad y aparecen varios cada días, de la misma forma que van apareciendo las vulnerabilidades que tratan de aprovechar. Por otro lado, están los exploits desconocidos o 0-days, los cuales se ven a menudo en las noticias de seguridad. Estos se utilizan sobre vulnerabilidades que aún no han sido reportadas al público general y, por tanto, suponen una grave amenaza, especialmente si se utilizan en ataques dirigidos a empresas o gobiernos[6]

Password Attacks[editar]

Las contraseñas pueden ser vulneradas de diversas maneras y entre ellas se destacan las siguientes:

Malgrat[editar]

Una cantidad importante del malware que se desarrolla actualmente tiene como objetivo principal obtener información de los usuarios, principalmente contraseñas de cuentas de correo electrónico, de redes sociales y datos relacionados con transacciones bancarias en línea.

Phishing[editar]

Estas campañas de engaño tienen como propósito primordial obtener credenciales de usuarios, a través de mensajes que dirigen a sitios falsos (generalmente de instituciones bancarias), donde la información que el usuario ingresa es robada. Ataques de diccionario Se trata de intentos secuenciales de autenticación de usuarios que utilizan palabras ordenadas alfabéticamente contenidas en grandes archivos denominados diccionarios. El éxito del ataque tiene como base dos factores: que el usuario utilice una palabra de uso común como contraseña y que esa palabra se encuentre dentro de la lista del diccionario.

Ataques de fuerza bruta[editar]

Al igual que el ataque de diccionario, consiste en intentos secuenciales de autenticación con la diferencia de que se utilizan combinaciones de caracteres de una longitud determinada. A mayor cantidad de caracteres en una contraseña, mayor es la cantidad de combinaciones posibles, lo que se traduce en más tiempo de procesamiento requerido para descifrar la contraseña.

Ataques a proveedores[editar]

Se trata de ataques enfocados en sitios legítimos que almacenan información sensible, que funcionan a través de la vulneración y exposición de las bases de datos donde se almacenan los datos de los usuarios. Generalmente estas bases de datos almacenan hashes (cadena de caracteres que identifica los archivos unívocamente) y no las contraseñas, pero es posible descifrar estas cadenas de caracteres para acceder a las claves[7]

Vulnerabilidad Web[editar]

Cuando se va a atacar un sistema, lo último que se quiere es que salten todas las alarmas. Es por eso que usar fuentes en línea es una buena herramienta. Se puede utilizar hacking de buscadores para localizar URLs con paso de parámetros, para comprobar si éstos están correctamente validados, para buscar correos electrónicos u otra información que pueda extraerse de un determinado sitio: ficheros de backup o de configuración que hayan quedado indexados, etc. Metadatos Otra fuente de información importante son las fugas de información que se producen por culpa de los metadatos, que van incluidos en los documentos que se publican en Internet. Con estos datos, es posible conocer nombres de usuario, equipos, sistemas operativos, versiones de software, etc. que se utiliza en la organización. Configuración débil por defecto o mal configurado Esto suele producirse por intentar desplegar el servicio lo más rápido posible o por una confianza excesiva en el software utilizado, incluso por desconocimiento. Cuando se expone a Internet un sistema con su configuración por defecto, si se encuentra una vulnerabilidad en el mismo, el exploit por defecto funcionará. Es necesario revisar el servicio a desplegar y buscar una configuración suficientemente fuerte. Comunicación insegura entre cliente y servidor Es muy importante que la comunicación entre cliente y servidor esté cifrada, sobre todo, cuando se trata de envíos de formularios, por ejemplo, para autentificarse en sitio web. En muchas ocasiones, se configura el sitio web para usar cifrado, con una configuración débil, permitiendo protocolos inseguros, como SSLv2 y SSLv3, o suites de cifrado vulnerables, como MD5. Esto dará una falsa sensación de seguridad, el cliente verá que hay un certificado, que el sitio web, aparentemente está cifrado, y, sin embargo, por culpa de los protocolos permitidos, podría ser relativamente fácil descifrar esta comunicación. Es por ello que es necesario revisar el estado de la calidad en la configuración de nuestros certificados. Software desactualizado Una vez desplegado el sistema, independientemente de que se hiciese el trabajo correctamente, pasado el tiempo, el software se desactualiza. Se localizan vulnerabidades, se corrigen en versiones posteriores, etc. Es necesario llevar un control de las versiones utilizadas, así como mantener el software actualizado, en el menor tiempo posible, desde que se libera una nueva versión. En caso contrario, al cabo de un tiempo, nuestro sistema será vulnerable y existirán exploits públicos que permitirán atacarlo.[8]

Malware[editar]

Virus[editar]

Un virus es un programa malicioso que se replica en otras aplicaciones, archivos o incluso en el sector de arranque. Un virus puede hacer cualquier cosa que esté programada para robar información, registrar pulsaciones de teclas o incluso inutilizar una computadora. La característica definitoria de un virus radica en la autorreplicación e inserción de código malicioso en otros programas sin el consentimiento del usuario. Al igual que la mayoría de los otros malware, un virus está diseñado para obtener ganancias.

Worm[editar]

Un gusano es una pieza de malware que se replica para propagarse e infectar otros sistemas. Los gusanos informáticos utilizan la red, los enlaces, las redes P2P, el correo electrónico y aprovechan las vulnerabilidades para propagarse. A menudo se usa más de un wat para propagar el gusano. La diferencia con un virus es que un virus inserta código en otros programas donde un gusano no lo hace y solo se replica a sí mismo. Los gusanos no necesariamente contienen una carga útil, pero la mayoría de los gusanos sí. Los gusanos también pueden diseñarse para propagarse solo sin una carga útil.

Backdoor[editar]

Una puerta trasera es una pieza de código malicioso que permite que un atacante se conecte al objetivo infectado y tome el control de la máquina objetivo. En la mayoría de los casos, no se requiere autenticación para iniciar sesión en la máquina remota, aparte de los métodos de autenticación requeridos por el malware. A menudo, un troyano genera una puerta trasera que pasa desapercibida si el host no tiene mecanismos de detección efectivos. Las puertas traseras pueden usar muchos métodos para comunicarse en casa. Además, el malware utiliza comúnmente el puerto 80 a través del protocolo HTTP porque este puerto está abierto en la mayoría de las máquinas conectadas a Internet. Discutiremos 2 tipos de puertas traseras; el shell inverso y la herramienta de acceso remoto / administración (RAT).

Trojan[editar]

Un malware troyano o troyano es un programa malicioso que funciona como una puerta trasera. Al igual que la antigua historia griega del caballo de madera con tropas griegas en el interior que se utilizó para invadir la ciudad de Troya, un troyano en informática tiende a aparecer como una aplicación normal, un medio o cualquier otro archivo pero que contiene una carga maliciosa. Los troyanos a menudo se propagan a través de la ingeniería social, donde la víctima se ve engañada para ejecutar el archivo o la aplicación con el troyano. La mayoría de los troyanos contienen puertas traseras que el atacante puede usar para robar información, propagar otro malware o usar los recursos de la máquina infectada en una botnet. Literalmente, todo es posible cuando se infecta con un troyano que se instaló o se ejecutó con privilegios elevados. Los troyanos han existido durante mucho tiempo, algunos troyanos populares son: Netbus, SubSeven o Sub-7 y Back Orifice o BO en resumen.

Rat[editar]

(Herramienta de acceso / administración remota)Un troyano de acceso remoto (RAT), o a veces llamado herramienta de administración remota o herramienta de acceso remoto, es un software que permite a un atacante tomar el control del host infectado mediante el uso de una puerta trasera. Lo llamaremos un troyano de acceso remoto en este artículo para enfatizar la malicia de este tipo de RAT. Estamos hablando de las RAT maliciosas y no de las que usan los administradores de sistemas o proveedores de software para soporte remoto y solución de problemas. Los troyanos de acceso remoto a menudo se incluyen con software gratuito y se envían como archivos adjuntos por correo electrónico.

Rootkit[editar]

Un rootkit es un software malicioso diseñado para ocultar la existencia de otro malware. El malware oculto es a menudo una puerta trasera para proporcionar acceso completo al atacante o al malware que roba información. Los rootkits pueden ser difíciles de detectar y eliminar en función de dónde reside el rootkit. Los rootkits a nivel de firmware, por ejemplo, pueden requerir reemplazo de hardware y los rootkits a nivel de kernel pueden requerir una nueva instalación del sistema operativo.

Bootkit[editar]

Otro rootkit peligroso y casi imposible de detectar es el bootkit. El bootkit es un rootkit oculto en el sector de arranque que infecta el registro de arranque maestro. Este tipo de rootkit puede omitir el cifrado de la unidad, por ejemplo, porque el Master Boot Record (MBR) no está cifrado. El MBR contiene el software de descifrado para descifrar la unidad. Un gestor de arranque es un código que se ejecuta antes que el sistema operativo.

Adware o Spyware[editar]

El adware como malware es un software malicioso que presenta publicidad no deseada al usuario. Este tipo de malware a menudo utiliza ventanas emergentes que el usuario no puede cerrar. El adware a menudo se incluye con software gratuito y barras de herramientas del navegador. El malware que también recopila datos de usuario, actividad y otra información para publicidad dirigida se llama spyware.

Botnet[editar]

Una botnet es una red de computadoras privadas controladas a distancia con puertas traseras que están siendo controladas por un servidor de comando y control. Todos los hosts infectados en la botnet se controlan como un grupo y reciben las mismas instrucciones del servidor controlado por el atacante. Las botnets se usan a menudo para enviar spam, para realizar ataques distribuidos de denegación de servicio (DDoS) o distribución de malware.

Shell inverso[editar]

Un shell inverso es una conexión iniciada desde el host infectado al atacante y proporciona al atacante un acceso de shell al host. El shell inverso a menudo es creado por un troyano y funciona como una puerta trasera en el host infectado. Después de configurar el shell inverso, el atacante puede ejecutar comandos como si se ejecutaran localmente. Hay un par de formas para que los desarrolladores de malware configuren un shell inverso. Los métodos más utilizados para los shells inversos son Netcat y Windows cmd.exe empaquetados dentro de malware. Un método simple utilizado por el malware que usa el CMD de Windows para configurar un shell inverso es crear un socket para establecer una conexión con el atacante y luego vincularlo a las secuencias estándar (entrada, salida y error estándar) para cmd.exe. El cmd.exe se ejecuta con una ventana suprimida para ocultarlo de la vista de la víctima y se puede usar para ejecutar comandos en el host infectado.

Browser Hijacker[editar]

Un secuestrador de navegador es un malware desarrollado para controlar la configuración de su navegador, como la página de inicio, por ejemplo, o el proveedor de búsqueda estándar. Los secuestradores de navegador a menudo se incluyen con software gratuito y barras de herramientas del navegador y también pueden contener adware y spyware. Algunos secuestradores de navegador también cambian la configuración de proxy de su navegador, lo que compromete su privacidad y seguridad en línea.

Malicious downloader[editar]

Downloader Malware es un software malicioso que descarga otro software malicioso. Los atacantes a menudo infectan una máquina con malware de descarga cuando obtienen el primer acceso al sistema. El malware de descarga que infecta la máquina de destino en silencio con otro malware.

Information stealers[editar]

El malware de robo de información es una colección de tipos de malware que se desarrollan para robar información como números de tarjetas de crédito, detalles de cuentas bancarias, detalles de cuentas y otra información personal. La información recopilada generalmente se envía al atacante que a menudo la usa para obtener acceso a su cuenta personal o para ponerla a la venta en la web profunda. El robo de información de malware a menudo viene en forma de registradores de teclas, capturadores de contraseñas (hash) y rastreadores. La información robada a menudo se envía a un servidor de comando y control para su posterior procesamiento.

Keyloggers[editar]

El malware Keylogger es una pieza maliciosa de software (o hardware) que registra sus pulsaciones de teclas para recuperar contraseñas, conversaciones y otros datos personales. Las pulsaciones de teclas grabadas se envían al atacante. Un keylogger es una forma muy efectiva para que los atacantes roben contraseñas porque no hay necesidad de descifrar hash, descifrar información o rastrear conexiones seguras para contraseñas.

Ransomware[editar]

Técnicamente hablando, todo malware que impide que un usuario acceda a la computadora o los archivos y exige dinero a cambio de acceso se llama ransom-ware. Ransom-ware a menudo cifra su disco duro o archivos y exige dinero a cambio de la clave de descifrado. Este tipo de ransomware también se llama crypto locker. Después de la infección, el malware presenta a los usuarios algunos métodos de pago que pueden usarse para desbloquear la computadora o descifrar los archivos. Si el ransomware o el bloqueador de cifrado realmente desbloqueará su disco duro o sus archivos, las claves de descifrado y el pago a menudo están controlados por un servidor de comando y control.

Launcher[editar]

Un lanzador es una pieza de software malicioso que se utiliza para lanzar otro malware. Esta pieza de malware a menudo se combina con el malware de descarga. El malware lanzador a menudo usa métodos sigilosos y poco convencionales para lanzar otro malware para evitar la detección. Spam sending malwareSpam Sending Malware es un malware que utiliza la máquina infectada para enviar spam. El malware de envío de spam puede ser parte de una botnet controlada por un servidor de comando y control que funciona como una red distribuida de envío de spam. Debido al enfoque distribuido, no hay un solo punto de falla, si ¼ de las máquinas infectadas se limpian, la otra ¾ seguirá enviando correos no deseados. Las grandes redes de bots pueden enviar miles de millones de mensajes de spam por semana y muy a menudo se propaga malware nuevo junto con los mensajes de spam. El envío de malware por correo no deseado puede ocasionarle problemas porque el ISP corta la conexión a Internet o su dirección de correo electrónico puede aparecer en la lista negra, así que asegúrese de eliminar este tipo de malware lo antes posible. Este tipo de malware es rentable para los desarrolladores de malware porque pueden vender los servicios de envío de spam.

Scareware[editar]

Scareware es un software malicioso que obliga a la víctima a comprar algo asustándolo. También podría llamarlo chantaje de malware, ya que a menudo incluye virus o archivos embarazosos. El malware scareware más común parece un escáner de virus que ha detectado algunos virus que se eliminarán después de que la víctima haya comprado el escáner de virus. En realidad, solo se eliminará el scareware (con suerte). Scareware a menudo usa tácticas de miedo que avergonzarán a la víctima para evitar que la víctima escale el problema a un administrador del sistema en el trabajo o solicite ayuda profesional para la eliminación de virus, por ejemplo. Debido a estas tácticas, muchas víctimas pagarán por el software para eliminar silenciosamente el virus u otros materiales embarazosos. El malware Scareware o chantaje es como el ransomware, muy rentable para los desarrolladores de malware.[9]

Véase también[editar]

Referencias[editar]

  1. Santos, Jesus (2006). Seguridad Informatica(GRADO MEDIO). RA-MA. p. 295. 
  2. Astudillo, Karina (2013). Hacking Etico 101 (1 edición). Guyaquil: IEPI. p. 10. ISBN GYE-004179 |isbn= incorrecto (ayuda). Consultado el 21 de agosto de 2019. 
  3. Aguilera Lopez, Purificación. Seguridad Informatica. Editex. p. 109. Consultado el 21 de agosto de 2019. 
  4. Astudillo, Karina (2013). Hacking Etico 101. Guyaquil: IEPI. p. 16-17-18. ISBN No. GYE-004179 |isbn= incorrecto (ayuda). 
  5. Perez, Ignacio (5 de agosto de 2019). «WeLiveSecurity». Buffer Overflow. Consultado el 21 de agosto de 2019. 
  6. Albors, Joseph (10 de agosto de 2014). «WeLiveSecurity». WeLiveSecurity. Consultado el 21 de agosto de 2019. 
  7. Mendoza, Miguel (14 de agosto de 2014). «WeLiveSecurity». WeLiveSecurity. Consultado el 21 de agosto de 2019. 
  8. Diaz, Maria (4 de abril de 2017). «hacking-etico.com». Las principales vulnerabilidades Web. Consultado el 21 de agosto de 2019. 
  9. Rells, Bryan. «hackingloops.com». Types of malware (en inglés). Consultado el 21 de agosto de 2019.