Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the...

51
Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno [email protected] [email protected] Defcon 14 - Las Vegas, NV USA 2006

Transcript of Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the...

Page 1: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Blackjacking –0wning the Enterprise via Blackberry

Jesse ‘x30n’ D’Aguanno•[email protected][email protected]

Defcon 14 - Las Vegas, NV USA 2006

Page 2: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 2

Blackjacking – 0wning the Enterprise via Blackberry

Hello, My name is…$ whois x30n

– Founder / Director Prof Services• Praetorian Global, LLChttp://www.praetoriang.net

– Member / Team Captain• Digital Revelation – Security Research Group & 2 time

winners, Defcon CTFhttp://www.digrev.org

Page 3: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 3

Blackjacking – 0wning the Enterprise via Blackberry

Who uses Blackberry?• Who doesn’t?

• Market share lead for handhelds.– Gartner

• “Government workers and emergency personnel would be exempt from a possible shutdown”– Computerworld

Page 4: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 4

Blackjacking – 0wning the Enterprise via Blackberry

The “solution” – Background

• Typical Corporate Blackberry Installation

Page 5: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 5

Blackjacking – 0wning the Enterprise via Blackberry

The “solution” – Background

• Outgoing BES to RIM connection

Page 6: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 6

Blackjacking – 0wning the Enterprise via Blackberry

The “solution” – Background

• Persistent Tunnel – BES and RIM

Page 7: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 7

Blackjacking – 0wning the Enterprise via Blackberry

The “solution” – Background

• Persistent Tunnel – BES and BB Device

Page 8: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 8

The “solution” – Background

• BB device now virtually on internal network

Page 9: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 9

The “solution” - Review

• BES / MDS creates outbound, persistent connection to RIM network

• Blackberry device then virtually placed on internal network (Wherever BES / MDS exists)

• “always-on always connected”

• Wireless carrier independent

Page 10: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 10

Problem with “solution”• Attitude of handhelds

– Only security of data on handheld usually considered

– Not impact of handheld on rest of network• Blackberries are computers with constant

connection to corporate LAN• Not treated like other remote access. i.e.

VPN / Dial-in

Page 11: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 11

Problem with “solution”• Guess what, we can exploit this problem! ☺

• Enter BBProxy…

Page 12: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 12

Step 1 – External Connection

• Create an outbound socket connection from Blackberry device to attacker controlled host on the internet.

Page 13: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 13

Step 1 – External Connection

Page 14: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 14

Step 2 – Secondary Connection

• From attacker controlled host, we then initiate a subsequent socket connection to a second host – including internal hosts.

Page 15: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 15

Step 2 – Secondary Connection

Page 16: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 16

Step 3 – Proxy connection between external and internal host

• Blackberry then proxies all data between hosts.

Page 17: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 17

Step 3 – Proxy connection between external and internal host

Internet

Internal LAN

Blackberry

App Serv

Attacker Host

Proxy ConnectionExternal Host to

Internal Host

Page 18: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 18

BBProxy• Sweet! So now we can directly communicate

with any port on an internal host from an external host – Right through our little blackberry handheld.

Page 19: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 19

Demo -• Let’s check it out…

• Interaction with internal service

Page 20: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 20

Demo -

Page 21: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 21

BBProxy• OK, cool, we can now telnet to an internal

box or ssh or even grab intranet sites.

• But can we do anything cooler?

• This is Defcon… Aren’t we going to attack something? OF COURSE! ☺

Page 22: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 22

Metasploit!• Enter Metasploit…

• “Point Click Root”… “Now with Blackberry flavor!”TM

• C’est impossible!

Page 23: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 23

Metasploit!• Top level (“listener”) function added to

metasploit to create a listening socket on port 1455 (default)

• When a connection is received, verifies BBProxy handshake

• Once connected, the connection is available to any exploit within the framework… Just need to call it.

Page 24: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 24

Demo -• Let’s do it…

• Exploitation of Vulnerable service behind corporate firewall…

Page 25: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 25

Demo -

Page 26: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 26

Metasploit! – Porting an exploit• Very easy to plug-in to usable exploits

• Let’s walk through one…

– msasn1_ms04_007_killbill.pm

Page 27: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 27

Metasploit! – Porting an exploit• Patch msasn1_ms_04_007_killbill

exploit@@ -93,7 +93,8 @@

my $target_idx = $self->GetVar('TARGET');my $target_app = $self->GetVar('PROTO');my $shellcode = $self->GetVar('EncodedPayload')->Payload;

- my $target = $self->Targets->[$target_idx];+ my $target = $self->Targets->[$target_idx];+ my $s = $self->GetVar('PROXYCONN');

– Here we set $s to the value of the global variable PROXYCONN (Our proxy connection)

Page 28: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 28

Metasploit! – Porting an exploit

• Patch msasn1_ms_04_007_killbill exploit$self->PrintLine("[*] Attempting to exploit target " . $target->[0]);

@@ -124,17 +125,34 @@"\x08\x00\xeb\xfe";

my $token = SPNEGO::token($stage0, $shellcode);- my $sock = Msf::Socket::Tcp->new- (- 'PeerAddr' => $target_host,- 'PeerPort' => $target_port,- 'SSL' => $self->GetVar('SSL'),- );-- if ($sock->IsError) {- $self->PrintLine("[*] Could not connect: ".$sock->GetError());- return;- }

– We remove the standard socket build stuff

Page 29: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 29

Metasploit! – Porting an exploit+ if (!$s) {+ my $s = Msf::Socket::Tcp->new+ (+ 'PeerAddr' => $target_host,+ 'PeerPort' => $target_port,+ 'SSL' => $self->GetVar('SSL'),+ );++ if ($s->IsError) {+ $self->PrintLine('[*] Error creating socket: ' . $s-

>GetError);+ return;+ }+ } else {+ $s = $s;+ }

– And only do it if PROXYCONN wasn’t set

Page 30: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 30

Metasploit! – Porting an exploit

++ my $sock = $s;+ $sock-

>Send($target_host.":".$target_port."\n");– Otherwise use our previous proxy connection

and send the appropriate string to start the subsequent connection

Page 31: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 31

Metasploit! – Porting an exploit+ sleep(2);+ print $sock->Recv();+ sleep(2);+

– Sleep a bit to allow the second connection to be established, then do it!

if ($target_app eq 'http') {return $self->ExploitIIS($sock, $token);

@@ -176,7 +194,7 @@if ($resp =~ /0x80090304/) {

$self->PrintLine("[*] Server responded with error code 0x80090304");}

-+ sleep(10);

$self->Handler($sock);$sock->Close;return;

Page 32: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 32

Metasploit – Current Limitations• Use with current BBProxy limited to tcp

based exploits – won’t require much to allow udp

• Reliable exploitation with “vanilla” tcpconnections – Problems encountered with some RPC and special protocol exploits.

• Plan to rework to remove these limitations

Page 33: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 33

IDS evasion goodness• Each newer device has onboard tcp/ip stack• No need for MDS to make connection• Simple to choose connection type in code

– “deviceside=‘true’” or “deviceside=‘false’” in connection string

• First connection from device side (Direct from carrier network). Second connection through MDS…

• Nothing on the border can see our traffic (It’s all encrypted by RIM’s tunnel ☺)

Page 34: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 34

IDS evasion goodness

CarrierNetwork

Internet

Attacker controlledbox

Wireless Providers Blackberry

First Connection

Page 35: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 35

IDS evasion goodness

Page 36: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 36

IDS evasion goodness

Page 37: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 37

IDS evasion goodness• Just like…

Page 38: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 38

Else• Problem

– BBProxy requires control of device (Interactive app)

• Solution– First and only blackberry trojan (That I know of)!

Page 39: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 39

Trojan – Hot Game 2006• Same functionality as BBProxy• User only sees game interface (TicTacToe)• Over the air download!• Easily integrated with other network

discovery functions and more covert methods of control (IRC, etc.)

Page 40: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 40

Demo -• Let’s do it…

• Exploitation of Vulnerable service behind corporate firewall while user plays TicTacToe

Page 41: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 41

Code Signatures• RIM requires code (.cod) to be signed with

RIM assigned private key to use proprietary APIs, network access without confirmation, etc.

• $100 USD processing fee to verify identity of signature requestor

• Credit card name and address used for verification of ID

Page 42: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 42

Code Signatures – Prepaid Credit Cards!• Prepaid CCs allow online

transactions by ignoring the name and address fields

• No need to steal credit card number

• Widely available in mini markets and grocery stores everywhere

• Works!

Page 43: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 43

Review• We can talk to hosts behind the corporate

firewall• We can attack them• We can subvert IDS or data logging• We can do it in a trojan• We can sign our trojan anonymously and

use all APIs• It gets worse! (or maybe better…)

Page 44: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 44

Device Provisioning• Ease of use vs. Security always a fight

– Ease of use wins!

• Extremely easy to add a new device – just plug it in…

• New device is then provisioned for use on the BES

Page 45: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 45

Blackjacking – Hijacking blackberry connection

• BB devices are identified by their unique PIN

• Blackberry user plugs in new device to PC

• New PIN is recognized

• Encryption keys are generated and stored on BB handheld

Page 46: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 46

Blackjacking – Hijacking blackberry connection

• Device PIN and new key pushed to Exchange via MAPI

• Info stored in “BlackberryHandheldInfo”folder in users mailbox

• New device is now routing through MDS

• This can be automated! ☺

Page 47: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 47

Blackjacking – Hijacking blackberry connection

• Work in progress…– Trojan to automate BB hijack process– Utilizing other delivery mechanisms– Everything else…

Check www.praetoriang.net or www.digrev.orgfor updates.

Page 48: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 48

References• Code and Updated Slides can be found at

http://www.praetoriang.net/presentations/blackjackor http://www.digrev.org/blackjack

• Final slides will have reference to RIM security documentation

Page 49: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 49

Q&A

?

Page 50: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 50

Thanks / Greetings…

• Digital Revelation (DigRev)• Pablo_marx• FX• Ian Robertson (RIM)

Page 51: Blackjacking – 0wning the Enterprise via Blackberry€¦ · Blackjacking – 0wning the Enterprise via Blackberry Jesse ‘x30n’ D’Aguanno •x30n@digrev.org •jesse@praetoriang.net

Defcon 14 - Las Vegas, NV USA 2006 51

Thank You For Coming!Jesse ‘x30n’ D’[email protected]

[email protected]