SlideShare a Scribd company logo
1 of 46
Download to read offline
Key-Logger, Video, Mouse
How to turn your KVM into a
raging key-logging monster
MEETTHETEAM
Yaniv Balmas
“This should theoretically work”
Security Researcher
Lior Oppenheim
“The mad scientist”
Check Point Software
Technologies
Check Point Software
Technologies
Security Researcher
TOOMANYCOMPUTERS
• Computers
• More computers
• A LOT OF COMPUTERS
WHATISKVM?
• Keyboard, Video, Mouse
• KVM Connects the same Keyboard, Video and
Mouse to one or more computers.
KVMEVOLUTION
1981
`A-B Switch`
2002
Desktop KVM
2015
Enterprise KVM
WHEREARETHEY?
• On top of your server racks.
• On your desktop.
• In your security centres.
KVMS ARE
EVERYWHERE!!
Introducing Gen-KVM
ITRUNSCODE
• On screen configuration display.
• Configurable hot-keys.
• Control device functionality through keyboard.
Exploitable?
+
+
=
First Attempt
(Funny meme here)
SOFTWARE
• Opening the KVM box.
• Manuals, Cables, Warranty and CD…
• CD contains A Firmware Upgrade Utility!
• Can the firmware be extracted from the upgrade
utility?!
• Since x86 is no new territory. we can reverse
engineer this!
MEETTHEBLOB
Low Entropy
No Strings
Undetermined Freq. Analysis
FAIL!
SERIALSNIFF
• Firmware upgrade process is done via a custom
serial connection.
• It is possible to extract the (possibly) decoded
firmware binary from the serial protocol.
• Its just a matter of analyzing the serial protocol.
PROTOCOLANALYSIS
46 55 a3 00 03 63 40 d7 85 85 32 ea e2 01 6b 85 FU£..c@◊ÖÖ2Í‚.kÖ
32 a6 d9 d6 e5 df 55 a6 d5 22 04 d6 cd 05 d5 96 2¶Ÿ÷ÂflU¶’".÷Õ.’ñ
27 85 85 d7 40 a5 d7 32 01 32 e2 85 6b ea 85 d9 'ÖÖ◊@•◊2.2‚ÖkÍÖŸ
df d5 e5 a6 55 d6 a6 04 2d 27 cd 22 d5 d6 96 85 fl’¶U÷¶.-'Õ"’÷ñÖ
a5 01 40 85 d7 d7 81 •.@Ö◊◊Å
46 55 23 00 03 63 00 24 FU#..c.$
From Device
To Device
Fixed Header
OpCode
HandshakeDataTransfer
46 55 90 00 44 49 b8 FUê.DI∏
46 55 10 00 43 ** 2d 31 ** ** 34 41 2f 31 ** ** FU..C*-1**4A/1**
32 41 00 00 4d 41 49 4e 00 00 00 56 34 32 52 34 2A..MAIN...V42R4
31 37 56 31 30 52 30 38 31 57 37 38 45 36 35 00 17V10R081W78E65.
00 a2 .¢
46 55 a0 00 43 54 d2 FU†.CT“
46 55 20 00 00 bb FU ..ª
46 55 a2 00 ** ** ** ** ** ** 2d 31 37 33 ** 41 FU¢.******-173*A
2f 31 ** ** ** 41 00 00 4d 41 49 4e 00 00 00 56 /1***A..MAIN…V
34 32 56 31 30 04 ce 19 a7 75 50 35 ca aa 6a 0a 42V10.Œ.ßuP5 ™j.
ca 8a 0a aa 01 09 8c 69 73 49 1c c0 6a c7 01 ac  ä.™..åisI.¿j«.¨
7f 25 25 49 10 %%I.
46 55 22 00 00 bd FU"..Ω
46 55 a3 00 00 00 05 68 70 7d 5b af 65 05 4d ea FU£....hp}[Øe.MÍ
2d a1 4f 55 85 05 d1 04 04 b7 d8 76 05 05 7a 04 -°OUÖ.—..∑ÿv..z.
04 84 e3 17 04 05 04 04 04 ba 15 ed 32 05 ec 68 .Ñ„......∫.Ì2.Ïh
03 0f 8b 0f be 85 16 37 be 12 85 07 13 c5 b7 96 ..ã.æÖ.7æ.Ö..≈∑ñ
92 03 94 7f 05 3d 2a í.î.=*
CheckSum
Seq. Number
GUESSWHO?
FAIL!
PCBLAYOUT
Unknown
PLD
8052 Processor
External RAM
RAM Flip Flop
PCBLAYOUT
?
PCBLAYOUT
Unknown X2
PLD X2
8052 X1
External RAM X1
UARTMAGIC
• 80512 Chips have an integrated UART port.
• Which IC pins should be tapped?
• If we find out, the firmware could be extracted using simple
LOGIC.
NOTHINGBUTLOGIC
• 30-45 China mail shipping days later.
• We can finally use LOGIC.
TAPICPINS
• Tapping the 8052 IC UART pins using Logic Analyzer.
• Reveals the the UART port’s signals.
To UART
From UART
SIGNALANALYSIS
• Reviewing the signals in the UI.
• An obvious pattern emerges.
GREATSUCCESS?
Looks Familiar?
GREATFAIL!
46 55 90 00 44 49 b8 FUê.DI∏
46 55 10 00 43 ** 2d 31 ** ** 34 41 2f 31 ** ** FU..C*-1**4A/1**
32 41 00 00 4d 41 49 4e 00 00 00 56 34 32 52 34 2A..MAIN...V42R4
31 37 56 31 30 52 30 38 31 57 37 38 45 36 35 00 17V10R081W78E65.
00 a2 .¢
46 55 a0 00 43 54 d2 FU†.CT“
46 55 20 00 00 bb FU ..ª
46 55 a2 00 ** ** ** ** ** ** 2d 31 37 33 ** 41 FU¢.******-173*A
2f 31 ** ** ** 41 00 00 4d 41 49 4e 00 00 00 56 /1***A..MAIN…V
34 32 56 31 30 04 ce 19 a7 75 50 35 ca aa 6a 0a 42V10.Œ.ßuP5 ™j.
ca 8a 0a aa 01 09 8c 69 73 49 1c c0 6a c7 01 ac  ä.™..åisI.¿j«.¨
7f 25 25 49 10 %%I.
46 55 22 00 00 bd FU"..Ω
46 55 a3 00 00 00 05 68 70 7d 5b af 65 05 4d ea FU£....hp}[Øe.MÍ
2d a1 4f 55 85 05 d1 04 04 b7 d8 76 05 05 7a 04 -°OUÖ.—..∑ÿv..z.
04 84 e3 17 04 05 04 04 04 ba 15 ed 32 05 ec 68 .Ñ„......∫.Ì2.Ïh
03 0f 8b 0f be 85 16 37 be 12 85 07 13 c5 b7 96 ..ã.æÖ.7æ.Ö..≈∑ñ
92 03 94 7f 05 3d 2a í.î.=*
46 55 a3 00 03 63 40 d7 85 85 32 ea e2 01 6b 85 FU£..c@◊ÖÖ2Í‚.kÖ
32 a6 d9 d6 e5 df 55 a6 d5 22 04 d6 cd 05 d5 96 2¶Ÿ÷ÂflU¶’".÷Õ.’ñ
27 85 85 d7 40 a5 d7 32 01 32 e2 85 6b ea 85 d9 'ÖÖ◊@•◊2.2‚ÖkÍÖŸ
df d5 e5 a6 55 d6 a6 04 2d 27 cd 22 d5 d6 96 85 fl’¶U÷¶.-'Õ"’÷ñÖ
a5 01 40 85 d7 d7 81 •.@Ö◊◊Å
46 55 23 00 03 63 00 24 FU#..c.$
BREAKINGCODE
• The BLOB is probably translated to 8051 Assembly.
• The translation is done somewhere within the 8052
chip.
• It might be possible to break the obfuscation!
REMEETTHEBLOB
Last XX Bytes are padded
with 0x53
BREAKINGCODE
0x53⊕0x53= 0x00
8051 NOP = 0x00
ALLDONE!
8051ASSEMBLY?
8051ASSEMBLY?
8051ASSEMBLY?
EVERYTHING IS 8051!!!
BREAKINGCODE
Final 8 Bytes are different.
ACLUE?
• What does these last 8 bytes mean?
• Are they a clue left for use by a mad embedded
developer?
• If we could just get some more data…
FIRMWAREDIFFS!
• We have only analyzed a single firmware version.
• Perhaps other firmware versions could be insightful.
Last 8 Bytes Firmware Version
91 99 99 89 91 B2 99 00 3 . 3 . 3 1 2
B2 92 89 81 A1 99 A1 89 4 . 1 . 4 0 1
92 00 A1 A1 89 B2 89 91 4 . 2 . 4 1 1
91 92 A1 89 A1 A1 B2 00 4 . 2 . 4 1 4
B2 A1 A1 89 A9 00 92 91 4 . 2 . 4 1 5
A1 92 00 89 B1 91 A1 B9 4 . 2 . 4 1 6
92 00 A1 89 91 B2 A1 89 4 . 2 . 4 1 7
00 A1 92 91 C1 B2 A1 89 4 . 2 . 4 1 8
00 91 A1 B2 C9 89 A1 92 4 . 2 . 4 1 9
APATTERN?
• Listing the binary values of these “patterns” from all
firmware versions.
• If only these were ASCII values…
Value Hex Binary
1 0x89 10001001
2 0x91 10010001
3 0x99 10011001
4 0xA1 10100001
5 0xA9 10101001
6 0xB1 10110001
7 0xB9 10111001
8 0xC1 11000001
9 0xC9 11001001
THEYCOULDBE!
• If we shift the bits 3 positions to the right.
• We get our ASCII values!
Value Hex Binary
1 0x89 10001001
2 0x91 10010001
3 0x99 10011001
4 0xA1 10100001
5 0xA9 10101001
6 0xB1 10110001
7 0xB9 10111001
8 0xC1 11000001
9 0xC9 11001001
ROR 3 ASCII
00110001 1
00110010 2
00110011 3
00110100 4
00110101 5
00110110 6
00110111 7
00111000 8
00111001 9
STRINGS?
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
RESHUFFLE
AGCFEDBHIOKNMLJPQWSVUTRX
RESHUFFLE
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
A GC FEDB HI OK NMLJ PQ WS VUTR X
Position Original
1 1
2 7
3 3
4 6
5 5
6 4
7 2
8 8
SUCCESS!!!
Strings!
Assembly!
8051FUN
• We can now design our own “custom” firmware-
upgrade utility.
• However, we do need a basic understanding of
8051 Assembly!
8051REVIEW
+ Only 255 OP-Codes, and ~40 Instructions.
- Functions are not *really* functions.
- Just a single memory access register.
- Registers keep on changing for some reason.
KVMLOGIC
Keyboard
Emulation HID Parsing
Hotkeys
Handling
Keyboard
LEDs Control
MALKVM
Super Secured
Network
Internet
Connected
Network
KVM
DEMOTIME

More Related Content

What's hot

Devouring Security Sqli Exploitation and Prevention
Devouring Security Sqli Exploitation and PreventionDevouring Security Sqli Exploitation and Prevention
Devouring Security Sqli Exploitation and Preventiongmaran23
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...PacSecJP
 
Verilog codes and testbench codes for basic digital electronic circuits.
Verilog codes and testbench codes for basic digital electronic circuits. Verilog codes and testbench codes for basic digital electronic circuits.
Verilog codes and testbench codes for basic digital electronic circuits. shobhan pujari
 
DomCode 2015 - Abusing phones to make the internet of things
DomCode 2015 - Abusing phones to make the internet of thingsDomCode 2015 - Abusing phones to make the internet of things
DomCode 2015 - Abusing phones to make the internet of thingsJan Jongboom
 
Manual The Witcher
Manual The WitcherManual The Witcher
Manual The WitcherEdgarRojas95
 
コンピュータの歴史
コンピュータの歴史コンピュータの歴史
コンピュータの歴史Daichi Nakajima
 

What's hot (6)

Devouring Security Sqli Exploitation and Prevention
Devouring Security Sqli Exploitation and PreventionDevouring Security Sqli Exploitation and Prevention
Devouring Security Sqli Exploitation and Prevention
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
 
Verilog codes and testbench codes for basic digital electronic circuits.
Verilog codes and testbench codes for basic digital electronic circuits. Verilog codes and testbench codes for basic digital electronic circuits.
Verilog codes and testbench codes for basic digital electronic circuits.
 
DomCode 2015 - Abusing phones to make the internet of things
DomCode 2015 - Abusing phones to make the internet of thingsDomCode 2015 - Abusing phones to make the internet of things
DomCode 2015 - Abusing phones to make the internet of things
 
Manual The Witcher
Manual The WitcherManual The Witcher
Manual The Witcher
 
コンピュータの歴史
コンピュータの歴史コンピュータの歴史
コンピュータの歴史
 

Similar to DEF CON 23 - Yaniv Balmas and Lior Oppenheim - key logger-video mouse

LG CRT TV MODEL Ct 21q92ke
LG CRT TV MODEL Ct 21q92keLG CRT TV MODEL Ct 21q92ke
LG CRT TV MODEL Ct 21q92keMalik Arif
 
Guia de configuracao_ms9520
Guia de configuracao_ms9520Guia de configuracao_ms9520
Guia de configuracao_ms9520plisleo
 
001 network toi_basics_v1
001 network toi_basics_v1001 network toi_basics_v1
001 network toi_basics_v1Hisao Tsujimura
 
Ltw 32'', 37'', 42'' lcd tv series
Ltw 32'', 37'', 42'' lcd tv seriesLtw 32'', 37'', 42'' lcd tv series
Ltw 32'', 37'', 42'' lcd tv seriesluiz carlos
 
03 requirements and functional process description v1.00_en
03 requirements and functional process description v1.00_en03 requirements and functional process description v1.00_en
03 requirements and functional process description v1.00_enconfidencial
 
LT SAP HANAネットワークプロトコル初段
LT SAP HANAネットワークプロトコル初段LT SAP HANAネットワークプロトコル初段
LT SAP HANAネットワークプロトコル初段Koji Shinkubo
 
Windows kernel debugging workshop in florida
Windows kernel debugging   workshop in floridaWindows kernel debugging   workshop in florida
Windows kernel debugging workshop in floridaSisimon Soman
 
flowspec @ APF 2013
flowspec @ APF 2013flowspec @ APF 2013
flowspec @ APF 2013Tom Paseka
 
Manual de mantenimiento y repAracion KRV127R_SM_KENWOOD.pptx
Manual de mantenimiento y repAracion KRV127R_SM_KENWOOD.pptxManual de mantenimiento y repAracion KRV127R_SM_KENWOOD.pptx
Manual de mantenimiento y repAracion KRV127R_SM_KENWOOD.pptxGee Diaz
 
E-Commerce Security - Application attacks - Server Attacks
E-Commerce Security - Application attacks - Server AttacksE-Commerce Security - Application attacks - Server Attacks
E-Commerce Security - Application attacks - Server Attacksphanleson
 
Ct2000 ev manual_english_version 1.1
Ct2000 ev manual_english_version 1.1Ct2000 ev manual_english_version 1.1
Ct2000 ev manual_english_version 1.1Toàn Huỳnh
 
Applied Econometrics assignment3
Applied Econometrics assignment3Applied Econometrics assignment3
Applied Econometrics assignment3Chenguang Li
 
Profiling Oracle with GDB
Profiling Oracle with GDBProfiling Oracle with GDB
Profiling Oracle with GDBEnkitec
 
Reverse engineering of binary programs for custom virtual machines
Reverse engineering of binary programs for custom virtual machinesReverse engineering of binary programs for custom virtual machines
Reverse engineering of binary programs for custom virtual machinesSmartDec
 

Similar to DEF CON 23 - Yaniv Balmas and Lior Oppenheim - key logger-video mouse (20)

LG CRT TV MODEL Ct 21q92ke
LG CRT TV MODEL Ct 21q92keLG CRT TV MODEL Ct 21q92ke
LG CRT TV MODEL Ct 21q92ke
 
crack satellite
crack satellite crack satellite
crack satellite
 
AES Encryption
AES EncryptionAES Encryption
AES Encryption
 
Guia de configuracao_ms9520
Guia de configuracao_ms9520Guia de configuracao_ms9520
Guia de configuracao_ms9520
 
001 network toi_basics_v1
001 network toi_basics_v1001 network toi_basics_v1
001 network toi_basics_v1
 
Ltw 32'', 37'', 42'' lcd tv series
Ltw 32'', 37'', 42'' lcd tv seriesLtw 32'', 37'', 42'' lcd tv series
Ltw 32'', 37'', 42'' lcd tv series
 
03 requirements and functional process description v1.00_en
03 requirements and functional process description v1.00_en03 requirements and functional process description v1.00_en
03 requirements and functional process description v1.00_en
 
LT SAP HANAネットワークプロトコル初段
LT SAP HANAネットワークプロトコル初段LT SAP HANAネットワークプロトコル初段
LT SAP HANAネットワークプロトコル初段
 
Windows kernel debugging workshop in florida
Windows kernel debugging   workshop in floridaWindows kernel debugging   workshop in florida
Windows kernel debugging workshop in florida
 
final403
final403final403
final403
 
flowspec @ APF 2013
flowspec @ APF 2013flowspec @ APF 2013
flowspec @ APF 2013
 
Wiring cp1 e_s_analogicas
Wiring cp1 e_s_analogicasWiring cp1 e_s_analogicas
Wiring cp1 e_s_analogicas
 
Manual de mantenimiento y repAracion KRV127R_SM_KENWOOD.pptx
Manual de mantenimiento y repAracion KRV127R_SM_KENWOOD.pptxManual de mantenimiento y repAracion KRV127R_SM_KENWOOD.pptx
Manual de mantenimiento y repAracion KRV127R_SM_KENWOOD.pptx
 
E-Commerce Security - Application attacks - Server Attacks
E-Commerce Security - Application attacks - Server AttacksE-Commerce Security - Application attacks - Server Attacks
E-Commerce Security - Application attacks - Server Attacks
 
74164
7416474164
74164
 
Ct2000 ev manual_english_version 1.1
Ct2000 ev manual_english_version 1.1Ct2000 ev manual_english_version 1.1
Ct2000 ev manual_english_version 1.1
 
Applied Econometrics assignment3
Applied Econometrics assignment3Applied Econometrics assignment3
Applied Econometrics assignment3
 
Encoder
EncoderEncoder
Encoder
 
Profiling Oracle with GDB
Profiling Oracle with GDBProfiling Oracle with GDB
Profiling Oracle with GDB
 
Reverse engineering of binary programs for custom virtual machines
Reverse engineering of binary programs for custom virtual machinesReverse engineering of binary programs for custom virtual machines
Reverse engineering of binary programs for custom virtual machines
 

More from Felipe Prado

DEF CON 24 - Sean Metcalf - beyond the mcse red teaming active directory
DEF CON 24 - Sean Metcalf - beyond the mcse red teaming active directoryDEF CON 24 - Sean Metcalf - beyond the mcse red teaming active directory
DEF CON 24 - Sean Metcalf - beyond the mcse red teaming active directoryFelipe Prado
 
DEF CON 24 - Bertin Bervis and James Jara - exploiting and attacking seismolo...
DEF CON 24 - Bertin Bervis and James Jara - exploiting and attacking seismolo...DEF CON 24 - Bertin Bervis and James Jara - exploiting and attacking seismolo...
DEF CON 24 - Bertin Bervis and James Jara - exploiting and attacking seismolo...Felipe Prado
 
DEF CON 24 - Tamas Szakaly - help i got ants
DEF CON 24 - Tamas Szakaly - help i got antsDEF CON 24 - Tamas Szakaly - help i got ants
DEF CON 24 - Tamas Szakaly - help i got antsFelipe Prado
 
DEF CON 24 - Ladar Levison - compelled decryption
DEF CON 24 - Ladar Levison - compelled decryptionDEF CON 24 - Ladar Levison - compelled decryption
DEF CON 24 - Ladar Levison - compelled decryptionFelipe Prado
 
DEF CON 24 - Clarence Chio - machine duping 101
DEF CON 24 - Clarence Chio - machine duping 101DEF CON 24 - Clarence Chio - machine duping 101
DEF CON 24 - Clarence Chio - machine duping 101Felipe Prado
 
DEF CON 24 - Chris Rock - how to overthrow a government
DEF CON 24 - Chris Rock - how to overthrow a governmentDEF CON 24 - Chris Rock - how to overthrow a government
DEF CON 24 - Chris Rock - how to overthrow a governmentFelipe Prado
 
DEF CON 24 - Fitzpatrick and Grand - 101 ways to brick your hardware
DEF CON 24 - Fitzpatrick and Grand - 101 ways to brick your hardwareDEF CON 24 - Fitzpatrick and Grand - 101 ways to brick your hardware
DEF CON 24 - Fitzpatrick and Grand - 101 ways to brick your hardwareFelipe Prado
 
DEF CON 24 - Rogan Dawes and Dominic White - universal serial aBUSe remote at...
DEF CON 24 - Rogan Dawes and Dominic White - universal serial aBUSe remote at...DEF CON 24 - Rogan Dawes and Dominic White - universal serial aBUSe remote at...
DEF CON 24 - Rogan Dawes and Dominic White - universal serial aBUSe remote at...Felipe Prado
 
DEF CON 24 - Jay Beale and Larry Pesce - phishing without frustration
DEF CON 24 - Jay Beale and Larry Pesce - phishing without frustrationDEF CON 24 - Jay Beale and Larry Pesce - phishing without frustration
DEF CON 24 - Jay Beale and Larry Pesce - phishing without frustrationFelipe Prado
 
DEF CON 24 - Gorenc Sands - hacker machine interface
DEF CON 24 - Gorenc Sands - hacker machine interfaceDEF CON 24 - Gorenc Sands - hacker machine interface
DEF CON 24 - Gorenc Sands - hacker machine interfaceFelipe Prado
 
DEF CON 24 - Allan Cecil and DwangoAC - tasbot the perfectionist
DEF CON 24 - Allan Cecil and DwangoAC -  tasbot the perfectionistDEF CON 24 - Allan Cecil and DwangoAC -  tasbot the perfectionist
DEF CON 24 - Allan Cecil and DwangoAC - tasbot the perfectionistFelipe Prado
 
DEF CON 24 - Rose and Ramsey - picking bluetooth low energy locks
DEF CON 24 - Rose and Ramsey - picking bluetooth low energy locksDEF CON 24 - Rose and Ramsey - picking bluetooth low energy locks
DEF CON 24 - Rose and Ramsey - picking bluetooth low energy locksFelipe Prado
 
DEF CON 24 - Rich Mogull - pragmatic cloud security
DEF CON 24 - Rich Mogull - pragmatic cloud securityDEF CON 24 - Rich Mogull - pragmatic cloud security
DEF CON 24 - Rich Mogull - pragmatic cloud securityFelipe Prado
 
DEF CON 24 - Grant Bugher - Bypassing captive portals
DEF CON 24 - Grant Bugher - Bypassing captive portalsDEF CON 24 - Grant Bugher - Bypassing captive portals
DEF CON 24 - Grant Bugher - Bypassing captive portalsFelipe Prado
 
DEF CON 24 - Patrick Wardle - 99 problems little snitch
DEF CON 24 - Patrick Wardle - 99 problems little snitchDEF CON 24 - Patrick Wardle - 99 problems little snitch
DEF CON 24 - Patrick Wardle - 99 problems little snitchFelipe Prado
 
DEF CON 24 - Plore - side -channel attacks on high security electronic safe l...
DEF CON 24 - Plore - side -channel attacks on high security electronic safe l...DEF CON 24 - Plore - side -channel attacks on high security electronic safe l...
DEF CON 24 - Plore - side -channel attacks on high security electronic safe l...Felipe Prado
 
DEF CON 24 - Six Volts and Haystack - cheap tools for hacking heavy trucks
DEF CON 24 - Six Volts and Haystack - cheap tools for hacking heavy trucksDEF CON 24 - Six Volts and Haystack - cheap tools for hacking heavy trucks
DEF CON 24 - Six Volts and Haystack - cheap tools for hacking heavy trucksFelipe Prado
 
DEF CON 24 - Dinesh and Shetty - practical android application exploitation
DEF CON 24 - Dinesh and Shetty - practical android application exploitationDEF CON 24 - Dinesh and Shetty - practical android application exploitation
DEF CON 24 - Dinesh and Shetty - practical android application exploitationFelipe Prado
 
DEF CON 24 - Klijnsma and Tentler - stargate pivoting through vnc
DEF CON 24 - Klijnsma and Tentler - stargate pivoting through vncDEF CON 24 - Klijnsma and Tentler - stargate pivoting through vnc
DEF CON 24 - Klijnsma and Tentler - stargate pivoting through vncFelipe Prado
 
DEF CON 24 - Antonio Joseph - fuzzing android devices
DEF CON 24 - Antonio Joseph - fuzzing android devicesDEF CON 24 - Antonio Joseph - fuzzing android devices
DEF CON 24 - Antonio Joseph - fuzzing android devicesFelipe Prado
 

More from Felipe Prado (20)

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

Recently uploaded

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

DEF CON 23 - Yaniv Balmas and Lior Oppenheim - key logger-video mouse

  • 1. Key-Logger, Video, Mouse How to turn your KVM into a raging key-logging monster
  • 2. MEETTHETEAM Yaniv Balmas “This should theoretically work” Security Researcher Lior Oppenheim “The mad scientist” Check Point Software Technologies Check Point Software Technologies Security Researcher
  • 3. TOOMANYCOMPUTERS • Computers • More computers • A LOT OF COMPUTERS
  • 4. WHATISKVM? • Keyboard, Video, Mouse • KVM Connects the same Keyboard, Video and Mouse to one or more computers.
  • 6. WHEREARETHEY? • On top of your server racks. • On your desktop. • In your security centres. KVMS ARE EVERYWHERE!!
  • 8. ITRUNSCODE • On screen configuration display. • Configurable hot-keys. • Control device functionality through keyboard. Exploitable? + + =
  • 10. SOFTWARE • Opening the KVM box. • Manuals, Cables, Warranty and CD… • CD contains A Firmware Upgrade Utility! • Can the firmware be extracted from the upgrade utility?! • Since x86 is no new territory. we can reverse engineer this!
  • 12. FAIL!
  • 13. SERIALSNIFF • Firmware upgrade process is done via a custom serial connection. • It is possible to extract the (possibly) decoded firmware binary from the serial protocol. • Its just a matter of analyzing the serial protocol.
  • 14. PROTOCOLANALYSIS 46 55 a3 00 03 63 40 d7 85 85 32 ea e2 01 6b 85 FU£..c@◊ÖÖ2Í‚.kÖ 32 a6 d9 d6 e5 df 55 a6 d5 22 04 d6 cd 05 d5 96 2¶Ÿ÷ÂflU¶’".÷Õ.’ñ 27 85 85 d7 40 a5 d7 32 01 32 e2 85 6b ea 85 d9 'ÖÖ◊@•◊2.2‚ÖkÍÖŸ df d5 e5 a6 55 d6 a6 04 2d 27 cd 22 d5 d6 96 85 fl’¶U÷¶.-'Õ"’÷ñÖ a5 01 40 85 d7 d7 81 •.@Ö◊◊Å 46 55 23 00 03 63 00 24 FU#..c.$ From Device To Device Fixed Header OpCode HandshakeDataTransfer 46 55 90 00 44 49 b8 FUê.DI∏ 46 55 10 00 43 ** 2d 31 ** ** 34 41 2f 31 ** ** FU..C*-1**4A/1** 32 41 00 00 4d 41 49 4e 00 00 00 56 34 32 52 34 2A..MAIN...V42R4 31 37 56 31 30 52 30 38 31 57 37 38 45 36 35 00 17V10R081W78E65. 00 a2 .¢ 46 55 a0 00 43 54 d2 FU†.CT“ 46 55 20 00 00 bb FU ..ª 46 55 a2 00 ** ** ** ** ** ** 2d 31 37 33 ** 41 FU¢.******-173*A 2f 31 ** ** ** 41 00 00 4d 41 49 4e 00 00 00 56 /1***A..MAIN…V 34 32 56 31 30 04 ce 19 a7 75 50 35 ca aa 6a 0a 42V10.Œ.ßuP5 ™j. ca 8a 0a aa 01 09 8c 69 73 49 1c c0 6a c7 01 ac  ä.™..åisI.¿j«.¨ 7f 25 25 49 10 %%I. 46 55 22 00 00 bd FU"..Ω 46 55 a3 00 00 00 05 68 70 7d 5b af 65 05 4d ea FU£....hp}[Øe.MÍ 2d a1 4f 55 85 05 d1 04 04 b7 d8 76 05 05 7a 04 -°OUÖ.—..∑ÿv..z. 04 84 e3 17 04 05 04 04 04 ba 15 ed 32 05 ec 68 .Ñ„......∫.Ì2.Ïh 03 0f 8b 0f be 85 16 37 be 12 85 07 13 c5 b7 96 ..ã.æÖ.7æ.Ö..≈∑ñ 92 03 94 7f 05 3d 2a í.î.=* CheckSum Seq. Number
  • 16. FAIL!
  • 19. PCBLAYOUT Unknown X2 PLD X2 8052 X1 External RAM X1
  • 20. UARTMAGIC • 80512 Chips have an integrated UART port. • Which IC pins should be tapped? • If we find out, the firmware could be extracted using simple LOGIC.
  • 21. NOTHINGBUTLOGIC • 30-45 China mail shipping days later. • We can finally use LOGIC.
  • 22. TAPICPINS • Tapping the 8052 IC UART pins using Logic Analyzer. • Reveals the the UART port’s signals.
  • 23. To UART From UART SIGNALANALYSIS • Reviewing the signals in the UI. • An obvious pattern emerges.
  • 25. GREATFAIL! 46 55 90 00 44 49 b8 FUê.DI∏ 46 55 10 00 43 ** 2d 31 ** ** 34 41 2f 31 ** ** FU..C*-1**4A/1** 32 41 00 00 4d 41 49 4e 00 00 00 56 34 32 52 34 2A..MAIN...V42R4 31 37 56 31 30 52 30 38 31 57 37 38 45 36 35 00 17V10R081W78E65. 00 a2 .¢ 46 55 a0 00 43 54 d2 FU†.CT“ 46 55 20 00 00 bb FU ..ª 46 55 a2 00 ** ** ** ** ** ** 2d 31 37 33 ** 41 FU¢.******-173*A 2f 31 ** ** ** 41 00 00 4d 41 49 4e 00 00 00 56 /1***A..MAIN…V 34 32 56 31 30 04 ce 19 a7 75 50 35 ca aa 6a 0a 42V10.Œ.ßuP5 ™j. ca 8a 0a aa 01 09 8c 69 73 49 1c c0 6a c7 01 ac  ä.™..åisI.¿j«.¨ 7f 25 25 49 10 %%I. 46 55 22 00 00 bd FU"..Ω 46 55 a3 00 00 00 05 68 70 7d 5b af 65 05 4d ea FU£....hp}[Øe.MÍ 2d a1 4f 55 85 05 d1 04 04 b7 d8 76 05 05 7a 04 -°OUÖ.—..∑ÿv..z. 04 84 e3 17 04 05 04 04 04 ba 15 ed 32 05 ec 68 .Ñ„......∫.Ì2.Ïh 03 0f 8b 0f be 85 16 37 be 12 85 07 13 c5 b7 96 ..ã.æÖ.7æ.Ö..≈∑ñ 92 03 94 7f 05 3d 2a í.î.=* 46 55 a3 00 03 63 40 d7 85 85 32 ea e2 01 6b 85 FU£..c@◊ÖÖ2Í‚.kÖ 32 a6 d9 d6 e5 df 55 a6 d5 22 04 d6 cd 05 d5 96 2¶Ÿ÷ÂflU¶’".÷Õ.’ñ 27 85 85 d7 40 a5 d7 32 01 32 e2 85 6b ea 85 d9 'ÖÖ◊@•◊2.2‚ÖkÍÖŸ df d5 e5 a6 55 d6 a6 04 2d 27 cd 22 d5 d6 96 85 fl’¶U÷¶.-'Õ"’÷ñÖ a5 01 40 85 d7 d7 81 •.@Ö◊◊Å 46 55 23 00 03 63 00 24 FU#..c.$
  • 26. BREAKINGCODE • The BLOB is probably translated to 8051 Assembly. • The translation is done somewhere within the 8052 chip. • It might be possible to break the obfuscation!
  • 27. REMEETTHEBLOB Last XX Bytes are padded with 0x53
  • 33. BREAKINGCODE Final 8 Bytes are different.
  • 34. ACLUE? • What does these last 8 bytes mean? • Are they a clue left for use by a mad embedded developer? • If we could just get some more data…
  • 35. FIRMWAREDIFFS! • We have only analyzed a single firmware version. • Perhaps other firmware versions could be insightful. Last 8 Bytes Firmware Version 91 99 99 89 91 B2 99 00 3 . 3 . 3 1 2 B2 92 89 81 A1 99 A1 89 4 . 1 . 4 0 1 92 00 A1 A1 89 B2 89 91 4 . 2 . 4 1 1 91 92 A1 89 A1 A1 B2 00 4 . 2 . 4 1 4 B2 A1 A1 89 A9 00 92 91 4 . 2 . 4 1 5 A1 92 00 89 B1 91 A1 B9 4 . 2 . 4 1 6 92 00 A1 89 91 B2 A1 89 4 . 2 . 4 1 7 00 A1 92 91 C1 B2 A1 89 4 . 2 . 4 1 8 00 91 A1 B2 C9 89 A1 92 4 . 2 . 4 1 9
  • 36. APATTERN? • Listing the binary values of these “patterns” from all firmware versions. • If only these were ASCII values… Value Hex Binary 1 0x89 10001001 2 0x91 10010001 3 0x99 10011001 4 0xA1 10100001 5 0xA9 10101001 6 0xB1 10110001 7 0xB9 10111001 8 0xC1 11000001 9 0xC9 11001001
  • 37. THEYCOULDBE! • If we shift the bits 3 positions to the right. • We get our ASCII values! Value Hex Binary 1 0x89 10001001 2 0x91 10010001 3 0x99 10011001 4 0xA1 10100001 5 0xA9 10101001 6 0xB1 10110001 7 0xB9 10111001 8 0xC1 11000001 9 0xC9 11001001 ROR 3 ASCII 00110001 1 00110010 2 00110011 3 00110100 4 00110101 5 00110110 6 00110111 7 00111000 8 00111001 9
  • 39. 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 RESHUFFLE AGCFEDBHIOKNMLJPQWSVUTRX
  • 40. RESHUFFLE 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 A GC FEDB HI OK NMLJ PQ WS VUTR X Position Original 1 1 2 7 3 3 4 6 5 5 6 4 7 2 8 8
  • 42. 8051FUN • We can now design our own “custom” firmware- upgrade utility. • However, we do need a basic understanding of 8051 Assembly!
  • 43. 8051REVIEW + Only 255 OP-Codes, and ~40 Instructions. - Functions are not *really* functions. - Just a single memory access register. - Registers keep on changing for some reason.