Point, Click, RTPInject BlackHat 2007 Presented by: Zane Lackey - - PowerPoint PPT Presentation

point click rtpinject
SMART_READER_LITE
LIVE PREVIEW

Point, Click, RTPInject BlackHat 2007 Presented by: Zane Lackey - - PowerPoint PPT Presentation

Point, Click, RTPInject BlackHat 2007 Presented by: Zane Lackey (zane@isecpartners.com) Alex Garbutt (agarbutt@isecpartners.com) iSEC Partners https://www.isecpartners.com Agenda Introduction Who are we? Why care about


slide-1
SLIDE 1

iSEC Partners

https://www.isecpartners.com

Point, Click, RTPInject

  • Presented by:

Zane Lackey (zane@isecpartners.com) Alex Garbutt (agarbutt@isecpartners.com)

BlackHat 2007

slide-2
SLIDE 2

iSEC Partners

https://www.isecpartners.com

Agenda

  • Introduction

– Who are we? – Why care about RTPInject?

  • RTP/VoIP Background (Quick)
  • RTPInject Demo
  • RTPInject Details

– RTP Detection – Updating Sequence Information

  • Sequence Number
  • Timestamp

– Fixes

  • Q&A
slide-3
SLIDE 3

iSEC Partners

https://www.isecpartners.com

Introduction

  • Who are we?

– Consultants for iSEC Partners – Security consultants and researchers – Based in San Francisco

  • Why listen to this talk?

– RTP injection easiest way to demonstrate VoIP insecurities – Previously tools lacked simplicity/ease-of-use

  • Although recent tools have improved on this, such as Justin Furniss’ VOIP Sound

Board (http://primeobsession.com/content/view/19/1/)

  • We are always looking for a few good geeks!

careers@isecpartners.com

slide-4
SLIDE 4

iSEC Partners

https://www.isecpartners.com

(Quick) RTP/VoIP Background

  • “Calls” traditionally split in to two streams

– Signaling Protocols

  • SIP
  • H.323
  • SCCP
  • etc

– Media Protocol

  • RTP
  • Regardless of the signaling protocol used, RTP is used as

the media protocol

SIP/H.323

RTP Communication

SIP/H.323 SIP/H.323

slide-5
SLIDE 5

iSEC Partners

https://www.isecpartners.com

RTP Information

  • RTP has several header values, the ones we’re interested in

are:

– Payload Type – Sequence Number – Timestamp – Synchronization Source Identifier (SSRC)

  • Payload type is a value indicating which codec is used to

encode the audio payload

  • Sequence number indicates which number this packet is in

the audio stream

– Increments by one each packet

  • Timestamp indicates the sampling period of the audio

payload in the packet

  • SSRC functions as the call identifier

– Remains static throughout the call

slide-6
SLIDE 6

iSEC Partners

https://www.isecpartners.com

Attacking RTP

  • Why is attacking RTP possible?
  • Predominantly sent unencrypted
  • Uses UDP

– Makes injection easy

  • From a single valid packet, easy to create spoofed packets

– SSRC is static for the entirety of a conversation – Sequence number and timestamp are monotonically increasing

  • In our testing, clients have a wide tolerance for out-of-

sequence information

slide-7
SLIDE 7

iSEC Partners

https://www.isecpartners.com

RTP Injection

slide-8
SLIDE 8

iSEC Partners

https://www.isecpartners.com

Presenting: RTPInject

DEMO

slide-9
SLIDE 9

iSEC Partners

https://www.isecpartners.com

RTPInject Screenshots

slide-10
SLIDE 10

iSEC Partners

https://www.isecpartners.com

RTPInject Screenshots

slide-11
SLIDE 11

iSEC Partners

https://www.isecpartners.com

RTPInject Screenshots

slide-12
SLIDE 12

iSEC Partners

https://www.isecpartners.com

RTPInject Screenshots

slide-13
SLIDE 13

iSEC Partners

https://www.isecpartners.com

RTPInject Details

  • Info on tool

– Sniff network traffic for UDP packets where:

  • The 43rd byte has the high bit set (ether[42] == 128)
  • Contains a valid payload type

– Capture a valid packet and use it as a template:

  • Increase the initial sequence number, timestamp, and IP ID by a moderate amount
  • For each fake packet:

– Increase the sequence number by 1 » Clients have a wide tolerance for this value – Increase the timestamp by the number of samples » Typically 160 – Increase the IP ID by 1 – Append the sniffed SSRC

– Can automatically transcode input to match certain codecs

  • Supports input from WAV, Ogg Vorbis, etc
  • Supports output to PCM-U, PCM-A, GSM

– Inject – Sleep, then repeat

slide-14
SLIDE 14

iSEC Partners

https://www.isecpartners.com

Q&A

  • Thanks for coming!
  • Shameless plug: Pre-Order Himanshu Dwivedi’s VoIP

Security book from No Starch Press! zane@isecpartners.com agarbutt@isecpartners.com