car hacking

TLDR;

In 2014, Open Garages—a group of people interested in sharing and collaborating on vehicle security—released the first Car Hacker’s Manual as course material for car hacking classes. The original book was designed to fit in a vehicle’s glove-box and to cover the basics of car hacking in a one/two-day class on auto security.

This blog post highlights the available resources to safetly play and hopefully learn more about CANbus and automobile/car hacking:

Car Hacking - Getting Started

Car Hacking is not really straight forward. It depends whether you are in the USA or Europe, or soemwhere else in the world? It also depends on the age, manufacturer and model of your car! There are so many different buses, and communciation protocols that you need to research, and learn.

But on getting started, a good place to start is CANOpen and the CANbus.

Some of the different protocols are discussed further in the book:

  • Extended Packets
  • The ISO-TP Protocol
  • The GMLAN Bus
  • The SAE J1850 Protocol
  • The PWM Protocol
  • The VPW Protocol

What is a CANbus

A Controller Area Network (CAN bus) is a robust vehicle bus standard designed to allow microcontrollers and devices to communicate with each other’s applications without a host computer. It is a message-based protocol, designed originally for multiplex electrical wiring within automobiles to save on copper, but it can also be used in many other contexts.

– Wikipedia

Why Start Car Hacking?

  • Understanding How Your Vehicle Works
  • Working on Your Vehicle’s Electrical Systems
  • Modifying Your Vehicle
  • Discovering Undocumented Features
  • Validating the Security of Your Vehicle
  • Helping the Auto Industry

Though the following warning is repeated in Opengarages online material and e-book:

Car hacking should not be taken casually. Playing with your vehicle’s network, wireless connections, onboard computers, or other electronics can damage or disable it. Be very careful when experimenting with any of the techniques in this book and keep safety as an overriding concern. As you might imagine, neither the author nor the publisher of this book will be held accountable for any damage to your vehicle.

The VM

The virtual machine is a Ubuntu 18.04 LTS vm in OVF format that works directly with Virtualbox, but can also be converted to work with VMware.

The credentials for login:

  • CarHacking:hackingcar

The opensource CAN drivers and a networking stack have been contributed by Volkswagen Research to the Linux kernel. Formerly known as Low Level CAN Framework (LLCF).

We would recommend install git and cloning the latest version of the repository as it has updated controls. The original used an Xbox controller, but support has been extended to PS3 controller and the keyboard.

In a terminal session, you can run the following commands:

cd Desktop
git clone https://github.com/zombieCraig/ICSim
cd ICSim
make

Running the Simulator

To start the simulator we suggest you follow the next few steps.

  • Open Activites
  • Type and select ‘Terminator’
  • Open/Split Terminator console into three horizontal terminals

First split terminal

./setup_vcan.sh
./icsim -s0 vcan0

This first terminal split can then be shrunk down to one console line.

Second terminal

Launching the packet sniffer

candump -c vcan0

or

cansniffer -c vcan0

Note: you wont see any data packets, until you start sending data. You also may want to adjust this terminal to occupy the largest visable window.

Third terminal

You can shrink the size of this window down to 2-3 terminal lines.

We use this terminal to inject packets, or run the control program.

We also recommend reading up on:

  • cangen
  • canplayer

CANbus terminals

Without a USB contoller, you can use the following keyboard commands:

Action Control
Accelerate Up Arrow
Left Indicator Left Arrow
Right Indicator Right Arrow
Lock All Doors Hold Right shift
Unlock All Doors Hold Left Shift
Operate Individual Door Left/Right shift + [A/B/X/Y]

Conclusion

Now you should have the necessary tools to begin your automobile/car hacking journey. We have briefly covered and introduced the following:

  • reading resources
  • an available VM from OpenGarages
  • training material
  • quick start guide

Have fun!

Disclaimer

Netscylla or its staff cannot be held responsible for any abuse relating from this blog post. This post is to raise awareness in the field or Automobile/Car Hacking and help intersted parties aware of the available training virtual machine, so that they can practise CANbus tools in a safe environment. REMEMBER: It is illegal to attempt unauthorised access on any system you do not personally own, unless you have explicit permission in writing from the system owner!


Share on: