DefCon 23, Las Vegas 2015
Staying Persistent in
Software Defined Networks
Gregory Pickett, CISSP, GCIA, GPEN
Chicago, Illinois
gregory.pickett@hellfiresecurity.com
Hellfire Security
Overview
White Box Ethernet
Stupid Is As Stupid Does!
Exploiting it!
Moving Forward
Wrapping Up
What Is It?
Standard Hardware (“Blank” Slate)
Running Merchant Silicon
Trident and Broadcom Chipsets
Intel, AMD, and PowerPC
processors
Common Operating System
(Often Linux-Based)
Critical for Software Defined
Networking
Can Be Used Without It!
Why Do It?
Reduced Cost
Flexibility
Control
Traditional
DevOps
Software Defined Networking
Open Compute Project
Started By Facebook
Total Redesign of Existing
Technology To Meet Emerging
Needs
Specifications for Server,
Storage, and the Data Center
Designed to be efficient,
to be inexpensive, and to be
easy to service
Open Compute Project
Vanity Free and Minimalistic
Not Tied To Brands or Anything
Proprietary
Components Are Abstracted
Therefore … Interchangeable
Open Network Install Environment (ONIE)
Firmware for bare metal network switches
Boot Loader for Network Operating Systems (NOS)
Grub/U-Boot Underneath
Facilitates Installation and Removal of NOS
Comes Pre-Installed
Automates Switch
Deployment
White Box Ethernet and ONIE
What Could Go Wrong?
Weaknesses (Operating System)
Privileged Accounts
No Root Password
Doesn’t Force You To Change It!
Management Services
Uses Telnet
SSH
Installation Mode (18-bits Entropy)
Recovery Mode (26-bits Entropy)
Weaknesses (Installer)
Predictable URLS
Exact URLs from DHCPv4
Inexact URLs based on DHCP Response
IPv6 Neighbors
TFTP Waterfall
Predictable File Name Search Order
No Encryption or Authentication for
Installs
Weaknesses (Implementation)
Exposed Partition
No Secure Boot
What Does This Mean?
Lot’s Of Opportunities to Blow It Up!
Here’s How
Compromise It’s Installations
Via Rogue DHCP Server
Via IPv6 Neighbor
Via TFTP
Compromise It
Forced Reboot Entry
Sniffing/MiTM (Telnet or SSH)
Even Better
Compromise It
Get Past Network Operating System
Modify ONIE
Exposed Partition
No Secure Boot
Now You’re In the Firmware …
Now You’re There Forever!
DEFCON 23 - Gregory Pickett - staying persistant in software defined networks
Network Operating Systems (NOS)
Gets Installed By ONIE
Operates the Switch
ONIE-Compatible Distributions
Open Network Linux
Switch Light
Cumulus Linux
MLNX-OS
Open Network Linux
Linux distribution for "bare metal"
switches
Based On Debian Linux
Bare-Bones with No Features
Development Platform Only
Maintained by Open Compute
Project
Switch Light
Linux distribution for "bare metal"
switches
Packaged Open Network Linux
Indigo Openflow Agent
Extension of Big Switch
Fabric (SDN)
Maintained by Big Switch
Networks
Cumulus Linux
Linux distribution for "bare metal"
switches
Based On Debian Linux
Puppet/Chef/Ansible Agent
Network Automation and
Orchestration (DevOps)
Maintained by Cumulus
Networks
MLNX-OS
Linux distribution for "bare metal" switches
Based On Enterprise Linux 5 (Red Hat Enterprise
Linux 5)
Puppet/Chef/Ansible/eSwitch
Agent
Network Automation and
Orchestration (DevOps) or
Controller (SDN)
Maintained by Mellanox
Weaknesses (Agent)
No Encryption and No Authentication
Switch Light (Indigo)
MLNX-OS (eSwitch)
Out-Dated OpenSSL
Switch Light (Actually No SSL Used! WTF?)
Cumulus Linux (OpenSSL 1.0.1e Puppet)
MLNX-OS (OpenSSL 0.9.8e-fips-rhel5)
Could Lead To …
Topology, Flow, and Message Modification
through Unauthorized Access
Add Access
Remove Access
Hide Traffic
Change Traffic
Information Disclosure through Exploitation
Switch Light (Indigo)
MLNX-OS (eSwitch)
Cumulus Linux (Puppet)
Weaknesses (Agent)
Running As Root
Switch Light (Indigo)
Cumulus Linux (Puppet)
Vulnerable Code
Lot’s of MEMCPY (Indigo)
Could Lead To …
But Still, It’s Kind Of Scary …
Weaknesses (Operating System)
Out-Dated Bash
Switch Light (Bash version 4.2.37 )
Cumulus Linux (Bash version 4.2.37)
MLNX-OS (Bash version 3.2.9)
Weaknesses (Operating System)
Default (and Fixed) Privileged Accounts
Switch Light
admin
root (hidden/disabled)
Cumulus Linux
cumulus
root (disabled)
MLNX-OS
admin
root (hidden/disabled)
Weaknesses (Operating System)
Doesn’t Force You To Change Default
Passwords for Privileged Accounts
Switch Light (admin)
Cumulus Linux (cumulus)
MLNX-OS (admin)
Weaknesses (Operating System)
Easy Escape to Shell
Switch Light (enable, debug bash)
Cumulus Linux (N/A)
MLNX-OS (shell escape)
Instant Elevation
Switch Light (N/A)
Cumulus Linux (sudo)
MLNX-OS (su)
Remember that
disabled root account?
Could Lead To …
Full Control of Your Network through
Unauthorized Access
Add Access
Remove Access
Hide Traffic
Change Traffic
Compromise of Firmware
through Unauthorized
Access
Switch Light
Cumulus Linux
MLNX-OS
Switch Light
Cumulus Linux
MLNX-OS
Like So …
admin:x:0:0::/root:/usr/bin/pcli
Exposed ONIE Partition
Exposed ONIE Partition
Once More With Feeling!
Why?
Disabled Root Accounts Can Still Be Used If
Logged In Already!
Just Need Shell Access
Since they are hidden from user, highly likely
their passwords won’t be set!
Just one “su”, and you are in …
This Means
Is One Key Logger Away!
Scenario (Demo)
End-User System (Windows)
Drive-By Web Attack/Phishing Email
Key Logging for Default Accounts
SDN Discovery (Southbound API)
Second Stage Attack
Network Operating System (Linux)
Compromised Login
Plant and Start Binaries (Backdoor)
Scenario (Demo)
ONIE
Planted Binaries Added
“onie-nos-install” Shell Script Modified
Wait! Our Switch Is Infected!
Backdoor Accessible
Even from the Internet (Pivoting)
Scenario (Demo)
Environment Refresh
onie-nos-install Downloads And Executes nos Installer
Afterwards
Adds Planted Binaries Back
Set’s Run-Level!
Resurrection!
Backdoor Accessible
Even from the Internet (Pivoting)
Delivery (Demo)
Metasploit Setup
use exploit/multi/browser/java_jre17_jmxbean
set EXE::Custom pathtoCustom.exe
set payload windows/meterpreter/reverse_https
Drive-By
Demo Site
Click Link
Redirect to Known Good
Malware (Demo)
Assumptions
Management Station (Windows-Based)
Switch
Linux-Based
Southbound APIs Running
Management Plane
Not Accessible from Internet
Accessible from Management Station
Malware (Demo)
Methods (First Stage)
Scanning
Openflow Ports (6633, 6653)
SSH Banners
Exploitation
SSH Client
Wrapper Escape Commands
Binary Planted
Cross-Compiled for Demo-OS (netcat)
Delivered Via printf | dd
Yes, I know It’s Ugly!
Malware (Demo)
Methods (First Stage)
ONIE Modified (Shell Commands Modify onie-nos-install)
Pivot (Reverse HTTP)
Methods (Second Stage) (netcat)
Malware (Demo)
Development
First Stage
Python Script Compiled
Only Several Megabytes In Size
Second Stage
netcat from source
Demonstration
Malware (Improvements)
First Stage (Additional Exploitation)
Bash
Second Stage (Custom)
Attacks
Network Modification and Manipulation
Attacks Against Loopback Services (Escalation)
Evasion
Recovery from ONIE Upgrade
Various Linux …
Worming
And Now Some Pwnage …
Sorry Cumulus Linux!
Zero-Day Exploit
Cumulus Linux Has Several Command-Line Tools
cl-bgp, cl-ospf, cl-ospf6, cl-ra, and cl-rctl
Meant To Be Used By Reduced Privilege “admin”
Commands Processed By “clcmd-server.py” On Unix
Sockets
Command Injection Issues!
Boom Goes CLCMD-SERVER
And it runs as “Root”
CLCMD-SERVER Running On A Switch
Demonstration
Exposed ONIE Partition
Available Solutions
Hardware
Install Environment
Network Operating Systems
Agents
Enterprise Architecture
Hardware
Trusted Platform Module (TPM)
Rob Sherwood Had These Put In for
Most x86-Based Switches
Let’s Add Them to the PowerPC
Switches
Then, Let’s Use Them!
Install Environment
Remove Telnet
Increase Key Entropy
Force Password Change
Remove IPv6 and TFTP Waterfall
Sign the Installations
Operating Systems
Changeable Names
uid 0 accounts
“reduced” privilege accounts
Force Password Change
Tighten Shell Access
Switch Light (Two-Factor Escape)
Cumulus Linux (Wrapper)
MLNX-OS (Two-Factor Escape)
Agents
Use TLS
Add Encryption and Authentication
Use DevOps or SDN to Coordinate
Certificate and Key Distribution
Enterprise Architecture
Isolate Management Plane
Rarely Done
What’s wrong with Jump Boxes?
Audit Switches
Password Changes
ONIE Partition Hashes
Impact On Security
Keeping Pressure On Developers (Scaring Them)
Making The Difference
Racing Ahead
Getting Products/Features To Market Is
Important … I get it. We all get it.
But You're Not Learning
Desktop Operating Systems
Server Operating Systems
These Are Not New
Wake Up!
Impact On Security
So Begins The Spinning of the Merry-Go-Round
We Hack It
You Fix It
Let The Clean-Up Begin
Is It So Hard To Hire Someone for Security
I thought fixing It later was more expensive?
Security Can Be A Feature Too
Scaring Developers!
Learn From Desktop and Server Operating
Systems
Leverage Management Platforms (DevOps) or
Controllers (SDN)
Security Reference
Audit Capability (Reconciliation)
Logging
Logic Probes
Making The Difference
SDN has the potential to turn the entire Internet
into a cloud
Benefit would be orders of magnitude above what
we see now
But there is hole in the middle of it that could
easily be filled by the likes of the NSA … or
worse yet, China
Let’s Not Let That Happen
And That Start’s Here
Final Thoughts
Links
http://etherealmind.com/network-dictionary-whitebrand-ethernet/
https://github.com/opencomputeproject/onie/wiki/Quick-Start-Guide
https://github.com/opencomputeproject/onie/wiki/CLI-Reference
http://opennetlinux.org/docs/build
http://opennetlinux.org/docs/deploy
http://www.bigswitch.com/sdn-products/big-cloud-fabrictm
http://www.bigswitch.com/products/switch-light
http://labs.bigswitch.com
https://github.com/floodlight/indigo
https://github.com/floodlight/ivs
http://docs.cumulusnetworks.com/
http://cumulusnetworks.com/get-started/test-drive-open-networking/
https://puppetlabs.com/blog/puppet-cumulus-linux
Links
https://github.com/puppetlabs/puppet
http://www.mellanox.com/page/mlnx_os
http://h20564.www2.hp.com/hpsc/swd/public/detail?swItemId=M
TX_8adfcbf6e0834d5a82564b4825
https://github.com/mellanox-openstack/mellanox-eswitchd
http://zeromq.org/intro:read-the-manual
DEFCON 23 - Gregory Pickett - staying persistant in software defined networks

More Related Content

PDF
TechWiseTV Workshop: Digital Building Switches
PDF
OSSA17 - Mixed License FOSS Projects
PPTX
OPNFV: Upstream Headwaters to Full Deployment
PDF
InSpec Keynote at ChefConf
PDF
UKOUG Tech17 - Stay Secure With Oracle Solaris
PPTX
OPNFV Arno Installation and Validation Walk Through
PPT
Ksplice Presentation External
PPTX
5th
TechWiseTV Workshop: Digital Building Switches
OSSA17 - Mixed License FOSS Projects
OPNFV: Upstream Headwaters to Full Deployment
InSpec Keynote at ChefConf
UKOUG Tech17 - Stay Secure With Oracle Solaris
OPNFV Arno Installation and Validation Walk Through
Ksplice Presentation External
5th

What's hot (20)

PDF
OSDC 2018 | OPNsense: the “open” firewall for your datacenter by Thomas Niede...
DOCX
Dean Hagen
PDF
Resin.io contribution to the AGILE-IoT project
PDF
IPv6 Security Potpourri
PDF
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
PDF
Rac on NFS
PDF
L'affaire CentOS
PDF
Dev stacklabguide
PPTX
Dell openstack boston meetup dell crowbar and open stack
PPTX
Software update for embedded systems
PDF
BlackHat USA 2011 - Stefan Esser - iOS Kernel Exploitation
PPTX
System hardening - OS and Application
ODP
Develop and Maintain a Distro with Open Build Service
PDF
Install Solaris 11.1 on a Virtualbox VM
PDF
Introduction to DevOps and DevOpsSec with Secure Design by Prof.Krerk (Chulal...
PDF
Oracle Buys Ksplice
PDF
Oracle Solaris 11.1 New Features
PDF
Intro to the sel4 Microkernel
PDF
Kubernetes in The Enterprise
PDF
如何在 Ubuntu 上更快、更便捷地部署物联网设备
OSDC 2018 | OPNsense: the “open” firewall for your datacenter by Thomas Niede...
Dean Hagen
Resin.io contribution to the AGILE-IoT project
IPv6 Security Potpourri
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
Rac on NFS
L'affaire CentOS
Dev stacklabguide
Dell openstack boston meetup dell crowbar and open stack
Software update for embedded systems
BlackHat USA 2011 - Stefan Esser - iOS Kernel Exploitation
System hardening - OS and Application
Develop and Maintain a Distro with Open Build Service
Install Solaris 11.1 on a Virtualbox VM
Introduction to DevOps and DevOpsSec with Secure Design by Prof.Krerk (Chulal...
Oracle Buys Ksplice
Oracle Solaris 11.1 New Features
Intro to the sel4 Microkernel
Kubernetes in The Enterprise
如何在 Ubuntu 上更快、更便捷地部署物联网设备
Ad

Similar to DEFCON 23 - Gregory Pickett - staying persistant in software defined networks (20)

PPTX
A Networking View for the DevOps Crew: SDN
PPTX
OCP Engineering Workshop at UNH
PDF
An Introduce of OPNFV (Open Platform for NFV)
KEY
the NML project
PDF
Handout2o
PPT
OpenFlow tutorial
PPT
WS-* Specifications Update 2007
PPTX
Innovation in SDN Tools and Platforms
PPTX
Delivering IaaS with Open Source Software
PDF
Introduction to Networking | Linux-Unix and System Administration | Docker an...
PPTX
The Switch as a Server - PuppetConf 2014
PDF
POCO C++ Libraries Intro and Overview
DOC
Interview Questions
PPTX
Tools and Platforms for OpenFlow/SDN
PDF
Introduction to nfv movilforum
DOCX
Desktop interview qestions & answer
PPTX
CEHv10 M0 Introduction.pptx
PPT
Download It
PPT
Naveen nimmu sdn future of networking
PPT
Naveen nimmu sdn future of networking
A Networking View for the DevOps Crew: SDN
OCP Engineering Workshop at UNH
An Introduce of OPNFV (Open Platform for NFV)
the NML project
Handout2o
OpenFlow tutorial
WS-* Specifications Update 2007
Innovation in SDN Tools and Platforms
Delivering IaaS with Open Source Software
Introduction to Networking | Linux-Unix and System Administration | Docker an...
The Switch as a Server - PuppetConf 2014
POCO C++ Libraries Intro and Overview
Interview Questions
Tools and Platforms for OpenFlow/SDN
Introduction to nfv movilforum
Desktop interview qestions & answer
CEHv10 M0 Introduction.pptx
Download It
Naveen nimmu sdn future of networking
Naveen nimmu sdn future of networking
Ad

More from Felipe Prado (20)

PDF
DEF CON 24 - Sean Metcalf - beyond the mcse red teaming active directory
PDF
DEF CON 24 - Bertin Bervis and James Jara - exploiting and attacking seismolo...
PDF
DEF CON 24 - Tamas Szakaly - help i got ants
PDF
DEF CON 24 - Ladar Levison - compelled decryption
PDF
DEF CON 24 - Clarence Chio - machine duping 101
PDF
DEF CON 24 - Chris Rock - how to overthrow a government
PDF
DEF CON 24 - Fitzpatrick and Grand - 101 ways to brick your hardware
PDF
DEF CON 24 - Rogan Dawes and Dominic White - universal serial aBUSe remote at...
PDF
DEF CON 24 - Jay Beale and Larry Pesce - phishing without frustration
PDF
DEF CON 24 - Gorenc Sands - hacker machine interface
PDF
DEF CON 24 - Allan Cecil and DwangoAC - tasbot the perfectionist
PDF
DEF CON 24 - Rose and Ramsey - picking bluetooth low energy locks
PDF
DEF CON 24 - Rich Mogull - pragmatic cloud security
PDF
DEF CON 24 - Grant Bugher - Bypassing captive portals
PDF
DEF CON 24 - Patrick Wardle - 99 problems little snitch
PDF
DEF CON 24 - Plore - side -channel attacks on high security electronic safe l...
PDF
DEF CON 24 - Six Volts and Haystack - cheap tools for hacking heavy trucks
PDF
DEF CON 24 - Dinesh and Shetty - practical android application exploitation
PDF
DEF CON 24 - Klijnsma and Tentler - stargate pivoting through vnc
PDF
DEF CON 24 - Antonio Joseph - fuzzing android devices
DEF CON 24 - Sean Metcalf - beyond the mcse red teaming active directory
DEF CON 24 - Bertin Bervis and James Jara - exploiting and attacking seismolo...
DEF CON 24 - Tamas Szakaly - help i got ants
DEF CON 24 - Ladar Levison - compelled decryption
DEF CON 24 - Clarence Chio - machine duping 101
DEF CON 24 - Chris Rock - how to overthrow a government
DEF CON 24 - Fitzpatrick and Grand - 101 ways to brick your hardware
DEF CON 24 - Rogan Dawes and Dominic White - universal serial aBUSe remote at...
DEF CON 24 - Jay Beale and Larry Pesce - phishing without frustration
DEF CON 24 - Gorenc Sands - hacker machine interface
DEF CON 24 - Allan Cecil and DwangoAC - tasbot the perfectionist
DEF CON 24 - Rose and Ramsey - picking bluetooth low energy locks
DEF CON 24 - Rich Mogull - pragmatic cloud security
DEF CON 24 - Grant Bugher - Bypassing captive portals
DEF CON 24 - Patrick Wardle - 99 problems little snitch
DEF CON 24 - Plore - side -channel attacks on high security electronic safe l...
DEF CON 24 - Six Volts and Haystack - cheap tools for hacking heavy trucks
DEF CON 24 - Dinesh and Shetty - practical android application exploitation
DEF CON 24 - Klijnsma and Tentler - stargate pivoting through vnc
DEF CON 24 - Antonio Joseph - fuzzing android devices

Recently uploaded (20)

PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
Hybrid model detection and classification of lung cancer
PPT
What is a Computer? Input Devices /output devices
PDF
sustainability-14-14877-v2.pddhzftheheeeee
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
CloudStack 4.21: First Look Webinar slides
PDF
STKI Israel Market Study 2025 version august
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PPTX
The various Industrial Revolutions .pptx
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PPT
Geologic Time for studying geology for geologist
PDF
August Patch Tuesday
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Hybrid model detection and classification of lung cancer
What is a Computer? Input Devices /output devices
sustainability-14-14877-v2.pddhzftheheeeee
O2C Customer Invoices to Receipt V15A.pptx
observCloud-Native Containerability and monitoring.pptx
A contest of sentiment analysis: k-nearest neighbor versus neural network
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
A novel scalable deep ensemble learning framework for big data classification...
CloudStack 4.21: First Look Webinar slides
STKI Israel Market Study 2025 version august
1 - Historical Antecedents, Social Consideration.pdf
Univ-Connecticut-ChatGPT-Presentaion.pdf
The various Industrial Revolutions .pptx
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Geologic Time for studying geology for geologist
August Patch Tuesday
Module 1.ppt Iot fundamentals and Architecture
Developing a website for English-speaking practice to English as a foreign la...
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor

DEFCON 23 - Gregory Pickett - staying persistant in software defined networks