The Tesla Model S Is Basically A Good Looking IT Department On Wheels

We may earn a commission from links on this page.

It's pretty well known that modern cars are full of little computers talking to each other. This internal network, known as the CAN bus, is pretty specific to cars and as a result is pretty unfamiliar to most people. Tesla, of course, loves to be different. And by different, I mean not different. Hear me out.

Recently, an intrepid and curious Tesla owner found a hidden four-pin connector, and with a hunch and some trial-and-error work discovered that it is in fact an ethernet port, and wired up a standard ethernet cable to connect to it.

What he discovered next is notable for how strangely familiar it all is to anyone with even a passing knowledge of computer networking:

The car's internal 100 Mbps, full duplex ethernet network consists of 3 devices with assiged IP addresses in the 192.168.90.0 subnet, the center console, dashboard/nav screen and one more unknown device. Some ports and services that were open on the devices were 22 (SSH), 23 (telnet),53 (open domain), 80 (HTTP), 111 (rpcbind), 2049 (NFS), 6000 (X11). Port 80 was serving up a web page with the image or media of the current song being played. The operating system is modified version of Ubuntu using an ext3 filesystem.

Advertisement

It's really odd just how, well, normal all this feels — it's just like any home or office network. They're using it in some interesting ways — for example, the current song playing artwork is being served to the center large display simply like normal web traffic.

Advertisement

There's a full thread from the original poster, nlc on the Tesla Motors Club forum, that's full of really interesting information about the network, and lots of useful basic details:

The ethernet network of the car contains 3 peripherals :
- The center console, IP Address 192.168.90.100
- The dashboard/navigation screen, IP Address 192.168.90.101
- An unknown peripheral, IP Address 192.168.90.102

These 3 peripheral send of lot of data in broadcast UDP, to 192.168.90.255 broadcat address. Different UDP ports are used depending of data type.

In fact they use the same principle a CAN bus use :

- Everyone send data on the network
- Anyone who need it listen for this data.

The data shared on the netword seem to be in clear. I can see a Ascii header which define the type of the frame. Some data are in binary format thus it will need some reverse engineering to understand the data.

I also tested the openeds ports of the 3 peripherals :

- Central console :

PORT STATE SERVICE
22/tcp open ssh
53/tcp open domain
80/tcp open http
111/tcp open rpcbind
2049/tcp open nfs
6000/tcp open X11
MAC Address: FA:9E:70:EA:xx:xx (Unknown)

- Dashboard screen :

PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
6000/tcp open X11
MAC Address: 36:C4:1F:2A:xx:xx (Unknown)

- Unknown device :

PORT STATE SERVICE
23/tcp open telnet
1050/tcp open java-or-OTGfileshare
MAC Address: 00:00:A7:01:xx:xx (Network Computing Devices)

Advertisement

He even managed to get Firefox running on both the center screen and the dash cluster screen. It's interesting to see how the displays are oriented, at least according to how the OS actually sees them. I'm guessing there's some sort of reason why the screen orientation would be rotated 180° on the dash cluster, though I have no idea what it is.

If you want to try this on your (or a very open/inattentive friend's) Tesla, here's a picture of the pinouts for the color-coded Ethernet wires. Also, you should be aware that Tesla was alerted to his explorations, and contacted him to suggest that he knock it off, already:

This evening I got a call from service center

They told me Tesla USA engineers seen a tentative of hacking on my car...

I explained it was me because I tried to connect the diagnosis port to get some useful data (speed, power, etc...). They told me it can be related to industrial espionage and advised me to stop investigation, to not void the warranty....
Don't know if they really seen something in the log, because I just sniffed the network. Or maybe they seen the port scanning with nmap ? Or maybe they just read this topic ?

Advertisement

I'm all for people hacking the things they own; it was decided that jailbreaking your phone is legal, though you can't blame Tesla for not wanting to be on the hook if someone does something dangerous or stupid. Still, with appropriate caveats, it's the man's car and he should be able to tinker as he pleases.

This opens up all kinds of interesting possibilities, especially since the protocols they're using in the car are so well-known outside the automotive universe. I'm excited to see what happens next.