Systems Cyber

Engineering secure systems: Systems Cyber at Colorado State University
Welcome to Systems Cyber, a group of systems engineering students at Colorado State University dedicated to the cybersecurity of systems. Led by Dr. Jeremy Daily, our team focuses on the heavy vehicle cybersecurity, researching and developing solutions to protect these systems from malicious attacks. We believe that the safety and security of transportation systems is of the utmost importance, and our goal is to ensure that the systems we rely on every day are secure and resilient. Join us as we work towards securing the future of transportation through systems engineering.
Research
Boating Data

Below we showcase data collected from Dr. Jeremy Daily's boat while at Horsetooth Reservoir. On this page, you will find videos and graphs that illustrate the data collected during our time at the reservoir. We have provided a few videos of students waterskiing, which show the movement of the boat in action, while the graphs give a detailed look at various parameters such as the RPM of the boat engine over time. The graphs are timed to match up with the videos, allowing you to see the correlation between the CAN data and the boats movements on the water.

Research
ELD Security

Our research addresses a critical aspect of modern commercial transportation, the security vulnerabilities inherent in Electronic Logging Devices (ELDs) mandated for use in commercial vehicles across the United States. As these devices become ubiquitous, ensuring their security is paramount, not only for the safety of the vehicles but also for the broader infrastructure they support. Electronic Logging Devices are installed to comply with U.S. regulations intended to manage driving hours and prevent driver fatigue. However, our findings suggest that these devices, designed to enhance road safety, also introduce significant cybersecurity risks.

Research
Heavy Vehicle CAN Data

The data linked on this page are stored in the SocketCAN and can-utils candump format. This format has one line per CAN message. Each line is constructed as (UNIX time stamp) channel CANID#CANDATA The unix time stamp is a floating point number representing the number of seconds from the epoch (1 Jan 1970). The channel is where the can data came from. For most systems, can1 represents the primary J1939 network. An eight character CANID is the arbitration ID for the CAN message. The CANDATA is up to 8 bytes of data per frame. The ID and DATA are represented as hexadecimal characters. The data length code (DLC) is determined as half the number of characters of the CANDATA. The raw log files are compressed to save space and make for more efficient downloads. Since a lot of CAN data is structured and repeated, compressing the files can save a lot of space.

Research
J1939 Attack Videos

Below we showcase the dangers of J1939 protocol attacks and vehicle network manipulations. J1939 is a communication protocol commonly used in heavy-duty vehicles and industrial equipment, and it is increasingly being targeted by malicious actors looking to exploit vulnerabilities in these systems. On this page, you will find a collection of videos that demonstrate the real-world results of J1939 attacks and manipulations. These videos provide a detailed look at the methods and techniques that could be used by attackers, as well as the potential consequences of a successful attack.

Research
Presentations

A collection of posters and presentations by Dr. Daily and his students in reverse chronological order. Most presentations are in PDF format with the title displayed as the hyperlink to download the presentation content. Presentations in class are usually available through the class website on Canvas. Some presentation that support papers also have links to datasets resulting from the research.

Research
Protocol Attacks

This research delves into the vulnerabilities of vehicular communication protocols, particularly focusing on the SAE J1939 and Unified Diagnostics Services (UDS) protocols, necessary for the functioning and diagnostics of medium and heavy-duty commercial vehicles. These protocols, while foundational to vehicular networking and diagnostics, present security risks due to potentially exploitable flaws.

Learn
J1939 Basics and Tools

This is an introductory guide for those looking to work with the J1939 protocol. The page covers the basics of the J1939 protocol and its applications, as well as providing a step-by-step guide on how to work with J1939 data using various tools and methods. The page discusses working with socketCAN in Python, using can-utils, a set of Linux command-line utilities for interfacing with CAN buses, and parsing J1939 data using the pretty_j1939 project, a Python package for decoding and interpreting J1939 messages. The webpage also includes examples and code snippets to help users better understand the concepts and techniques discussed. This page is a great resource for anyone who is new to working with J1939 data and wants to learn more about the protocol and how to use it in their projects.