PSE: Automotive Pentesting

Master Project System Development

In the Master Project System Development, students work in teams under practical conditions on a given topic from the field of computer science. The lecturer takes the role of the client / customer. At the same time, he supports the team as a leading member in order to set the right course, especially in the initial phase, and to get the project rolling. Over the course of the project, the student team members usually take on changing roles (e.g. project manager, architect, developer, tester) and thus get to know the project work from different perspectives.

In an introductory meeting, the detailed topic is first presented and the general conditions are explained. During the project, weekly project meetings are held in which the results of the previous week are presented and the goals of the coming week(s) are defined.

Topic

Modern vehicles are highly connected, e.g., with other vehicles, mobile devices (e.g., smartphones), infrastructure components (e.g., charging stations for electric vehicles), the Internet, and various back-end systems (e.g., of the manufacturer or of insurance companies). In addition to autonomous driving functions, this also enables a variety of new value-added services. However, this also gives rise to new opportunities for attack, some with considerable consequences; including economic damage (e.g., expensive recalls, loss of image), threats to life and limb (e.g., through manipulation of steering and brakes), and violations of privacy (e.g., the creation of movement or usage profiles). IT security and privacy measures are therefore indispensable for modern vehicles.

An important step in the development process but also during the lifetime of a vehicle is to check for vulnerabilities. Special pentesting methods and tools adapted to the vehicle context are suitable for this purpose.

In the Master PSE "Automotive Pentesting" an existing framework of hardware and software will be extended by new pentesting modules to detect vulnerabilities in ECUs, radio technologies, protocols etc. Participants will be divided into teams and each team will develop a module on a focus area such as.

  • Fuzzing of protocol stacks, e.g., Bluetooth, WiFi, cellular communications
  • Reverse engineering, e.g., firmware of an ECU
  • Attacks on specific protocols, e.g., bypassing authentication for Unified Diagnostic Services (UDS)
  • Unauthorized access to ECUs via debug interfaces such as JTAG
  • Attacks via inadequately secured APIs, e.g. in the infotainment system
  • Infiltration, modification, suppression or interception of internal communication, e.g. via CAN, automotive Ethernet
  • Analysis of cryptographic libraries and protocols
  • Analysis of (Android) vehicle apps and backend APIs
  • Replay, relay or DoS attacks on radio keys
  • Attacks on the communication of an electric vehicle with the charging infrastructure, e.g., ISO 15118
  • Attacks on V2X communication

Proficiency

  • Good programming skills, especially knowledge in C/C++ and/or Python are helpful
  • IT security lectures (e.g., IT security, cryptography, network security)
  • Attendance of the course Automotive Security is helpful but not necessary
  • Knowledge from the course "Software Development for Embedded Systems" as well as basic electrotechnical knowledge is helpful

Conditions

The concrete scope of the solutions to be developed depends, among other things, on the team size and the technical possibilities. Agile project management according to Scrum and Kanban will be used for the development. The usual development tools will be used, e.g., GIT repository, Kanban board. It is planned to continue the project in future events. The project is under the MIT License.

 

Contact

Prof. Dr. Christoph Krauß

Communication Schöfferstraße 10
64295 Darmstadt
Office: D19, 3.07

+49.6151.533-60152
christoph.krauss@h-da.de

1

Consultation
nach Vereinbarung / by appointment