Uniden BC296D Manuale Utente

Navigare online o scaricare Manuale Utente per no Uniden BC296D. Recon2013-Gabriel Tremblay Manuale Utente

  • Scaricare
  • Aggiungi ai miei manuali
  • Stampa

Sommario

Pagina 1 - Radio Scanners

Reversing P25 Radio ScannersLet's beat a dead horse.

Pagina 4 - What is P25 anyway?

Interesting Hardware bits● Main radio○ Renesas m16c/62P (m16c/60 serie) 256k ROM 20k RAM 15-32 mhz 16 bits I/O○ User config is stored in eeprom (a

Pagina 5 - P25, isn't it more like

Now that we know that● What should we do?

Pagina 6

Firmware file analysis● Let's look at the firmware update file● Yay! Not binary.

Pagina 7 - The Beast

Firmware file analysis● Motorola S-Record ○ Nope IDA, intel s-record does not exists● Stolen from Wikipedia ● Start code, one character, an S.● Record

Pagina 8 - The Beast (2)

Tool #1: pysrec● https://github.com/gabtremblay/pysrec● Motorola s-record analysis tool● Validate checksum, rebuild checksum○ In fact, it will replace

Pagina 9 - Why this model?

Firmware file analysis● Let's take a record in our file● S2240A0120DC22C330DE22C330E321C330E322C3E0EC21C3E0EC22C3E0F121C3E0F122C33011● checksum(2

Pagina 11 - Hardware recon

Firmware Updater● ~2 MB of pure Visual Basic 6 clusterfsck● Supports about 10 different scanner protocol○ in a "Copy-Paste" fashion.● Not &q

Pagina 12 - Interesting Hardware bits

Super Quick Presentation● Founder of an obscurely named infosec company (see footer)○ founded at the end of 2011○ infosec dev, pentests○ president, le

Pagina 13 - Now that we know that

Firmware Updater● Plan A: Buy the Renesas hardware to dump the chip content● (Edit) Plan A1: Buy a Die Datenkrake● Plan B: Reverse the "scramblen

Pagina 14 - Firmware file analysis

Scramblencryption● Firmware file is partly scrambled and partly weakly encrypted● Most data blocks uses a position rot(x) scrambling algorithm● Code b

Pagina 15

Plan C - As lazy as it gets● The unscrambling is done at the updater level before the actual firmware update● The update protocol *should* be much sim

Pagina 17

Tool #2: BearMock● https://github.com/gabtremblay/Bearmock● Fakes a BC296D (or a BCi96D)● Use it with com0com or something similar● Outputs a descramb

Pagina 18 - Firmware Updater

Next● We now have a descrambled s-record file ● Epic +- 2 year pause○ Waiting for IDA to support Renesas m16c● IDA 6.2: To the IDA cave!

Pagina 19

Inside IDAWUT!?

Pagina 20

Inside IDA● The cpu is supported but it's not common renesas code● Code analysis is broken :(● Multiples entry points○ Triggered by boot or keypr

Pagina 21 - Scramblencryption

Tool #3: m16clean● https://github.com/gabtremblay/idabearclean● (Very) Simple helper IDA python script to help analysisThis is a blatant lie! Consts a

Pagina 23 - Tool #2: BearMock

What it's all about● Uniden BC296D● Complete process from firmware update file to code execution● Toolset presentation● AES over P25 still stand○

Pagina 24

Firmware code structure● System wide consts○ Model number, version, regional tags● Main radio program consts○ Screen display, menus errors● Smaller si

Pagina 25 - ● IDA 6.2: To the IDA cave!

The code is "signed"● Some kind of checksum signature at runtime● However you control the part of the code which tests it.○ Locate the corru

Pagina 26 - Inside IDA

Tool #4-5: Bearflash/BciFlash● https://github.com/gabtremblay/bearflash● https://github.com/gabtremblay/bciflash● Tools to flash your custom firmware

Pagina 27

Some differences● Some protocol difference● The daughter board has a fixed 9600 bps update speed● The main radio updater uses a weird "speed danc

Pagina 28 - Tool #3: m16clean

Proof of concept● Just try to flash some modifications to the radio● I am a kind of a science guy● Small tribute to the internet famous "eight eq

Pagina 29 - Firmware code layout

Eight Equals D Minus Equation● I am quite funny.

Pagina 30 - Firmware code structure

What about the newer models?● BCD346T, BCD396XT, Home Patrol● They still all uses s-record update files● Files are UNSCRAMBLED● Can't tell for th

Pagina 32 - Tool #4-5: Bearflash/BciFlash

What is P25 anyway?● Suite of standards for digital radio● "Closed" open standards○ You have to pay for the documentation● Developed by a se

Pagina 33 - Some differences

P25, isn't it more like "molesting" a dead horse?● Well... maybe.● Osmocom OP25 did a very good job● multiple p25 support in sdr radios

Pagina 34 - Proof of concept

P25, isn't it more like "molesting" a dead horse?● This talk is not about the protocol● There's still some cool things to reverse○

Pagina 35 - Eight Equals D Minus Equation

The Beast● Uniden BC296D● Released in 2002● 9600bps APCO P25 Compatible● Trunk Tracking ~14 types● 25 mhz - 1.3ghz (not continuous)● Many more feature

Pagina 36 - What about the newer models?

The Beast (2)● Uniden BCi96D● "Optional" P25 daughter board● P25 Protocol implementation● Audio Decoding -> C4FM/CQPSK DSP

Pagina 37 - Questions

Why this model?● Cheap P25 scanner (~350$ used)● Firmware updates for both components○ Radio○ Daughter Board● Old○ ... so I don't care if I brick

Commenti su questo manuale

Nessun commento