domingo, 31 de enero de 2016

Entrevista a Gary McKinnon

Hoy como es tradicional, Domingos me encanta poder ver alguna película o documental referente al tema informático y quiero compartirles una entrevista a Gary McKinnon, tambien conocido como solo, que es un hacker británico al cual Estados Unidos acuso de haber perpetrado ataques contra el pentágono y obtener informacion confidencial.




Saludos.
Lexer Pars.

sábado, 30 de enero de 2016

Analizando malware (analisis estatico practica)

Entrando a la parte practica del análisis del malware que anteriormente desarrollamos emplearemos las primeras tres técnicas de análisis estático.

Los primero es analizar el archivo sospechoso con herramientas antimalware para confirmar que es un archivo malicioso, para ello como sea mencionado anteriormente utilizaremos virustotal.com que ofrece 54 antivirus, con el cual puedes tener una alta tasa de detección y tienes opción de análisis de diferentes formatos de archivo.  

Imagen 1: Tipos de archivos analizados en virustotal.com.



Imagen 2: Análisis de malware con virus total.

En este caso el malware no ha sido detectado, sin embargo al momento de analizar un archivo sospechoso esto no implica que en verdad sea un archivo libre de virus, para ello es necesario aplicar mas técnicas de análisis. Posterior a realizar un análisis con herramientas antimalware, se puede obtener el hash del fichero para examinar si este ya ha sido analizado por alguien mas.

Para ello utilizaremos la herramienta md5deep y buscaremos en google por el hash, en nuestro caso el malware no ha sido analizado por nadie mas y el hash no esta disponible o indexado y esto puede ocurrir al momento de sufrir un ataque dirigido. En el caso que el ataque se realice con malware publico y con tiempo disponible en internet, la información sera mas amplia.

Imagen 3: Sha256 de malware Guabit.

Imagen 4: Resultados obtenidos en busca del hash por google.

Realizaremos el mismo procedimiento para un malware que lleva ya un tiempo en internet y que se ha analizado en muchas ocasiones en este caso Apocalypse RAT.

Imagen 5: Análisis de malware Apocalypse RAT.

 Imagen 6: Buscando hash en google de Apocalypse RAT.

Como puede apreciarse al ser un malware con bastante tiempo en circulación en internet, tanto su detección como análisis realizados por otros usuarios aparecen indexados.

Luego de realizar se puede extraer las cadenas de texto del programa, cadenas que pueden mostrar información de donde conecta el malware, donde se copia, que mensajes muestra entre otros, que puede darnos una idea de como esta funcionado, para ello utilizamos la herramienta strings proporcionada por microsoft.

  Imagen 7: Parte del código del malware teclas enumeradas.

Imagen 8: Ruta C:\malware encontrada.

Imagen 9: Conexión a local host.

Con esta técnica ya hemos conseguido mas información, las teclas enumeradas ya nos dan la idea que captura el teclado, tenemos un directorio, el quedaría por examinar y desde luego el host a donde conecta, en este caso a localhost.

Aunque esto puede resultar muy fácil y útil de hacer hay técnicas que pueden ayudar a complicar el análisis del malware utilizando las técnicas anteriores ya sea utilizando ofuscación o bien se comprimen o empaquetan como veremos mas adelante.

Saludos.
Lexer Pars.      

viernes, 29 de enero de 2016

Analizando malware (analisis estatico teoria)

Continuado con el análisis del malware, iniciaremos con la primer técnica, la cual consiste en analizar el malware sin ejecutarlo, es decir mediante un análisis estático. La siguientes técnicas son utilizadas para efectuar dicho análisis.

  1. Antivirus: Cuando se cuenta con el archivo sospechoso, se puede utilizar un antivirus o un conjunto de antivirus, para estar seguros que el archivo en verdad es malicioso. En internet se encuentra virustotal.com, con el cual disponen de un gran numero de antivirus con el cual puede analizar el malware. Aunque un buen grupo de Antivirus se basan en una base de datos firmas, hay otros que utilizan heuristica, lo cual incrementa la tasa de detección. Aunque esto únicamente nos serviría para confirmar que el archivo sospechoso es en realidad un programa malicioso.   
  2. Hashes: Los hashes permiten detectar un archivo malicioso de forma única, generando una huella digital y  verificar si este malware ya ha sido analizado por alguien mas y detectado.  
  3. Obteniendo las cadenas y encabezados de funciones de un ejecutable: Esta es una técnica bastante útil, en la cual se puede obtener trozos de información del ejecutable que puede resultar bastante relevante, como puede ser nombre del host a donde se conecta el malware nombres de algunas funciones, entre otros que puede aportar.    

Saludos.
Lexer Pars.

jueves, 28 de enero de 2016

Roban tus datos en android, y después te extorcionan

Puede que creas que te estás descargando una aplicación convencional pero, si caes en esta nueva estafa, todos tus datos pasarán a estar en manos de un grupo de hackers. Y, o pagas la extorsión, o tu historial de navegación se enviará a todos tus contactos.

Básicamente, esa es la premisa en la que se basa la nueva estafa en Android descubierta por una empresa de seguridad. Esta nueva amenaza es capaz de camuflarse en cualquier aplicación, y una vez instalada, encripta todos los datos del móvil del usuario.

Eso incluye desde la agenda de contactos hasta lasfotografías, pasando también por, atención, el historial de navegación. El usuario no solamente pierde el acceso a toda su información, sino que además ésta pasa a estar en manos de los atacantes.

Si el usuario se niega a abonar el dinero que le exigen los extorsionadores, a lo que se expone no es solamente la pérdida de todos los datos del móvil, sino que también se enfrenta a la amenaza de que todo su historial web de navegación sea enviado por mensaje a sus contactos.

Teniendo en cuenta que, mediante este método, los extorsionadores consiguen acceso completo a la agenda del usuario, la amenaza es más que real.

Tal y como recogen en el blog de Softpedia.com, esta amenaza ya ha sido detectada en una aplicación de contenido para adultos llamada “Porn ‘O’ Mania“. La aplicación dice ofrecer contenido para adultos, pero aprovecha un mensaje de error falso para conseguir que el usuario acepte otorgar permiso completo a todas las funciones de la app.

Por desgracia, entre las funciones ocultas que el usuario acepta sin ser consciente de ello se encuentra el secuestro de todos sus datos.

La buena noticia es que esta amenaza de seguridad no ha sido detectada en ninguna aplicación de la tienda de Google Play. Para caer en este virus en Android habría que descargar aplicaciones desde tiendas extra-oficiales, cosa que, para un usuario medio, está más que desaconsejada.

Por otra parte, los usuarios que tengan la versión de Android 5.0 Lollipop (o superior) en su móvil pueden estar todavía más tranquilos, ya que a partir de dicha versión desapareció el mensaje de error que esta aplicación utiliza para engañar a la víctima.

Para el resto de los usuarios, el mejor consejo pasa por desconfiar de cualquier aplicación disponible en una tienda extra-oficial. Y saber cómo proteger los archivos en Android es un pilar fundamental para evitar las estafas.

Saludos.
Lexer Pars.

miércoles, 27 de enero de 2016

El hacker que desbloqueó el iPhone y el PS3 ahora desafía a Tesla Motors

A sus 26 años, el rey de los hackers, George Hotz, inició una nueva lucha contra el mundo cibernético y esta vez la “víctima” será Tesla Motors, que en el 2015 lanzó sus prototipos autónomos (que no necesitan conductor) de vehículos eléctricos y que espera tenerlo a la venta en dos años.

Geohot

Sin embargo, en ese camino se interpuso el joven hacker apodado ‘Geohot’, que se apuró en anunciar desde el garaje de su casa en San Francisco (Estados Unidos), que liberará en los próximos meses su propia fórmula secreta para la autoconducción.

Según explicó en diciembre a Ashlee Vance, periodista de Bloomberg, en un mes desarrolló nada menos que un automóvil autónomo que próximamente hará público. Se trata de un Acura ILX 2016 adaptado para su funcionamiento sin piloto.

Según publica El Mercurio de Chile, Tesla reaccionó de inmediato, aclarando que “es muy poco probable que una sola persona o incluso una pequeña empresa que carece de una amplia capacidad de validación de ingeniería sean capaces de producir un sistema de conducción autónoma”.

Y Hotz no se demoró en responder: “Ya tengo más de 10 interesados en mi proyecto”.

Espíritu hacker
Lo común en el desarrollo humano es que a los 5 años los niños se dediquen a jugar, pero hay unos pocos que a esa misma edad diseñan programas para computadores. Luego, en plena preadolescencia, en vez de darle a la pelota, inventan robots con sensores infrarrojos y desarrollan videojuegos. Un ejemplo de ese perfil de niño es Geohot.

“Es la encarnación del espíritu hacker. Él usa la tecnología y la creatividad para hacer lo que la mayoría de las personas piensan que es imposible”, dijo a “El Mercurio” Steven Levy, periodista estadounidense de la revista Wired.

A los 17 años, Geohot subió al ring digital. Él, con su barba primeriza y sus jeans gastados, sacudieron la web con dos grandes rounds que ganó por nocaut: el desbloqueo del primer iPhone de Apple en 2007, y el de la consola Play Station 3, de Sony, en 2010. Y toda esta “sabiduría” se la ofreció a los usuarios a través de su blog.

A diferencia de Apple, Sony decidió querellarse contra Hotz, quien, consultado por la BBC, comentó entre relajados bostezos que, simplemente, “la solicitud de la compañía Sony no va a prosperar”.

“Es un programador talentoso que no le tiene miedo a realizar grandes proyectos; es muy creativo, y odia escuchar la palabra no”, afirma Levy.

Geohot, por su parte, es de la opinión de que “todos los usuarios tienen derecho al acceso libre a internet”. Y así lo confirman también sus seguidores que emergen desde recónditas “ciberguaridas” aplaudiendo a este Robin Hood de la red.

Fuente: gestion.pe
Saludos.
Lexer Pars.

martes, 26 de enero de 2016

Analizando malware (Técnicas)

Cuando ocurre una infección por malware se suele buscar de manera inmediata su eliminación, esto para un usuario estándar. Al momento de entrar en un ambiente corporativo entran en juego mas aspectos ademas de eliminar el malware se busca detectar que comportamientos tiene el malware con el fin de generar una firma que permita su detección y eliminación.  

Estas firmas están basadas en el host y de red. Las firmas basadas en el host, buscan detectar los cambios realizados en el sistema, como ya visto previamente, la creación de directorios, creación de registros, entre otros. Por su parte las firmas de red  que consiste en el análisis de código malicioso en el trafico de red

Para analizar el malware se tiene técnicas, básicas y avanzadas. 

  1. Análisis estático básico: Consiste en el analizas del malware sin ejecutarlo, obteniendo trozos de información pero sin entrar en profundidad a la parte técnica donde se analicen instrucciones de código.   
  2. Análisis estático avanzado: Consiste en un proceso de ingeniería inversa del malware, utilizando un desensamblador, en el cual se examinen las instrucciones ejecutadas por la CPU. 
  3. Análisis dinámico básico: Se basa en la ejecución del malware y observar como se comporta en el sistema, como lo hemos visto al inicio, las acciones iniciales que realiza el malware, crear directorios, modificar el registro de Windows, etc. 
  4. Análisis dinámico avanzado: Es el análisis del malware utilizando un depurador, es decir analizar las instrucciones en tiempo de ejecución del software malicioso.

En las próximas publicaciones veremos cada técnica para analizar el malware. Desde luego para realizar esto, es necesario preparar un entorno seguro para analizar. En mi caso lo haré en una maquina virtual.

Saludos.
Lexer Pars.   

lunes, 25 de enero de 2016

Analizando malware (cambios usuales en sistema)

Después de desarrollar un malware vamos a proceder al análisis del malware. Para realizar el analisis del malware que desarrollamos, utilizaremos una maquina virtual. El primer análisis consiste en verificar los cambios que usualmente genera un malware en el sistema.

Aunque desde luego, no en todos los casos suele suceder esto, puede aunque una multitud de malware sigue la estructura que definimos, hay otro buen grupo de malware con estructura diferente y para verificarlo es necesario utilizar diferentes técnicas de análisis.

Verificamos el panorama inicial del sistema, en los cuales puede notarse un cambio en el sistema:

  1. Cambios en el registro de Windows.
  2. Creación de directorios.
  3. Conexiones a un host en los registros de red.

Imagen 1:  Configuración del sistema antes de infección.

Imagen 2: Directorios antes de la infección.

Imagen 3: Conexiones activas antes de la infección.


Después de ejecutar el malware, se puede ver los cambios realizados en el sistema. El principal consisten en la persistencia del malware, el cual altera el registro de Windows y que puede visualizarse en la configuración del sistema.

 Imagen 4: Persistencia de malware, primer cambio en el sistema.

Creación de directorios, donde se alojara el malware o donde almacenara logs de eventos, pulsaciones de teclado, etc. Cabe mencionar que el directorio puede variar, utilizando una ruta poco conocida por el usuario para si detección , mas complicada. 

Imagen 5: Creación de directorios, segundo cambio en el sistema.

Y desde luego quedan las conexiones activas que se realizan, en este caso hay una conexión por el puerto 8555 nueva, la cual no ha logrado conectarse con el servidor.  

Imagen 5: Conexiones activas en el sistema.

Estos son unos de los principales cambios que puede generar un malware en el sistema, aunque para lograr entender mejor su funcionamiento y tener una desinfección mas precisa hay que utilizar mas técnicas que proporcionen información mas detallada de que hace, como lo hace, porque lo hace.

Abordaremos algunas técnicas mas adelante que nos permitan lograr tener una mejor comprensión de un malware y tener los conocimientos de que hacer en caso de tener sospechas de un malware que el sistema antimalware haya pasado por alto.

Saludos.
Lexer Pars. 

domingo, 24 de enero de 2016

Película amenaza en la red

Domingos de película, como es usual, es bueno aprovechar este día para disfrutar una buena película. He encontrado una que es bastante bueno y que seguro disfrutaras, que es amenaza en la red.

E la cual hay un malware que esta realizando ataques, en la cual tres hackers inician una investigación para encontrar al atacante. 

Saludos.
Lexer Pars.

sábado, 23 de enero de 2016

Desarrollando malware(Interfaz símbolo de sistemas servidor)

Continuado con el desarrollo del malware toca definir los comandos y reglas para enviar los comandos y recibir el resultado de la ejecución de estos.

Para ello estableceremos un control de sesión de la linea de comandos remoto, en la cual le por medio de los comandos 'CMD' y 'CMD OFF', que previamente definimos en el malware, indicaremos cuando estemos interactuando con la linea de comandos o cuando necesitemos utilizar otras funciones o comandos del malware. 

Imagen 1: Control de inicio y finalizar sesión linea de comandos.

Construimos una interfaz donde imprimiremos el resultado de los comandos, en mi caso utilice un frame, con un memo y 2 cajas de texto y desde luego un lindo retoque de colores.

Imagen 2: Interfaz linea de comandos de servidor.

En dicha interfaz, lo único que haremos incluiremos sera código, para enviar los comandos por medio del socket.

Imagen 3: Envió de comandos desde interfaz del servidor.

Por ultimo habría que definir en el socket al momento de escuchar, donde imprimir, al momento de recibir data, en el caso de tener una sesión iniciada en linea de comandos.

Imagen 4: Regla de comunicacion servidor.

Imagen 5: Sesion iniciada en linea de comandos.

Imagen 6: Lanzando comandos remotamente.

Con esto, ya tenemos dos funciones en el malware, las cuales consisten en capturar todo lo que se escriba y interactuar con los comandos del sistema operativo de manera remota.

Saludos.
Lexer Pars.

viernes, 22 de enero de 2016

Varias extensiones de chrome roban objetos del inventario de steam a sus usuarios

Steam es la mayor distribuidora de contenidos digitales para PC. Esta plataforma permite comprar tanto juegos como programas para ordenador legalmente y a unos precios muy reducidos respecto al resto del mercado, sin embargo, su negocio no termina ahí. En esta plataforma podemos encontrar un gran número de objetos, generalmente de pago, que los usuarios utilizan para mejorar y personalizar sus juegos, sus perfiles o para intercambiar con otras personas como es el caso de los cromos o los fondos.

Los piratas informáticos buscan constantemente formas de conseguir dinero aprovechándose de los usuarios, por ejemplo, con el contenido de Steam. Mientras que lo más habitual es utilizar malware para poder acceder a las cuentas de los usuarios y tomar el control sobre ellas, gracias a las nuevas medidas de seguridad de la compañía esta técnica es cada vez menos efectiva, por lo que se han visto obligados a buscar nuevas técnicas con las que poder sacar provecho de esta tienda online.



Recientemente, un investigador de seguridad de Bart Blaze ha detectado una nueva amenaza para los jugadores de Steam, esta vez en forma de extensión maliciosa para Google Chrome que se encarga de secuestrar la sesión de Steam desde el navegador y robar todos los objetos del inventario de las víctimas, enviándolos hacia otras cuentas controladas por ellos.

Estas extensiones ofrecían a los usuarios la posibilidad de cambiar el tema del navegador por uno basado en el conocido título de Valve, Counter Strike, sin embargo, la finalidad de la extensión era otra muy diferente, y es que una vez instalada la extensión se hacía con el control de nuestra cuenta (si habíamos iniciado sesión en la tienda) y enviaba todos nuestros objetos a una cuenta controlada por los piratas informáticos, dejando nuestro inventario totalmente vacío.

Algunos de los nombres que recibían estas extensiones son:


  • CSGODouble Theme Changer
  • CS:GO Double Withdraw Helper
  • Csgodouble AutoGambling Bot
  • Improved CSGODouble


Muchas de las extensiones maliciosas ya han sido eliminadas de la Chrome Store, aunque otras muchas aún están presentes en la tienda e incluso se siguen publicando más extensiones maliciosas con otros nombres, todos ellos similares. En cuanto a permisos, las extensiones son aparentemente inofensivas, pidiendo solo poder leer y modificar los datos en los sitios web que visitamos, algo suficiente para llevar a cabo el robo.

Los usuarios que tengan alguna de estas extensiones instaladas en su navegador pueden desinstalarla fácilmente como cualquier otra (es decir, haciendo clic sobre Menú > Más Herramientas > Extensiones y allí pulsando sobre el botón con forma de papelera para eliminar la extensión.


Saludos.
Lexer Pars.

jueves, 21 de enero de 2016

Desarrollando malware (Símbolo de sistema)

Continuando con el desarrollo del malware, incorporaremos una función que permita ejecutar comandos remotamente en el símbolo del sistema de la maquina infectada. Cabe mencionar que en la estructura del malware se tienen 2 tipos de comandos. Los comandos a nivel interno del malware, que permiten comunicarse con este, indicándole que habilite una función o  realice determinada acción y la otra consisten a comandos propios del sistema operativo.

Para lograr esto incluiremos una función en el malware, en el cual trabajaremos por defecto en el directorio C.

  Imagen 1: Función para lanzar comandos en el sistema operativo.

También definiremos un procedimiento para enviar el resultado del comando, al servidor.

 Imagen 2: Función enviar resultado de comandos.

Luego habrá que  definir los comandos internos en el malware, para indicarle cuando debe lanzar esta función, para ello hay que establecer dicho conjunto de reglas de comunicación el la lectura del socket.

  Imagen 3: Reglas de comunicación socket malware.

Establecemos las primeras reglas de comunicación en el malware, en la cual le indicamos que si recibe el comando CMD, asigne el valor de 1 a la variable, Consola, la cual serviría como control, indicándole que enviaremos  comandos al sistema operativo, hasta que reciba el comando CMD OFF, en el cual asignara el valor de 2 a Consola.

Luego tendríamos que definir las reglas de comunicación para el servidor y incorporar una interfaz con la cual recibiremos y enviaremos los comandos de la consola.

Saludos.

miércoles, 20 de enero de 2016

Ransomware Cryptear.B

Ransom Cryptear.B, es un ransomware que ha sido recientemente descubierto que secuestra todos los archivos del ordenador encriptándolos como la mayoría de ransomware, con la diferencia de que estos se pierden de forma definitiva.

Para saber algo más acerca de Ransom Cryptear.B, hay que remontarse hasta Hidden Tears, un particular ransomware distribuido por Internet que apareció durante el 2015, y que según sus autores fue creado con código abierto y para fines educativos. Por lo que se sabe, Hidden Tears incluía un fallo intencionado en su código diseñado así para que los usuarios pudieran experimentar en sus ordenadores siempre con la posibilidad de recuperar después sus archivos sin problemas.

Sin embargo según el equipo de seguridad de Trend Micro, alguien utilizó como base Hidden Tears para conseguir crear una variante de este ransomware transformándolo en Ransom Cryptear.B, capaz de encriptar los archivos del ordenador, haciendo imposible que el usuario infectado pueda recuperar sus datos.

Ransom Cryptear.B fue descubierto entre septiembre y diciembre de 2015 en un sitio web de Paraguay que ya ha conseguido infectar a multitud de usuarios. Cuando un usuario accede a dicha página es redirigido a una página web falsa de Adoble Flash donde se le insta a la actualización de este, instalándose en su lugar código malicioso.

A diferencia de otros ransomware, donde se secuestran los archivos de la víctima y se guarda en un servidor remoto la clave de desbloqueo, éste nuevo Ransom Cryptear.B no guarda la clave de encriptación, con lo que una vez que eres infectado se pierden los archivos de forma definitiva.


Imagen: Ransomware esquema básico infección.


Saludos.
Lexer Pars.

martes, 19 de enero de 2016

Desarrollando malware (conexión remota)

Continuando con el tema, después de tener una idea básica de algunas maneras en que se establece la comunicación con el malware, procederemos a desarrollar algunos procedimientos que permitan establecer una conexión remota. Definiendo un servidor que controle mediante comando el malware. 

Para lograr esto utilizaremos sockets. Para empezar, incorporamos un clientsocket y un timer en el malware.

   Imagen 1: Componentes timer y clientsocket en malware.

El timer, nos permitirá establecer la conexión, en este caso hay una cuestión a tomar en cuenta, la cual es que el servidor que controlara remotamente el malware puede no estar activo cuando el malware intente conectarse, para ello, el timer estará constantemente intentando conectarse con el servidor, dejara de intentarlo una vez que logre la conexión. Al desconectarse nuevamente, volverá a intentar conectarse.

Luego definimos las acciones, que realizara el socker, al conectarse, desconectarse o la ocurrencia de un error. Para la ocurrencia de errores, desactivamos los errores, para evitar interrupciones o generación de mensajes sospechosos al usuario. Al omitir la parte de los errores, si ocurre un error, dicho error se presentara en un mensaje al usuario, el usuario común, simplemente lo acepta, sin embargo un usuario algo de conocimientos, le dará seguimiento, dando origen a una exposición del malware. 


Imagen 2: Procedimientos de conexión en el socket.

Imagen 3: Conexión activa de malware.

Esto correspondiente al malware. Falta desarrollar el servidor. Para ello incorporamos un componente serversocket, con el cual recibiremos y enviaremos los comandos y data al malware.  

 Imagen 4: Código conexión servidor. 

Cabe mencionar que al activar el servidor, se requiere establecer las reglas en el corta fuego, para permitir el trafico, esto únicamente para el servidor.

Imagen 5: Alerta de seguridad firewall trafico.

Imagen 6: Conexión establecida con el malware.

Una vez establecida la conexión con el malware, habrá que definir mas funciones que permitan manipularlo mediante comandos, que se transmiten en el canal que ya hemos definido. 

Saludos.
Lexer Pars.   



lunes, 18 de enero de 2016

Desarrollando malware(Controlar remotamente el malware - Esquema de comunicacion)

Otro aspecto importante al momento de desarrollar el malware, es establecer un canal, por medio del cual se pueda controlar el malware de manera remota. Una arquitectura utilizada para lograr esto, es cliente/servidor. Esto implica que nuestros clientes o dispositivos infectados se conectaran a nuestra IP publica, ya sea de forma directa o utilizando un DNS. 

Imagen 1: Diagrama de red-comunicación dispositivos infectados con servidor. 

El servidor mantiene una configuración en las reglas del corta fuegos, tanto del sistema operativo, como del dispositivo de red. Ademas de mapear los puertos a la ip local. Por su parte el malware, tratara de conectar con el servidor, si se ha establecido un IP fija, la conexión se realizara de forma directa. Aunque cabe aclarar que eso no es tan común, pues los ciberdelincuentes, prefieren utilizar DNS, principalmente porque muchos poseen IP dinámica y desde luego no menos importante, evitar que haya un enlace directo a ellos.

Algunos servicios muy conocidos y utilizados para resolver este problema, es no-ip y dyndns. En el diagrama de red, se puede comprender, que el dispositivo infectado, inicialmente se conecta a Internet, para luego, consultar la IP al servidor de nombres de domino, cual es la IP donde esta situado el servidor.

Hay diferentes variantes, con el cual se pueden lograr un control remoto del malware y por ende del dispositivo infectado, servicios web, peticiones a paginas web, aplicaciones de escritorio, bases de datos,IRC etc. 

Cabe resaltar que el malware estará intentando conectarse  al servidor, cada cierto tiempo, en el caso de que este no este disponible, esto ya genera un comportamiento, con el cual podemos analizar el malware, pero que veremos mas adelante.

El servidor del malware que estamos desarrollando, estará en una aplicación de escritorio, donde especificaremos un conjunto de comandos, que permitirán realizar acciones de manera remota, sobre el dispositivo infectado.

Saludos.

domingo, 17 de enero de 2016

Desarrollando malware(Almacenado logs codificados)

Anteriormente habíamos concluido la función del Keylogger, para capturar el texto, distinguiendo de la ventana activa, capturando su Handler o identificador de ventana. Ahora incorporaremos una función que nos permita almacenar lo que Keylogger, cada cierto tiempo.

Para evitar que el texto sea completamente legible, por cualquier usuario, definiremos una función que nos permita codificar el texto, mediante la operación lógica XOR y una combinación de números aleatorios, que en realidad no son aleatorios, como ya muchos sabrán. En Delphi, podemos utilizar la función RandSeed, con la cual podemos inicializar, la generación de números aleatorios, de tal forma que podemos volver a inicializar nuevamente al momento de decodificar el texto.

Imagen 1: Función para codificar el texto.

Después de  definir la función, definimos un Timer, con el cual, estableceremos el tiempo, bajo el cual el malware, almacenara los logs. Para pasar un poco mas desapercibidos, utilizaremos una técnica de esteganografia, muy fácil, pero que ayudara a pasar los registros de manera desapercibida, el cual consiste en colocar una extensión diferente a un txt. Puedes usar la que mas se te antoje, en mi caso utilizare la extension .dll.

    Imagen 2: Procedimiento para almacenar el fichero.

Al momento de definir el nombre del archivo, yo opte por crearlo, utilizando la combinación de la hora, minutos,segundos y mili segundos, del sistema, almacenando los logs, en la misma ruta donde se almacena el malware. Luego de esto, al compilar de nuevo el malware, se puede apreciar los logs, guardados, con la extension definida, y con el texto no legible.

 Imagen 3: Logs generados por el malware.

Con esto, tenemos ya una función completa del malware, incorporaremos mas funciones, mas adelante y veremos posteriormente analizaremos las técnicas para poder analizar el malware.

Saludos.
Lexer Pars.

sábado, 16 de enero de 2016

Desarrollando un malware (Complementando Keylogger)

Complementando la función de Keylogger, incorporada al malware, incluiremos una procedimiento que nos permita capturar la ventana, para identificar en que ventana se esta capturando el texto. Esto con el fin de que los registros o logs que posteriormente almacene el malware, estén ademas de registrados por el tipo de ventana donde se dígito el texto, también se tenga un registro del tiempo en que fue digitado.

  Imagen 1: Función para capturar ventana.

Para lograrlo, debemos definir una función que nos permita capturar el nombre de la ventana. Esta función la tendremos que llamar desde un timer, en mi caso le he colocado 1 seg, en el cual, estará comprobando si existen un cambio en la ventana activa, si lo detecta, imprime el nuevo nombre de la ventana, y la captura del texto, se ingresara a partir, de esa ventana.

Imagen 2: Timer que imprime el nombre de la ventana.

Cabe mencionar que en el timer, utilizaremos una variable de tipo string, en mi caso la he llamado, 
Control_Ventana, la cual, se encarga de comprobar, que la ventana no sea la misma que esta activa, de esa forma, garantizar, que únicamente imprima el nombre de la ventana, cuando el nombre de la ventana activa difiera, del nombre preservado por Control_Ventana.  

Imagen 3: Captura de texto, con el nombre de la ventana.

Llegado a este punto, únicamente haría falta incluir, una función que permita almacenar el texto capturado, y cifrar dicho texto, de tal forma que no sea legible, para completar la primer función del malware.

Saludos.

viernes, 15 de enero de 2016

Desarrollando un malware (Keylogger)

Una función utilizada frecuentemente por el malware, es capturar el teclado que se este digitado, aunque hay malware que funcionan exclusivamente con esto, y son denominados Keyloggers.
Esta puede ser utilizado por controles parentales, para vigilar lo que tu hijo hace, los sitios que visita, con quien conversa en redes sociales, entre otras opciones. Sin embargo al ser utilizadas en malware, la única función que se cumple es la espiar, todo lo que escribas, contraseñas, tarjetas de crédito y cualquier información que pueda ser relevante para un ciberdelincuente.

Para lograr lo anterior, debemos incorporar un Memo, en el formulario, sobre el cual se incluirá cada tecla presionada, así como adicionar un timer, que permita capturar el evento.

   Imagen 1: Incorporando memo en formulario de malware.

Luego de esto, debemos definir un procedimiento, que escriba cada tecla sobre el memo, para ello, podemos escribir el siguiente código.

Imagen 2: Procedimiento para escribir letra en memo.

Una vez definido el procedimiento, con el cual escribiremos la tecla, en el memo, hay que escribir las instrucciones que permitan capturar el evento, en el cual se presiona una tecla, para ello escribimos el siguiente procedimiento.


Imagen 3: Procedimiento capturar teclado.

Con esto, la función del keylogger, quedaría incorporada en el malware que se estamos desarrollando, aunque, con esto el código, anterior únicamente capturamos el teclado, en el siguiente post, veremos, como almacenarlo, agregando una capa de seguridad, que permita que el texto no sea legible de manera directa. Ademas de integrarle una función complementaria al keylogger, que nos ayude a identificar sobre que aplicación se esta escribiendo.  

Imagen 4: Malware capturando teclado.

Saludos.

jueves, 14 de enero de 2016

'Hackean' cuentas personales de funcionario de EU

Apenas unos meses después de que se reportó que alguien se había infiltrado al correo personal del director de la CIA, John Brennan, un funcionario federal de Inteligencia confirmó que también fueron violadas cuentas personales en línea del director de Inteligencia Nacional, James Clapper.

Brian Hale, vocero del director, dijo el martes que la oficina de Clapper está enterada de la intrusión ilegal y reportó el incidente a las autoridades pertinentes. El portavoz se negó a proporcionar más detalles.

Una persona no autorizada para dar detalles sobre el tema, quien pidió no ser identificada, señaló que la Oficina del Director de Inteligencia Nacional estaba informada sobre el incidente antes de que fuera reportado por primera vez el martes por Motherboard, una revista y canal de video por internet dedicada a ciencia y tecnología. Motherboard reportó que el mismo pirata cibernético adolescente que ingresó ilegalmente a la cuenta de Brennan hackeó a Clapper.

Brennan dijo en octubre que estaba indignado porque alguien infiltró su cuenta de correo electrónico y publicó datos delicados, incluida su lista de contactos y el número de Seguro Social de su esposa. El ciberintruso ha dicho que es un alumno de secundaria que protesta contra la política de Estados Unidos. Señaló que engañó a la compañía Verizon para que le permitiera acceso a la cuenta de Brennan.

Brennan negó cualquier acción impropia de su parte y dijo que el incidente de infiltración subraya que la información personal de todo mundo es vulnerable en internet.

miércoles, 13 de enero de 2016

Desarrollando un malware (Ocultando su ejecución visual)

Anteriormente conocimos parte del comportamiento del malware, que permite ocultar el ejecutable, de tal forma que no sea perceptible, para su eliminación, en el caso, que el antimalware no lo elimine, sin embargo, ocultar su ejecución es otro tema que hay que abordar.

Para ocultar su ejecución, principalmente debe ocultarse cualquier consola o ventana que este tenga, así mismo puede inyectarse en otro proceso, de tal forma que no sea detectado en la lista de procesos que se están ejecutando.

En este caso veremos la técnica que permite ocultar la ventana, de manera que no sea visible durante la ejecución del malware, aunque si sera notorio la existencia de este, al visualizar la lista de procesos.

 Imagen 1: Ejecución actual del malware en construcción.

El malware que estamos desarrollando actualmente muestra la ventana y el icono en la barra de tareas, cambiamos las propiedades del malware para evitar esto, con el siguiente código.

  
Imagen 2: Código para ocultar la ventana del malware.

Luego de añadir las lineas de código, y realizar la ejecución del malware, que por cierto le coloque un bonito nombre, Guatebit, no aparece en el escritorio, aunque si esta presente en los procesos, del administrador de tareas.

Imagen 3: Ejecución del malware de manera "oculta".

Esta de unas de las técnicas antes mencionadas para ocultarse y pasar desapercibido el malware, en los próximos días continuaremos incluyendo mas funcionalidades al mismo.

Saludos.
Lexer Pars. 

martes, 12 de enero de 2016

Desarrollando un malware (persistencia y copiarse a si mismo)

Adentrándonos al tema de desarrollo de malware, un comportamiento usual en el malware es copiarse a si mismo, la razón puede variar, como lo puede ser simplemente alojar el malware en una ubicación poco común o que el usuario no frecuente, con el fin de no ser percibido. También puede ser objeto de propagación en dispositivos, para lograr una mayor de infección de dispositivos.      

Con Delphi, podemos lograrlo de la siguiente manera:

 Imagen 1: Código para copiar el malware y ocultar directorio.

Con el código anterior garantizamos que el fichero es almacenado en un directorio oculto, para que no pueda ser percibido por el usuario, aunque aun no hemos ocultado el malware como tal, ya que eso lo veremos mas adelante. Cabe mencionar que la ruta definida es una ruta muy fácil de ubicar, sin embargo, mucho malware, busca hospedarse en appdata, system32,Windows, etc. 

Para que el malware sea persisten podemos crear un servicio que se inicie cada vez que arranque el ordenador. En este caso escribiremos en el registro de Windows con el fin de de lograr dicha persistencia. Puedes escribir ya sea en HKEY_LOCAL_MACHINE o HKEY_CURRENT_USER.
La diferencia de estos radica en los privilegios que se necesita para escribir en cada uno, asi como el comportamiento que genera para el malware.

HKEY_LOCAL_MACHINE: Necesita privilegios de administrador en el equipo local, y los efectos sobre el malware, es que permitirá que cada vez que inicien sesión en el equipo, el malware se ejecutara independientemente del usuario.

HKEY_CURRENT_USER: No requiere privilegios de administrador, pero, el comportamiento del malware sera diferente, pues este únicamente se ejecutara cada vez que inicie sesión el usuario que ejecuto el malware. Si se inicia sesión con otra cuenta de un usuario diferente el malware no se ejecutara.

Con ambas opciones se puede lograr persistencia, Nosotros utilizaremos HKEY_CURRENT_USER.

Imagen 2: Definiendo un procedimiento para escribir en el registro de Windows.

Estas son unas técnicas básicas utilizadas en la creación de malware, mas adelante veremos otras técnicas utilizadas y como detectar las amenazas en el caso que tu antimalware no los detecte.

Saludos.