Un blog de Seguridad Informática, desde un punto de vista tecnológico

Entradas etiquetadas como “blackhat

BlackHat Europe 2011 – Resumen de Charlas (Parte III)

Buenas gente,

mi turno! 🙂

antes de nada me gustaría hacer una valoración general del evento: ha sido muy positivo, pero con muy poca presencia nacional! No sabemos si ha sido porque las Rooted CON fueron hace muy poquito, si es porque este año ya no ha sido novedad que se celebrasen en nuestro pais o simple casualidad, pero se podían contar con las manos a los paisanos 😦

También me gustaría enviar un fuerte abrazo a nuevos amigos de Argentina que tuvimos la oportunidad de conocer: Sebastian y Alfredo de Groundworks Technologies (que como ya ha comentado Pau dieron una brillante charla) y unos cuantos amigos más de Core (tenía una foto con Federico Muttis y la chica «anonymous» 😉 pero no la encuentro :P). Grandísimos!

Y ahora sí vamos a las charlas:

Día 1

[Application Dissection] The ABAP Underverse – Risky ABAP to Kernel communication and ABAP-tunneled buffer overflows / Andreas Wiegenstein

Personalmente esta charla me gustó mucho, ya que toca una temática que llevo un tiempo investigando: la seguridad en SAP. En concreto trató de vulnerabilidades en el lenguaje de programación utilizado en este sistema, conocido como ABAP.

Acerca de ABAP (Advanced Bussiness Application Programming):

  • Es un lenguaje propietario, y sus especificaciones completas no están disponibles
  • Es independiente de la plataforma (bytecode sobre ABAP Runtime)
  • La comunicación entre sistemas SAP se realiza mediante RFC (Remote Function Call)
  • El control de versiones y el sistema de transporte (entre entornos de desarrollo, QA, Producción) están integrados
  • Utiliza OpenSQL para el acceso a back-end (independiente del back-end utilizado)

Cosas muy interesantes explicadas durante la charla:

  • ABAP es un lenguaje susceptible a vulnerabilidades de tipo inyección SQL
  • En ABAP se puede inyectar código estático y ejecutarlo posteriormente
  • En ABAP se puede inyectar código dinámico y ecutarlo posteriormente (además este código se ejecuta on-the-fly y no quedan trazas)
  • El código ABAP customizado puede evadir restricciones de seguridad del estándar de SAP (p.e. el sistema de autorizaciones está disponible para su uso pero no es implícito)
  • ABAP es vulnerable a desbordamientos de buffer

Durante la charla se mostraron DEMOS de una inyección SQL que consultaba información en todos los mandantes, de inyección de código y de ruptura del servicio mediante la explotación de un desbordamiento de buffer.

[Keynote] Cyberwar/ Bruce Schneier

El archi-conocido Bruce Schneier nos habló de su visión y reflexiones acerca de la ciberguerra, así de cómo está afectando el creciente uso de este término en los gobiernos de las grandes potencias.

Os dejo los conceptos que más me gustaron:

  • El principal problema de la ciberguerra es que es un término que no está claramente definido
  • En la guerra tradicional, los gobiernos de las naciones tienen el control. La ciberguerra puede ser iniciada por ciudadanos
  • Es difícil saber quién te ataca y cómo, por eso es difícil protegerse
  • En la ciberguerra, el principal objetivo es controlar (por ejemplo como hace un APT), y el peor objetivo es destruir
  • Las tecnologías actuales dificultan la interceptación de las comunicaciones para los gobiernos, y por tanto para las labore de inteligencia. Es más fácil pinchar un teléfono que controlar todas las comunicaciones que puedan realizarse vía Internet (p.e. Skype, el chat de Second Life, etc.)
  • Un país es tan vulnerable en la ciberguerra como dependiente es del ciberespacio. Evidentemente los países más desarrollados suelen ser los más vulnerables.

Ya podéis ver el vídeo y comentar lo que queráis 😉


BlackHat Europe 2011 – Resumen de Charlas (Parte II)

Ya se ha acabado la experiencia BlackHat Europa 2011. Si tengo que resumir mi experiencia, que además es parcial, solo puedo decir: ¡muy recomendable! Sin duda, para repetir. Tanto por la exposición de contenidos de las charlas como por la gente que se tiene la oportunidad de conocer! Increíble 🙂

Tuve la oportunidad de asistir a dos charlas que me parecieron super interesantes a nivel de contenidos y muy bien llevadas a nivel de exposición:

  • «Escaping from Microsoft Windows Sandboxes» de Tom Keetch
  • «Building Custom Disassemblers» de Felix ‘FX’ Lindner

A continuación un resumen de ambas, y lo dicho, muy recomendable la lectura de los materiales a medida que se vayan publicando en el site de blackhat!

Escaping from Microsoft Windows Sandboxes

Interesante charla en la que se han repasado las opciones que ofrece el sistema operativo Windows para ofrecer sandboxing en espacio de usuario:

  • Restricted access tokens
    • Deny-Only SIDs (Discretionary)
    • Low Integrity (Mandatory)
    • Privilege Stripping (Capability)
  • Job Ojbect Restrictions
  • Windows Station Isolation
  • Desktop Isolation

A continuación, se han repasado y comparado las sandboxes de diferentes productos, concretamente:

  • Protected Mode Internet Explorer: Basado en el uso de «Low Integrity Levels»
  • Adobe Reader X: Un subconjunto del framework de sandboxing proporiconado por Google Chromium
  • Google Chromium: Ofrece la implementación más completa de las tres, ofreciendo un framework para proporcionar sandboxing con las diferentes técnicas ofrecidas por el sistema operativo Windows.

Y, finalmente, no podía haber sido de otra manera, Tom ha repasado algunas de las técnicas existentes para saltarse el sandboxing proporcionado por las facilities de Windows:

  • BNO Namespace Squatting
  • NPAPI Interface Exploits (Explotación de vulnerabilidades en plug-ins para saltarse el sandbox)
  • Handle Leaks
  • Clipboard Attacks

Building Custom Disassemblers

Gran trabajo presentado por Felix ‘FX’ Lindner, en el que repasa diferentes aspectos sobre el diseño e implementación de un desensamblador, en este caso para «S7», aunque utilizando un enfoque genérico y discutiendo técnicas a tener en cuenta a la hora de desarrollar un desensamblador para un bytecode.

Durante la charla además, se presenta la API que IDA para el desarrollo de un módulo que permita soportar un nuevo bytecode, y se repasa algunas «particularidades» 🙂 que se han encontrado durante el desarrollo del modulo para soportar el desensamblado de S7.

Además del proceso de desarrollo del mencionado desensamblador, durante la charla también se comentan aspectos interesantes acerca del análisis de las rutinas utilizadas por Stuxnet, a partir del desensamblador construido para S7. En definitiva, una presentación super completa y una exposición, en mi opinión muy acertada!