Hardware Backdooring is practical. Jonathan Brossard (Toucan System) Florentin Demetrescu (Cassidian)



Similar documents
Installing the Operating System or Hypervisor

Bypassing Local Windows Authentication to Defeat Full Disk Encryption. Ian Haken

Supply Chain (In-) Security

How To Protect Your Computer From Being Hacked By A Hacker (For A Fee)

BOOTKITS: PAST, PRESENT & FUTURE Eugene Rodionov ESET, Canada Alexander Matrosov Intel, USA David Harley ESET North America, UK

Absolute Backdoor Revisited. Vitaliy Kamlyuk, Kaspersky Lab Sergey Belov, Kaspersky Lab Anibal Sacco, Cubica Labs

Race to bare metal: UEFI and hypervisors

IPMI: Understanding Your Server s Remote Backdoor

Security Security by Separation

Dell Client BIOS: Signed Firmware Update

Kaspersky Endpoint Security 10 for Windows. Deployment guide

User Manual. HitmanPro.Kickstart User Manual Page 1

Implementation and Implications of a Stealth Hard-Drive Backdoor

Getting Started with Symantec Endpoint Protection

Locking down a Hitachi ID Suite server

Creating a More Secure Device with Windows Embedded Compact 7. Douglas Boling Boling Consulting Inc.

Hacking Satellite TV receivers : Are those IoT devices secure?

CMPT 471 Networking II

A M D DA S 1. 0 For the Manageability, Virtualization and Security of Embedded Solutions

Hi and welcome to the Microsoft Virtual Academy and

Intelligent Power Protector User manual extension for Microsoft Virtual architectures: Hyper-V 6.0 Manager Hyper-V Server (R1&R2)

Dell UPS Local Node Manager USER'S GUIDE EXTENSION FOR MICROSOFT VIRTUAL ARCHITECTURES Dellups.com

Automating Linux Malware Analysis Using Limon Sandbox Monnappa K A monnappa22@gmail.com

EXPLORING LINUX KERNEL: THE EASY WAY!

What the student will need:

Intel Cyber-Security Briefing: Trends, Solutions, and Opportunities

Did you know your security solution can help with PCI compliance too?

USB Bare Metal Restore: Getting Started

Virtually Secure. a journey from analysis to remote root 0day on an industry leading SSL-VPN appliance

Ethical Hacking and Information Security. Foundation of Information Security. Detailed Module. Duration. Lecture with Hands On Session: 90 Hours

ALTIRIS Deployment Solution 6.8 Preboot Automation Environment

SecureDoc Disk Encryption Cryptographic Engine

USB Flash Drive User s Manual

FORBIDDEN - Ethical Hacking Workshop Duration

Hacking databases for owning your data. Cesar Cerrudo Esteban Martinez Fayo Argeniss (

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 2 Systems Threats and Risks

Chapter 5: Fundamental Operating Systems

Secure Storage. Lost Laptops

Migrating to ESXi: How To

Post-Access Cyber Defense

Enterprise Cybersecurity: Building an Effective Defense

Best Practice Document Hints and Tips

Pentesting Mobile Applications

Building A Secure Microsoft Exchange Continuity Appliance

Operating System Installation Guidelines

Avalanche Remote Control User Guide. Version 4.1.3

The Value of Physical Memory for Incident Response

5 Steps to Advanced Threat Protection

ClearOS Network, Gateway, Server Quick Start Guide

Cryptography and Network Security Prof. D. Mukhopadhyay Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

DeployStudio Server Quick Install

Getting Started. Symantec Client Security. About Symantec Client Security. How to get started

Chapter 8: Installing Linux The Complete Guide To Linux System Administration Modified by M. L. Malone, 11/05

TABLE OF CONTENTS NETWORK SECURITY 2...1

Who is Watching You? Video Conferencing Security

BIOS Update Release Notes

Frontiers in Cyber Security: Beyond the OS

Attacking Hypervisors via Firmware and Hardware

2.5" XTreme Files OS & Data Backup/Restore User Manual Please read the Instruction manual before using the XTreme Files (X Series) 1.

Analysis of advanced issues in mobile security in android operating system

How To Secure Your Computer With Libreware Libreroview (Windows) And Libreros (Windows 2) (Windows 3.5) (For Windows) (Powerpoint) (Networking)

SecureSwitch: BIOS-Assisted Isolation and Switch between Trusted and Untrusted Commodity OSes!

SCADA and Security Are they Mutually Exclusive? Terry M. Draper, PE, PMP

Windows 7. Qing Liu Michael Stevens

Computer Security DD2395

OS Security. Malware. Radboud University Nijmegen, The Netherlands. Winter 2014/2015

AIR FORCE ASSOCIATION S CYBERPATRIOT NATIONAL YOUTH CYBER EDUCATION PROGRAM UNIT THREE. Computer Basics and Virtual Machines.

74% 96 Action Items. Compliance

UEFI on Dell BizClient Platforms

Protecting Data with Short- Lived Encryption Keys and Hardware Root of Trust. Dan Griffin DefCon 2013

LBSEC.

Hardware Enabled Zero Day Protection

Network Defense Tools

SonicWALL PCI 1.1 Implementation Guide

Intel vpro. Technology-based PCs SETUP & CONFIGURATION GUIDE FOR

NI Real-Time Hypervisor for Windows

UEFI SECURE BOOT IN MODERN COMPUTER SECURITY SOLUTIONS

A Tale of One Software Bypass of Windows 8 Secure Boot. Yuriy Bulygin Andrew Furtak Oleksandr Bazhaniuk

A+ Guide to Software: Managing, Maintaining, and Troubleshooting, 5e. Chapter 3 Installing Windows

Comprehensive Malware Detection with SecurityCenter Continuous View and Nessus. February 3, 2015 (Revision 4)

Loophole+ with Ethical Hacking and Penetration Testing

Oracle Solaris Security: Mitigate Risk by Isolating Users, Applications, and Data

CIT 480: Securing Computer Systems. Malware

Detecting Malware With Memory Forensics. Hal Pomeranz SANS Institute

Endpoint protection for physical and virtual desktops

Server Remote Control External KVM over IP. StarTech ID: SV1110IPEXT

FIPS Security Policy 3Com Embedded Firewall PCI Cards

Symantec Endpoint Protection 11.0 Architecture, Sizing, and Performance Recommendations

Attacking Intel Trusted Execution Technology

Persistence Mechanisms as Indicators of Compromise

For Windows XP 64 bit

CounterACT 7.0 Single CounterACT Appliance

Configure thin client settings locally

Transcription:

Hardware Backdooring is practical Jonathan Brossard (Toucan System) Florentin Demetrescu (Cassidian)

DISCLAIMER We are not «terrorists». We won't release our PoC backdoor. The x86 architecture is plagued by legacy. Governments know. The rest of the industry : not so much. There is a need to discuss the problems in order to find solutions... This is belived to be order of magnitudes better over existing backdoors/malware

Agenda Motivation : state level backdooring? Coreboot & x86 architecture Flashing Coreboot on a motherboard State of the art in rootkitting, romkitting Introducing Rakshasa Evil remote carnal pwnage (of death) Why cryptography (Truecrypt/Bitlocker/TPM) won't save us...

Could a state (eg : China) backdoor all new computers on earth?

A bit of x86 architecture

Demo : flashing Coreboot on a motherboard

State of the art, previous work

Previous work Early 80s : Brain virus, targets the MBR 80s, 90s : thousands of such viruses 2007, John Heasman (NGS Software) Blackhat US: backdoor EFI bootloader 2009, Anibal Saco and Alfredo Ortega (Core security), CanSecWest : patch/flash a Pheonix-Award Bios 2009, Kleissner, Blackhat US : Stoned bootkit. Bootkit Windows, Truecrypt. Load arbitrary unsigned kernel module. 2010, Kumar and Kumar (HITB Malaysia) : vbootkit bootkitting of Windows 7. Piotr Bania, Konboot : bootkit any Windows (32/64b)

DEMO : Silently Bootkitting windows 2008

Introducing Rakshasa

Goals : create the perfect backdoor Persistant Stealth (virtually undetectable) Portable (OS independant) Remote access, remote updates State level quality : plausible deniability, non attribution Cross network perimeters (firewalls...) Redundancy

Rakshasa : design Core components : Coreboot SeaBios ipxe payloads Built on top of free software : portability, non attribution, cheap dev (~4 weeks of work), really hard to detect (without false positives). Payload : Reverse Engineered/Refactored konboot payload (2 days of work).

Rakshasa Flash the BIOS (Coreboot + PCI roms such as ipxe) Flash the network card or any other PCI device (redundancy) Boot a payload over the network (bootkit) Boot a payload over wifi/wimax (breach the network perimeter, bypasses network detection, I(P D)S ) Remotely reflash the BIOS/network card if necessary

Rakshasa : embedded features Remove NX bit (from BIOS or PCI) =>executable heap/stack. Remove CPU updates (microcodes) Remove anti-smm protections (=>local root) => Permantent lowering of the security level on any OS. Welcome back to the security level of 1999. => Persistant, even if HD is remove/restored. Optionally : Disable ASLR (bootkitting) by patching the seed in kernel land on the fly on Windows.

Rakshasa : remote payload Bootkit future Oses Update/remove/reflash firmwares (PCI, BIOS) Currently capable of Bootkitting any version of Windows (32b/64b) Use a minimal linux initrd in case we want to mount/modify the filesystem (/etc/shadow on any UNIX like, add new account with ADMIN privileges on Windows, enable remote desktop possibly enable dual remote desktop on Windows XP Pro by patching 2 dlls...)

Rakshasa : stealthness We don't touch the disk. 0 evidence on the filesystem. We can remotely boot from an alternate payload or even OS : fake Truecrypt/Bitlocker prompt! Optionally boot from a WIFI/WMAX stack : 0 network evidence on the LAN. Fake BIOS menus if necessary. We use an embedded CMOS image. We can use the real CMOS nvram to store encryption keys/ backdoor states between reboots.

Rakshasa : why using Coreboot/ SeaBios/iPXE is the good approach Portability : benefit from all the gory reverse engineering work already done! Awesome modularity : embbed existing payloads (as floppy or cdrom images) and PCI roms directly in the main Coreboot rom! Eg : bruteforce bootloaders (Brossard, H2HC 2010), bootkits without modification. Network stack : ip/udp/tcp, dns, http(s), tftp, ftp... make your own (tcp over dns? Over ntp?)

PCI rom from scratch (asm) section.text ;-------------------------- ; Bios expension ROM header ;-------------------------- db 0x55 ; Signature db 0xaa ; Signature db 17 ; number of sectors

DEMO : Evil remote carnal pwnage (of death) I can write blogs too... Muhahahaha...

Rakshasa Flash the BIOS (Coreboot + PCI roms such as ipxe) Flash the network card or any other PCI device (redundancy) Boot a payload over the network (bootkit) Boot a payload over wifi/wimax (breach the network perimeter, bypasses network detection, I(P D)S ) Remotely reflash the BIOS/network card if necessary

How to properly build a botnet? HTTPS + assymetric cryptography (client side certificates, signed updates) Fastflux and/or precomputed IP addresses If Microsoft can do secure remote updates, so can a malware! Avoid DNS take overs by law enforcement agencies by directing the C&C rotatively on innocent web sites (are you gonna shut down Google.com?), use assymetric crypto to push updates.

Why crypto won't save you...

Why crypto won't save you... We can fake the bootking/password prompt by booting a remote OS (Truecrypt/Bitlocker) Once we know the password, the BIOS backdoor can emulate keyboard typing in 16b real mode by programming the keyboard/ motherboard PIC microcontrolers (Brossard, Defcon 2008) If necessary, patch back original BIOS/ firmwares remotely.

How about Avs?? Putting an AV on a server to protect against unknown threats is purely cosmetic. You may as well put lipstick on your servers...

Example : 3 years old bootkit

Example : 3 years old bootkit (+ simple packer)

Realistic attack scenarii

Realistic attack scenarii Physical access : Anybody in the supply chain can backdoor your hardware. Period. Flash from a bootable USB stick (< 3mins). Remote root compromise : If (OS == Linux) { flash_bios; } else { Pivot_over_the_MBR ; }

Realistic attack scenarii Purchase pre-backdoored hardware

BONUS : Backdooring the datacenter

Remediation

Remediation (leads) Flash any firmware uppon reception of new hardware with open source software Perform checksums of all firmwares by physically extracting them (FPGA..) : costly! Verify the integrity of all firmwares from time to time Update forensics best practices : 1) Include firmwares in SoW 2) Throw away your computer in case of intrusion Even then... not entirely satisfying : the backdoor can flash the original firmwares back remotely.

Side note on remote flashing BIOS flashing isn't a problem : the flasher (Linux based) is universal. PCI roms flashing is (a bit of) a problem : vendor dependant...

Detecting network card manufacturer from the remote C&C IPXE allows scripting. Eg : sending the MAC address as an URL parameter. From the MAC, get the OUI number serverside. From the OUI number, deduce manufacturer Send the proper flashing tool as an embedded OS to the backdoor...

Questions?