Mostrando entradas con la etiqueta Info sobre Hack-Seguridad. Mostrar todas las entradas
Mostrando entradas con la etiqueta Info sobre Hack-Seguridad. Mostrar todas las entradas

miércoles, 16 de marzo de 2016

De Foundation a Fandation -Un error que aborto un robo de 1000M€-.

Un error ortográfico (typo)en la instrucción a la hora de ordenar la transferencia bancaria ayudó a las autoridades a evitar el robo de cerca de mil millones de dólares al Banco Central de Bangladesh el mes pasado.

Así lo reveló uno de los funcionarios de la banca, cuyo ataque se produjo desde su cuenta en la Fed, el Banco de la Reserva Federal de Nueva York.

El ciberdelincuente que debía ordenar la transferencia a la Fundación Shalika, que se escribe en inglés "Foundation Shalika", escribió "Fandation Shalika". A pesar del error, los ciberdelincuentes consiguieron robar cerca de 100 millones de dólares, lo que supone uno de los mayores robos bancarios de la historia.

Esta semana el Banco de Bangladesh denunció el hecho del que fue víctima el 5 de febrero.

Según las primeras investigaciones, el ataque posiblemente proviene de China y consistía en realizar varias transferencias a diferentes cuentas en distintos países asiáticos desde la cuenta en la Fed por valor de unos 100 millones de dólares.

Los ciberdelincuentes violaron los sistemas del Banco de Bangladesh y robaron sus credenciales para realizar las diferentes transferencias de pago. A continuación, bombardearon el Banco de la Reserva Federal de Nueva York con casi tres docenas de peticiones para mover el dinero de la cuenta del Banco de Bangladesh a Filipinas y Sri Lanka.

Tras cuatro órdenes, por un valor de 81 millones de dólares, llegó la quinta por valor de 20 millones.

En ese momento, el delincuente debía ordenarla el traspasado a la ONG "Foundation Shalika". Sin embargo se confundió al escribir mal el nombre de la supuesta organización sin ánimo de lucro de Sri Lanka. Fue cuando saltaron todas las alarmas.

A partir de ese momento, los piratas se dieron cuenta de que ya no podían ejecutar su plan al completo: aún les quedaba por ordenar transferencias por un monto de unos 870 millones de dólares. Todas ellas fueron abortadas.

El Banco de Bangladesh trabaja por recuperar parte del dinero robado aunque en realidad tiene pocas esperanzas de conseguirlo o de localizar a los delincuentes que se esconden tras este ataque.

Además, culpa a la Fed de no detectar el robo y detener, por tanto, las operaciones. La entidad de Nueva York, sin embargo, aseguró que sus sistemas no se rompieron.

Fuente: The hackers News.

jueves, 21 de mayo de 2015

Tunelizar conexiones de manera selectiva en Windows.

El trabajo de un auditor, administrador de seguridad, etc.., requiere que en su día a día tenga que estar conectado, y siempre hablando de determinados escenarios, a varias redes, establecer conexiones con un origen específico, uso de conexiones VPN, etc..

El otro día, hablando con Jose Selvi vía telefónica sobre cosas mundanas y terrenales, me comentaba que en su portátil con Windows había tenido que configurar este tipo de cosas.
Es interesante destacar que, como hemos comentado en anteriores párrafos, en determinados escenarios puede ser interesante encaminar cierta parte de nuestro tráfico a través de distintas redes. Como principal ejemplo Selvi me comentaba que esto lo hacía cuando no gestionaba el EndPoint – por ejemplo una VPN que no controlamos – y que no le gustaba que cierto tráfico de su propiedad se pudiese ver “comprometido” o dar facilidades de acceso al mismo a un tercero.
Hay muchas opciones y muchos escenarios en donde también es interesante habilitar este tipo de configuraciones, como por ejemplo si necesitamos utilizar la salida de una determinada herramienta para alimentar a otra y no queremos andar “parseando” tráfico local nuestro. Otro ejemplo se puede dar cuando en determinadas auditorías exigen que se entregue una bitácora de peticiones – por ejemplo en formato PCAP – a modo de auditoría.

En Linux esto es posible realizarlo a través de netfilter/iptables y con las opciones de PREROUTING. Para hacerlo en Windows necesitamos entender cómo se gestionan y se crean conexiones de tipo VPN para luego poder encaminar los datos que necesitemos.

 Cuando Windows genera una conexión VPN y nos conectamos a través de ella, el sistema operativo crea una ruta por defecto en la que se indica que todo nuestro tráfico lo encaminará a través de dicha conexión, y será el servidor final el que tendrá que realizar una acción de forwarding en caso de que se utilice también como conexión a Internet. Esto se puede verificar una vez conectados a la VPN con un simple route print.


En caso de que no queramos que todo el tráfico pase por la VPN, en Windows pasa por configurar la nueva conexión de acceso remoto y desmarcar las opciones de Default Gateway en IPv4 e IPv6. Para ello, y en tus conexiones de red, debes configurar esta opción en la pestaña Networking de tu conexión de acceso remoto.


Una vez desmarcada esta opción, usaremos la flexibilidad del comando route, y generaremos las entradas necesarias para encaminar el tráfico deseado por la conexión VPN. Para ello necesitamos conocer varios elementos:

    Dirección - Rango de direcciones – Redes completas a encaminar
    Número de interfaz

El número de interfaz se puede averiguar con el propio comando route print, o también a través del instrumental de administración de Windows.

 Una vez tengamos estos datos, podremos utilizar la flexibilidad que nos otorga la creación de rutas para generar la nuestra. En el caso de que necesitemos generar una ruta para una dirección IP concreta, se podrá utilizar el siguiente comando:



En caso de necesitar que la ruta fuese persistente, se puede hacer uso del flag –p. Una vez realizado este paso para cada una de las direcciones IP o redes concretas, la próxima vez que nos conectemos a través de esa red VPN, todas las conexiones realizadas desde nuestro equipo a esas direcciones IP, se encaminarán a través de la conexión remota. El resto de peticiones se realizará con nuestra conexión local.
Si se desea realizar esto de manera masiva – por ejemplo a través de Directorio Activo y a un número determinado de equipos – se puede realizar a través de PowerShell y políticas de grupo. Para los interesados Microsoft ha generado un documento con scripts de ejemplo, el cual puedes descargar desde la siguiente dirección:

http://www.microsoft.com/en-us/download/details.aspx?id=2555

Los servicios y aplicaciones Microsoft permiten determinados tipos de configuraciones y vías de fortificación con mucha flexibilidad y a través de múltiples vías. Para los que estéis interesados en este tipo de tips y escenarios de fortificación avanzados, Lorenzo Martínez, uno de los editores de SecurityByDefault, me ha invitado a dar unas sesiones en el curso de Hardening de Sistemas Windows, Linux e Infraestructuras, y del cual estoy encantado de participar junto a buenos ponentes y amigotes, como Pedro Sánchez o Yago Jesús. Si quieres más información, así como un índice del mismo, puedes consultar el siguiente enlace:

https://www.securizame.com/curso-online-de-hardening-de-sistemas-windows-y-linux-e-infraestructuras_jg/

Fuente: http://www.securitybydefault.com/2015/05/tunelizar-conexiones-de-manera.html

jueves, 13 de noviembre de 2014

19 años después Microsoft resuelve un error en Windows.

El gigante de la informática estadounidense Microsoft publicó un parche urgente para resolver un error de programación en su sistema operativo Windows y su paquete de aplicaciones Office que existió durante 19 años.

Parche: https://technet.microsoft.com/library/security/MS14-066
Investigadores de IBM descubrieron en mayo el "bug" -que algunos nombran como WinShock- y llevaban meses trabajando para resolver el problema, que hace vulnerables a las computadoras.
El problema ha estado presente desde la versión Windows 95, según IBM y facilitaría a un pirata aprovechar el error para controlar de manera remota una computadora.
Microsoft no había hecho público el problema hasta ahora, por eso pide a los usuarios que se apresuren a descargar e instalar el parche.

Vulnerabilidad

Microsoft enfrentó el problema en su actualización mensual de seguridad, con el lanzamiento de 14 parches y dos más a salir pronto.
En su blog, Robert Freeman, investigador de IBM, explica la vulnerabilidad del sistema: "El error puede ser usado por un atacante para acceder remotamente a la computadora de un usuario y asumir su control".
En seguridad de computadoras, semejante ataque significa hacer que los usuarios descarguen software malicioso.
La vulnerabilidad fue calificada como 9,3 sobre 10 en una escala de medidas sobre la severidad de tales ataques.

Seis cifras







Heartbleed
El error ha sido comparado con Heartbleed, un importante problema de seguridad que también afecta a la transferencia segura de datos.

El error también existe en las plataformas del servidor Windows de Microsoft, poniendo en riesgo la seguridad de los sitios web que manejan datos cifrados.
Específicamente, explica Dave Lee, reportero tecnológico de la BBC, se relaciona con el canal seguro de Microsoft, conocido como Schannel, empleado para implementar la transferencia segura de datos.
Schannel se suma a otros canales de seguridad, como Apple SecureTransport , GNUTLS, OpenSSL y NSS, a los que se les ha descubierto grandes errores este año.
Expertos en seguridad han comparado esta reciente falla a otros problemas significativos que salieron a relucir este año, como el llamado "Heartbleed".
Sin embargo, indican que aunque su impacto podría ser igual de importante, sería más difícil de aprovechar para los atacantes.
Es probable que el costo del "bug" probablemente sobrepasara las seis cifras si fuera vendido a piratas informáticos, señalaron los investigadores.

Fuente: http://www.bbc.co.uk/mundo/ultimas_noticias/2014/11/141112_ultnot_tecnologia_microsoft_parche_windows_office_az

martes, 12 de agosto de 2014

Fallo en dispositivos USB convierten estos en un grave peligro para la seguridad.

Hoy en día usamos las conexiones USB para prácticamente cualquier cosa que se nos ocurra, y por eso el descubrimiento de una vulnerabilidad que permite la ejecución de malware es especialmente grave. El aviso llega de parte de los investigadores Karsten Nohl y Jakob Lell, que la semana que viene explicarán en detalle el proceso por el que consiguieron encontrarla; sí que han podido adelantar un par de detalles, como que esta vulnerabilidad no se puede parchear porque nace de la propia manera en la que USB está diseñado.
Ataque basado en el propio estándar USB

Para demostrar las posibilidades de semejante agujero de seguridad, crearon un malware llamado BadUSB quepuede ser instalado en cualquier dispositivo USB ya que no utiliza su memoria flash de almacenamiento, sino que se guarda en el propio firmware que se encarga de enseñar al sistema operativo cómo usar el dispositivo; gracias a esto es capaz de pasar desapercibido ya que no aparece como un archivo sospechoso cuando insertamos el USB. Una vez que accede al sistema, este malware es capaz de tomar el control completo del PC, copiar archivos de la memoria USB sin que el usuario lo sepa, o incluso hacerse pasar por un teclado USB y escribir y controlar lo que quiera. También puede cambiar las DNS del sistema para hacernos visitar páginas falsas que se hacen pasar por las originales. Las posibilidades son casi infinitas para los atacantes.


Como este firmware forma parte del estándar USB, todos los dispositivos cuentan con él, así que todos son sospechosos de llevar código malicioso, no solo memorias USB sino también ratones, teclados, sticks Bluetooth… cualquier dispositivo que se nos ocurra. Podemos pasarle todos los antivirus que queramos, podemos eliminar todos los archivos que consideremos peligrosos, pero hasta que un ingeniero no realice ingeniería inversa sobre el firmware no se dará cuenta de que hay algo que no debería estar.


Lo peor de todo es que aunque sepamos los riesgos de usar dispositivos USB, no podemos hacer gran cosa para evitar que nos infecten ya que desde el mismo momento en el que lo introducimos en uno de los puertos de nuestro PC estamos perdidos. La única solución fiable es no usar USB y quitar los puertos si sospechamos que podemos ser atacados por gente con acceso rápido a nuestro PC; lo único que tiene que hacer el atacante es insertar el USB, así que un movimiento rápido sin que nos demos cuenta es suficiente. Los investigadores creen que a partir de ahora los USB deberían tratarse como agujas hipodérmicas, que no deberíamos compartir con el prójimo por las posibles infecciones.


Unos investigadores que aún están ponderando si liberarán el código de su malware; por una parte es seguro que será usado por gente con malas intenciones, pero por otra los usuarios tenemos derecho a saber exactamente qué bugs tienen nuestros dispositivos. Además, cuantos mas expertos en seguridad y hackers “White Hat” (hackers éticos que buscan mejorar la seguridad) vean el problema, es mas probable que se encuentre una posible solución.

Fuente: articulo escrito por Adrian Raya y obtenido de omicrono.com

domingo, 3 de agosto de 2014

Cómo saltarse fácilmente el filtro regional de YouTube para ver cualquier vídeo

Si estás cansado de que YouTube te niegue contenido por el país donde te encuentras, te ofrecemos tres soluciones sencillas para saltarte el filtro y disfrutar de cualquier vídeo bloqueado en tu región.

Si hay cosas verdaderamente molestas en Internet, son los filtros regionales que imponen muchos servicios. Dependiendo del lugar que vivas, a ciertas empresas no les parece que tengas el mismo derecho que otros a disfrutar de los contenidos. Uno creería que esas empresas obtendrían más beneficios al llegar a más personas, y al contar con un público más grande, tener más clientes o audiencias a la que vender. Pero esa lógica de dividir la Internet como si se tratase de la tierra, donde se crean murallas y fronteras, para ciertos entes sigue siendo la "correcta", y un mal supuestamente necesario.

Seguramente más de una vez te ha pasado que al querer ver un vídeo en YouTube o en otro sitio de este tipo, te muestra un lindo aviso de que el contenido está bloqueado en tu región. Saltarse este tipo de restricciones es bastante sencillo (al menos por ahora) y en Bitelia te damos varias alternativas para que puedas ver cualquier vídeo de YouTube bloqueado en tu país.

ProxFree

ProxFree es un servicio de Proxy gratuito para la web, solo necesitas ingresar en el cajón, la dirección al vídeo de YouTube que quieres ver y elegir un país específico para la IP que deseas utilizar. Puedes usar uno en Estados Unidos o en otros 9 países, incluyendo varios del Reino Unido, en caso de que quieras ver por ejemplo, vídeos de la BBC que solo están disponibles en los países británicos. Es una buena opción porque no tienes que instalar nada, ni mantener ningún programa corriendo en el fondo, solo pegar el enlace al vídeo en la web y listo.

ProxMate


ProxMate es una aplicación que proxifíca el contenido de las páginas que navegas, pero que promete no reducir tu velocidad de Internet como la mayoría de los VPN o proxys gratuitos. Puedes instalar la extensión para Google Chrome, o el complemento para Firefox. Y funciona de manera gratuita con YouTube, y varios sitios como Pandora, Hulu, Spotify, etc.

Hola

Hola es un servicio de proxy y VPN gratuito muy popular del que hemos hablado ya en varias ocasiones. Cuenta con aplicaciones para Windows, Mac y Android, así como extensiones para Chrome, Firefox e Internet Explorer. Solo lo instalas y eliges un país para acceder a cualquier sitio como si estuvieses en el. Es uno de los mejores, y casi 100% infalible.

Cualquiera de estas 3 opciones es válida, con la primera no necesitas instalar nada, con la segunda y la tercera sí, y obtienes acceso a casi cualquier sitio bloqueado por región, no solo YouTube. Además tampoco te invaden de publicidad, y puedes mejorar el servicio si pagas una suscripción.

FUENTE: http://bitelia.com/2014/03/ver-videos-bloqueados-youtube

sábado, 26 de julio de 2014

Empezar desde 0 y ser profesional de la seguridad en 2 meses.

Es algo sistémico: siempre llegan al buzón de correo muchas preguntas relacionadas a cómo empezar en el mundo de la seguridad para dar el paso a la parte profesional.

En muchas ocasiones son estudiantes, gente que está cursando ingenierías tecnológicas, y también hay un nutrido grupo de personas que trabajan en informática (desarrollo / sys admin) que les apetece iniciarse en este apasionante mundo, con la esperanza de convertirlo en su profesión.

Sin duda hay mucha información en internet, muchos blogs, tutoriales, recursos, cursos y libros. Cada uno puede iniciarse como más se ajuste a su forma de mejorar sus 'skills', pero a mi particularmente me gusta seguir un método basado en libros. Creo que es el pilar sobre el que debería sustentarse toda formación. Un libro siempre va a estar ahí, es 'consultable' y se puede leer en modo diagonal (para luego incidir en temas específicos) o leerlo letra-por-letra.

Dado que Chema, a través de la editorial 0xWord, ofrece un montón de interesantes packs de libros, me voy a tirar al ruedo y voy a crear mi propio pack llamado: De 0 a profesional de la seguridad en 2 meses

Ahora que es verano y que a la gente le suele sobrar tiempo, es el momento ideal de aprovechar estos calurosos meses para dar un giro al expediente profesional. Asumiendo el criterio de 1 libro x 1 semana. 8 libros = 8 semanas = 2 meses

Los libros que he seleccionado son bajo criterio personal, los habrá mejores, los habrá distintos, incluso el orden puede variar según gustos, pero, esta es mi elección:

La base: Mucha gente cae una y otra vez en el error de empezar por libros de hacking e intentar dar el 'super salto' de la nada a un libro que hable de SQLI o exploiting. En mi humilde opinión es un fallo, aquí aplica el famoso 'dal cela pulil cela', antes de llegar a lo divertido, conviene tener una formación de base sobre seguridad en sistemas operativos lo más extensa posible. Antes de romper: saber como está fortificado.


Para mi, el mejor libro sobre seguridad en Windows, todos los resortes, mecanismos y el conocimiento necesario sobre cómo funciona un sistema Windows

Una vez estés harto de claves de registro, políticas de seguridad y ventanas, tu siguiente paso es cambiar todo eso por la línea de comandos, una shell y dominar al indómito Linux


¿Te han gustado los sistemas operativos? Todavía te falta un paso más antes de saltar al pentesting: Las redes. Es asombroso la cantidad de personas que llegan a adquirir un nivel muy respetable en pentesting que luego flaquean mucho en temas de red. Por eso, es importante entender cómo funciona IPV4 y el que se presupone será su descendiente IPV6


Momento de empezar a sacar partido a los conocimientos que has adquirido y empezar a conocer herramientas para saber encontrar vulnerabilidades y explotarlas. Relájate, no es necesario que este libro lo termines en una semana, puedes dedicarle un poco más de tiempo. Lo merece


El libro con el que, sin duda, más te vas a divertir. ¿El motivo? básicamente que hoy día hay miles y miles de sitios con este tipo de vulnerabilidades, apuesta a que en tu futura actividad profesional vas a rellenar mil informes con este tipo de vulnerabilidades.


Una vez hayas terminado este libro, sentirás que se te han desbloqueado un montón de conocimientos que, hasta ese momento, pensabas que estaban reservados a un selecto grupo de personas. Ojo ! este libro requiere poner los 5 sentidos.


En este punto deberías tener un conocimiento técnico muy elevado, conoces y dominas la forma en la que un sistema puede ser vulnerable, tanto a nivel Web como a nivel interno. Has usado un buen número de herramientas, pero ... como dice el anuncio: la potencia sin control no sirve de NADA. Y esto es 100% cierto en el mundo profesional. De nada vale tener un ninja si luego no es capaz de tener método y saber ser ordenado mentalmente para rematar un buen trabajo. Este libro te aportará orden mental y formas de presentar tu trabajo con estilo profesional.


Por último, pero no por ello menos importante, creo que es de alta relevancia que un buen profesional de la seguridad adquiera conocimientos de informática forense. Es una disciplina muy 'CSI', en la que se puede desarrollar un alto grado de creatividad.

Fuente: http://www.securitybydefault.com/2014/07/de-0-profesional-de-la-seguridad-en-2.html

viernes, 25 de julio de 2014

Putin quiere controlar TOR a base de talon, de momento 100.000€

TOR ha demostrado ser una auténtica molestia para organizaciones y gobiernos que quieren controlar qué partes de Internet visitamos; de ahí que sea objetivo constante de ataques y que su código esté constantemente bajo lupa. Curiosamente, Rusia ha optado por una opción bastante directa: ofrecer recompensas para el que consiga crackear TOR para obtener información de los usuarios de su red. También es llamativo que solo empresas dentro de la lista blanca del gobierno ruso para trabajar en proyectos secretos puedan aplicar a la oferta, lo que apunta a un uso político de posibles vulnerabilidades descubiertas. La recompensa es de casi cuatro millones de rublos, que al cambio son unos 111.000 dólares o unos 83.000€.

Rusia va a por TOR

Rusia es un país que ha vivido muchas polémicas en los últimos años relacionadas con la persecución de ideas políticas, así como el tratamiento a homosexuales; por su parte los perseguidos han empezado a usar software que garantice el anonimato en Internet, y TOR es uno de estos programas.

Por eso el FSB (sucesor del KGB) ha pedido en varias ocasiones a los legisladores rusos que prohíban su uso; sin embargo, esta oferta para crackear TOR no viene del FSB sino del ministerio del Interior, por lo que puede que el objetivo no sea la represión política.


En vez de eso el líder del Partido Pirata ruso, Stanislav Sharikov cree que el objetivo es la pornografía infantil que abunda en ciertos lugares de la red TOR; eso no quita que si finalmente se encontrase una vulnerabilidad esta pueda ser aprovechada con otros fines. Al fin y al cabo, este mismo discurso es el que EEUU repite para justificar sus propios ataques a nodos de la red TOR, pero en realidad las principales detenciones realizadas hasta ahora se basan en cargos de tráfico de drogas.

Fuente: http://globalvoicesonline.org/2014/07/24/russia-tor-privacy-nsa/

jueves, 4 de julio de 2013

Descubierto un fallo de seguridad que afecta al 99% de los terminales Android.

Está claro que no hay ningún sistema 100% seguro, y por desgracia hoy nos toca sufrir a los usuarios de Android tras la revelación por parte de un grupo de investigación de seguridad informática. Y es que nuestro apreciado sistema operativo sufre un fallo de seguridad que estaría afectando al 99% de los terminales, así que no es una cuestión para tomarse a la ligera.

El grupo de investigación de Bluebox ha descubierto que es posible manipular un APK (archivo de aplicación) sin romper su firma criptográfica, que es lo que la hace que el sistema “confíe” en ella. Así que es posible convertir una aplicación legítima en un troyano sin levantar sospechas tanto desde el propio sistema, como desde Google Play.  La cosa es muy seria, ya que este fallo está presente desde Android 1.6 Donut, con lo que el número de terminales afectados puede ser muy elevado.

Según cifras de la propia Bluebox la vulnerabilidad podría afectar a 900 millones de terminales y la afectación de este fallo podría suponer desde el robo de nuestros datos hasta la creación de redes de terminales “zombies” desde las cuales operar. Según advierten esto puede resultar potencialmente peligroso con aplicaciones de los fabricantes, puesto que estas tienen privilegios bastante elevados del sistema.

El fallo, que se reportó a Google en Febrero, y por el momento no existe ningún parche que corrija este problema. Consultada la compañía californiana al respecto, han declinado hacer comentarios, pero algunos cambios en el acceso de las aplicaciones de forma que se bloquearía el acceso a las apps con este agujero denota que Google está trabajando en ello. Desde luego esperamos tener más noticias positivas en breve, ya que se trata de uno de los fallos de seguridad más graves de Android hasta la fecha.

Fuente: http://www.elandroidelibre.com/2013/07/revelado-un-fallo-de-seguridad-que-afecta-al-99-de-los-terminales-android.html

domingo, 27 de enero de 2013

Evasión de Antivirus: ¿Por qué vulnerabilidades conocidas y antiguas siguen siendo peligrosas?.


Antes de entrar en la parte técnica y llegar a la programación, donde seguramente muchos lectores dejen de leer, quiero hacer una pequeña introducción para todos los públicos.

En este artículo voy a escribir un poco sobre lo fácil que es burlar la protección de un antivirus sin tener que recurrir a técnicas complejas y algoritmos "vanguardistas" como encoders, polimorfismos, metamorfismos y demás ingenios, que muchas veces nos llevan a la falsa creencia de que un posible intruso o creador de malware debe ser un genio de los ordenadores, y como hay pocos genios es difícil que nos toque. De hecho un gran porcentaje de incidentes de seguridad se produce aprovechando vulnerabilidades o malware antiguos, que a priori todo antivirus detectaría fácilmente de no haber sido modificados.

Eso, sumado a la falsa seguridad que nos proporciona el software como los antivirus o firewalls hace que la gran mayoría de la gente no preste la atención que debiera a la seguridad de sus sistemas (ya no vamos a entrar en el recalcado tema de cómo escoger una buena contraseña).

Se invierten millones de euros en investigación de protecciones de seguridad informática y existe todo un gran mercado en torno a ello, pero al final del día el mejor antivirus, y la mejor protección que"podría" existir para nuestros ordenadores es el propio usuario (aunque desgraciadamente, todavía siga siendo lo contrario). Muchas veces me han pedido consejo para escoger un antivirus, o me han preguntado que antivirus utilizo, y cuando yo contestaba "ninguno" se quedaban un poco sorprendidos. Si bien hoy en día si utilizo, es verdad que he estado muchísimos años sin utilizarlos.

A lo que quiero llegar es que fuera del mundillo de la seguridad informática, se sigue confiando la seguridad un 100% a programas como los antivirus, la gente se siente protegida con ellos, lo cual es contraproducente. Pequeñas cosas como mantener actualizados todos nuestros programas, ser cuidadosos con las cosas que descargamos o controlar que servicios tenemos corriendo en nuestras máquinas en cada momento quedan relegados a un segundo plano (muchísima gente ni siquiera le da importancia a no actualizar), aunque no infalible, minimizan mucho los riesgos, convirtiendo un antivirus en una capa de protección más, y no en la más importante.

Dicho esto, y después de asustar un poco a los no iniciados (esa era la intención), entremos al lío.


De todos es sabido que los antivirus basan casi el 90% de su detección en la búsqueda de signatures, partes de código reconocibles como maliciosas o sospechosas se que van actualizando en sus bases de datos de firmas según se descubren nuevos virus o exploits.

Para camuflar este tipo de firmas en malware, una de las cosas que más se están utilizando son encoders de todo tipo, que manipulan ese código detectable convirtiendolo en otro diferente que hace la misma función, pero a la larga esos encoders se vuelven inefectivos porque siguen un patrón que puede detectarse con análisis heurístico. Incluso el famoso y polimórfico shikata ga nai es inefectivo hoy en día, por muchos pases que se apliquen.


Por regla general, un antivirus realiza el análisis de los archivos tanto cuando se escriben en disco como cuando son ejecutados, pero no monitoriza toda la ejecución del mismo, porque eso requeriría de unos recursos de los que una máquina normal hoy en día no dispone (imaginad que cada vez que se ejecutase un Photoshop u otro programa intensivo computacionalmente, el AV tuviese que monitorizar en todo momento todas las operaciones que realiza).

Sin embargo existen técnicas que le pueden poner las cosas muy difíciles a un antivirus, incluso a los análisis heurísticos, y que sólo un análisis exhaustivo por parte de un humano en un entorno sandboxpodría detectar (algo impensable para la detección en tiempo real).

Algo de lo que adolecen los antivirus es que analizan los archivos independientemente, y no como un conjunto de archivos que forman una pieza de software. Y desgraciadamente deben hacerlo así para evitar multitud de falsos positivos.

Por ejemplo, en uno de los últimos exploits Java (CVE-2012-1723), compuesto por varias clases empaquetadas en un jar, detectaba la firma sólo en dos de ellas, donde se ejecutaban las funciones sospechosas, con lo que separando esas firmas en clases diferentes se podía anular la detección muy fácilmente.

Sin entrar en detalles, este exploit se basa en type confusion, asignando una clase con funciones que requieren privilegios de sistema a otra clase de distinto tipo que no los requiere, saltándose el sandbox java de ese modo. El antivirus detectaba el exploit en la clase que forzaba la confusión (llamemosle confusor), y en un par de líneas de código de otra clase, donde se creaba la instancia del confusor (probablemente para detectar variantes del exploit donde el confusor fuese diferente).

No fue necesario utilizar ningún tipo de ofuscación de clases sobre el exploit:

Para el confusor bastó con cambiar un bucle for de 100 iteraciones por 110 para que el antivirus ya no lo marcase como peligroso.

En cuanto a la clase donde se creaba la instancia de forma reflectiva, el AV lo detectaba cuando estas dos líneas aparecían juntas en el mismo archivo, pero separandolas de una manera extremadamente trivial, neutralizamos totalmente lo que el AV daba por sentado como malicioso:




Como se puede apreciar, realizando pequeñas modificaciones al código, y sobretodo separando las partes del código sospechosas en diferentes lugares es muy sencillo desaparecer de la lista de firmas del AV. De este modo y con un poco de creatividad podríamos ocultar incluso ROP chains, heap sprays...,  pilares de muchos exploits modernos.

Para continuar, y ya que hemos utilizado el exploit java para demostrar cómo evadir el antivirus durante la fase de explotación, vamos a ver como ocultar también un payload, ya que las shellcode más comunes suelen ser detectadas per se como firmas.

Hemos modificado el código del exploit de java para evitar el antivirus, pero en cuanto añadiesemos a la ecuación nuestra shellcode (por ejemplo un meterpreter https reverso), volvería a ser detectado. Dado que el exploit en java no nos limita en tamaño a la hora de weaponizarlo con un payload, y como ya nos hemos saltado el sandbox java, ¿por qué ejecutar la shellcode directamente desde el exploit, cuando podemos volcar un ejecutable a disco y lanzar la shellcode desde allí? Podría parecer una estupidez hacer una escritura a disco dando al AV una oportunidad extra de análisis, pero como veremos más adelante evitar la detección de la explotación asumiendo ese riesgo tiene sus ventajas si nos encargamos de ocultarlo bien en la fase post-exploit, donde contamos con más flexibilidad para hacerlo.


Como se puede apreciar, hemos convertido los binarios en cadenas de texto (los he truncado por legibilidad), los hemos almacenado en variables (separados en dos mitades), y los recodificamos a binario antes de escribirlos a disco, consiguiendo que el AV no los detecte al analizar el paquete Java.

Con eso ya estamos separando el payload del propio exploit (recordad, separación es la clave), pero tendremos que conseguir que el payload sea también indetectable.

Para ello vamos a utilizar varios trucos. En primer lugar, cogeremos nuestra shellcode y la partiremos en 2 mitades (una vez más). Con eso ya sería suficiente, pero para este ejemplo, además, he creado un sencillo "encoder" que hace rotaciones de bits en cada byte de la shellcode y luego los invierte, con la intención de camuflarla un poco. Así que ya tenemos dos mitades de nuestro meterpreter, previamente scrambled con el miniencoder.


Si sólo utilizaramos el encoder sobre la shellcode entera, el antivirus podría reconocerla con algo de heurística, pero de este modo aunque aplique la heurística a cada mitad, no se encontrará con la shellcode completa, con lo que no la reconocerá como firma.

Podríamos crear un sencillo ejecutable que lanzase esa shellcode, pero aquí vamos a utilizar otro truco para engañar aún más.

Crearemos un ejecutable normal (payload.exe), con una función trivial que no haría saltar jamás al antivirus, porque no realiza ninguna acción sospechosa, pero utilizaremos unas librerías dinámicas para sobreescribir esa función trivial con nuestra shellcode en tiempo de ejecución, y ya en memoria:



Debemos configurar el compilador para que no utilice el NX/XD (DEP) ni base dinámica (ASLR), de este modo la dirección de memoria que sobreescribiremos en nuestro programa no variará en cada ejecución, ni la memoria estará desorganizada por el ASLR, lo cual sería un problema para escribir secuencialmente.

Como veis, y para esta demostración, la función inofensiva() está compuesta por una serie de NOPs (o cualquier otra cosa), para hacerla más fácil de encontrar en nuestro debugger, y debe tener el tamaño suficiente para albergar nuestra shellcode una vez la sobreescribamos.

Lo ejecutamos en el debugger para localizar la dirección donde comienza dicha función:


Dado que en este caso el programa comienza a ejecutarse en 400000, nuestro offset para comenzar a sobreescribir será 53F0, que es el punto de entrada de la función.

Un análisis por parte del antivirus sobre el ejecutable no revelaría nada ya que el código de la shellcode no sobreescribe la función inofensiva() hasta que cargamos las librerías.

Como hemos partido la shellcode en 2 mitades, crearemos dos DLL (shellcode1.dat yshellcode2.dat), una con cada mitad (una vez más, separación), de este modo el AV aunque analice cada DLL en disco, no encontrará nada.



En MY_OFFSET establecemos la posición de memoria en tiempo de ejecución donde debe empezar a sobreescribir. Decodificamos nuestra media shellcode anteriormente “revuelta”, y la escribimos donde estaba la función inofensiva().

VirtualProtectEx, así como otras que permiten API hooking, es una de las funciones más vigiladas por un antivirus dado que abre las puertas a escribir en memoria en tiempo de ejecución, pero como hemos dicho antes, solo estamos escribiendo media shellcode, y es por esa razón por la que no saltará la alarma, y es a lo que me refería con que un antivirus escanea archivos independientes, y no como un conjunto.


También habréis notado que utilizo sleeps para pausar la ejecución. Es solo una sospecha personal infundada, pero aunque retrasa la ejecución del payload creo que algunos antivirus (especialmente los que quieren vendernos que casi no comen recursos al ordenador) dejan de analizar si el proceso que monitorizan es lento, especialmente si es un bucle, para ahorrar recursos y no interferir en la experiencia del usuario. Y también para tratar de que el AV no “relacione” una función con la anterior, aunque supongo que eso ya es un raciocinio humano que no se aplica a una máquina ;)


Para la segunda DLL, solo tenemos que cambiar la segunda mitad de la shellcode y el offset para continuar escribiendo en la posición donde terminó la primer mitad.

Algo que podríamos hacer para enrrevesarlo aún más (aunque para no complicarlo demasiado no lo hemos hecho aquí), sería empezar escribiendo la segunda parte de la shellcode, y luego la primera (simplemente invirtiendo el orden en el que hacemos el LoadLibrary), con lo cual nos curamos en salud ante un posible análisis secuencial de lo que estamos escribiendo en memoria.

Ya para terminar, vamos a añadir una capa más de separación, utilizando un ejecutable (spawner.exe) , el cual es el verdadero ejecutado por nuestro exploit java y que será el encargado de lanzar el payload (Nota: he hecho esto porque a día de escribir el código, el reverse https terminaba el proceso al cabo de unos minutos si no se establecía una conexión):




Este pequeño programa también es inofensivo a los ojos del AV, y lo único que hace es monitorizar si existe el proceso de nuestro payload, y si no es así, lo relanza.

Además, como hemos creado una entrada en el autorun del registro (lo cual podría resultar sospechoso para el AV), siempre es mejor que el "sospechoso" sea este nuestro spawner inofensivo, y no el que carga las librerías del payload.


Resumiendo:

  • Hemos lanzado nuestro exploit en java, ya modificado, con lo cual el antivirus no lo ha detectado. 

  • El exploit ha volcado 4 archivos al directorio temporal de Windows. El AV los analiza en el momento en que se escriben a disco. Dos de ellos son ejecutables inofensivos, con lo cual no los detecta. Los otros dos son las librerías donde está la shellcode, pero son dos archivos independientes, el AV tampoco detectará una shellcode completa. 

  • Se ejecuta nuestro lanzador inofensivo, el AV no lo detecta en la ejecución. Se ejecuta el payload lanzado, y el AV analiza qué trata de hacer (una función inofensiva), también analiza las DLL al cargarlas (pero cada una realiza la sobreeescritura por separado, tampoco las detecta). Llegado ese punto la shellcode ya está reemplazando la función inofensiva(), pero el AV ya no puede detectarlo, ya que para ello tendría que volver a analizar la ejecución completa del programa en memoria y darse cuenta que el código fue sobreescrito, algo que requeriría muchos más recursos, y que en un programa más complejo sería demasiado intensivo. 


Hemos engañado al antivirus sin rompernos la cabeza con algoritmos imposibles, simplemente separando código malicioso en diversos trozos y lugares, y ejecutandolo de una forma poco convencional (sobreescribiendo una función ya existente). Podríamos haber utilizado otros trucos sencillos, como crear un programa con un overflow deliberado y explotarlo para lanzar la shellcode (algo que el antivirus jamás se "imaginaría"), en lugar de integrarla en el propio programa como una función más.

En el hipotético caso de que esto fuese un malware real, ya conocido, y con las firmas añadidas a un antivirus, bastaría con partir en más trozos todavía el código para que el AV dejase de detectarlo, y se convertiría en el juego del gato y el ratón.


¿Soluciones? Pues es bastante complicado. Para que los antivirus pudiesen conseguir una detección robusta no basada en firmas conocidas deberían ser capaces de monitorizar todos los procesos que ocurren en una máquina en todo momento, de relacionar esos procesos entre si de forma racional, tendrían que ser capaces de descubrir automáticamente vulnerabilidades en los programas (sin saber de antemano que las tienen); en definitiva, ser una inteligencia artificial que a día de hoy solo es ciencia ficción. Y necesitarían utilizar prácticamente la totalidad de los recursos de la máquina dejando una pequeñísima parte para el resto de procesos.

Fuente: http://www.securitybydefault.com/2013/01/evasion-de-antivirus-por-que.html

viernes, 18 de enero de 2013

Vulnerabilidad crítica 0-Day en millones de routers cisco.


La empresa de seguridad informática Defense Code asegura haber detectado una vulnerabilidad de día cero en routers de Linksys, subsidiaria de Cisco.

Linksys es uno de los mayores fabricantes mundiales de equipos para redes, con 70 millones de routers vendidos.

En un comunicado, Defense Code asegura haber contactado a Cisco hace varios meses con el fin de informarles sobre la vulnerabilidad de acceso root, detectada en la instalación estándar de los routers de Linksys. Defense Code habría entregado a Cisco una descripción detallada de la vulnerabilidad, acompañando ejemplos de la forma en que sería posible explotarla.

Cisco habría respondido que la vulnerabilidad estaba solucionada mediante una actualización de la última versión de su firmware. Defense Code desmiente lo anterior, señalando que la vulnerabilidad continúa presente en la última versión oficial del firmware, versión 4.30.14, recalcando que todas las versiones anteriores también serían vulnerables.

El agujero en cuestión sería demostrado en el siguiente vídeo, en que se ha probado un router Linksys WRT54GL. Aunque Defense Code no lo prueba con ejemplos concretos, la vulnerabilidad también afectaría a otros productores de Cisco.

La empresa de seguridad informática anuncia que publicará todos los detalles técnicos de la vulnerabilidad dentro de las próximas dos semanas, exhortando a Cisco a actuar con rapidez para solucionar definitivamente el problema de seguridad.

Fuente: http://diarioti.com/detectan-vulnerabilidad-critica-en-millones-de-routers-de-cisco/60316

Vulnerabilidad crítica en Java 7u10.


Java
Oracle está pasando por momentos incómodos durante estas últimas semanas, la última actualización de Java(7 u10) contenía una grave vulnerabilidad, tanto así que los expertos en seguridad informática recomendaban desinstalar el software por completo. El 13 de enero Oracle anunció una nueva actualizaciónque se suponía solucionaría todos los problemas pero no fue así, en tan solo 24 horas encontraron una nueva vulnerabilidad y el exploit se encuentra a la venta por $5.000 USD.
El día lunes, el administrador de un foro dehackers publicó un mensaje a su comunidad asegurando que vendería el nuevo exploit a dos afortunados compradores por la modesta cantidad de $5.000 USD.
Una parte del mensaje que dió el vendedor:
Hay otra vulnerabilidad en la última versión de Java 7. No voy a entrar en detalles, excepto con los compradores seriamente interesados. ¿Qué obtendrás? los archivos sin encriptar para crear el exploit, el código fuente y una versión lista para ejecutarse.
El problema es grave, el vendedor ha prometido versiones del código fuente del exploit y toda la asesoría para ejecutarlo a los posibles dos compradores, que al parecer ya fueron encontrados, ya que el mensaje ha desaparecido del foro del cual se desconoce su nombre. Esta situación no es aislada, ya había ocurido ante en el mes de octubre del año pasado y también fue monetizado el exploit por el mismo sitio.
Oracle aún no da una declaración al respecto sobre la nueva vulnerabilidad en Java, ni se espera un nuevo parche, así que aún se recomienda desinstalar el software para no sufrir ningún tipo de ataque por parte de los hackers o bien, tener mucho cuidado en los sitios web que visitas. Lamentablemente para muchos usuarios será imposible omitir del uso de Java en sus navegadores y sólo queda esperar a que Oracle ponga manos a la obra y solucione todos los problemas que tienen con el software.

Fuente: http://alt1040.com/2013/01/vulnerabilidad-en-java

sábado, 22 de diciembre de 2012

Blackhole kit 2.0. El kit de exploits del momento.

Blackhole es el kit del momento. Lo usan los profesionales para infectar de forma cómoda a los navegantes. La herramienta se encarga de elegir el exploit adecuado según navegador, plugins instalados, sistema operativo... Y por supuesto, ese exploit hará lo que el atacante haya elegido (normalmente robar los ahorros del banco de la víctima). Se ha creado la versión 2.0, que trae importantes mejoras para el atacante, y malas noticias para los analistas.

Nació en 2010, después de desbancar a Eleonore. Según Sophos, el 28% de todas las amenazas web están basadas en Blackhole. Para AVG, son el 91%. En realidad, estas cifras tan dispares no dicen nada, solo que realmente es popular. Podemos asegurarlo por experiencia propia.

Uno de los creadores ha escrito en un foro ruso (cómo no), que ya está disponible la versión 2.0, destinada principalmente a eludir a los antivirus y mejorar el control del que usa el kit. Han reescrito desde cero una buena parte del código. Veamos funciones que nos parecen interesantes.

Ahora las URLS desde donde se descargan los payloads, son dinámicas y válidas solo por unos segundos. Luego desaparecen. Consiguen así que los cazadores de malware lo tengan muy complicado para recopilar muestras (jar y exe) de forma automática, o recuperarlas después de una infección, en los forenses. También permite elegir el formato de la URL de descarga del payload. Incluso tomar palabras de un diccionario, como una especie de firma del que lo use. En la versión 1, se usaba esta estructura:

http://domnioblackhole.com/xxx/main.php?page=0123456789abcdef
  
para la descarga del payload. Este esquema era ya reconocible (adiós a las reglas de los IDS) y han decidido que sea personalizable.
  
1-Han mejorado la detección de las versiones de Java vulnerables, la joya de la corona del kit (el programa que más víctimas le reporta).
Han hecho limpieza de exploits, eliminando los más antiguos, que reportaban poco. También los que no siempre funcionaban y podían causar que el navegador se colgase (con el objetivo de pasar aún más desapercibidos). Sin embargo, parece que dejan algunos para el obsoleto IE6, que todavía es "común", como el MDAC.  Además, usarán (cómo no) un pack para explotar Java y la vulnerabilidad LibTiff para los lectores PDF (de 2010). Por supuesto, esto es ampliable.
    
2-Si uno de los exploits es detectado por más de un número configurable de antivirus, será descartado y reemplazado automáticamente.
    
3-Para los usuarios de Chrome (los únicos a los que no ataca), Blackhole 2.0 permitirá crear una página HTML estática en la que se indicará que esa URL debe ser visitada con cualquier otro navegador. Chrome no interesa a los atacantes porque la ejemplar implementación de su sandbox les hace difícil que los exploits de los plugins funcionen.
  
4-También mejora la seguridad. Ahora el panel permite bloquear el tráfico que les llegue sin referer. Significa que rechazará las peticiones directas. Estas suelen ser de las personas que conocen su existencia y no vienen redirigidas de ningún sitio. Además permite prohibir tráfico TOR, los referer que se deseen, etc.
    
5-Con respecto al panel de control, añaden nuevos sistemas operativos como Windows 8, Android y iOS. Los móviles parece que están ahí para estimar el tráfico generado por los nuevos dispositivos. También mejora la visibilidad de las versiones de Adobe y Java que poseen las visitas, para afinar los exploits de forma cómoda. Por último, lo protegen con CAPTCHA, para que alguien obtenga acceso al panel por fuerza bruta.
Dicen además que han incluido otras mejoras, que prefieren mantener ocultas para no alertar a las casas antivirus.

¿Cuánto cuesta?

El creador mantiene los precios, a pesar de las mejoras.

Alquiler: 50 dólares al día (con 50.000 hits como límite). Al mes son 500 dólares de alquiler. La licencia para uso libre, va desde los 700 dólares por tres meses, a los 1.500 por usarlo un año. Se ofrecen posibilidades como cambios de dominio del panel de administración por 20 dólares. Existe otro servicio de "limpieza" por 20 dólares. Creemos que se refiere a eliminar de la base de datos de infectados las direcciones IPs conocidas de investigadores, casas antivirus, honeypots, etc.

Nuestra experiencia es que Blackhole es muy sofisticado, mucho más que el panel de Zeus, que tanto nos sorprendió en 2006. Además, vulnerabilidades recientes son incorporadas al kit de forma rápida. Se encuentra muy distribuido y ha conseguido posicionarse en todo tipo de páginas, legítimas o no, de forma que cualquier usuario puede infectarse si es vulnerable a alguno de sus exploits, aun manteniendo una rutina de navegación "higiénica". Por ejemplo, Blackhole es el kit más usado actualmente para infectar con Zbots, y el famoso "virus de la policía". El éxito de difusión de ambas familias habla por sí solo.

Fuente: http://unaaldia.hispasec.com/2012/09/blackhole-kit-20-facilidades-en-la.html