Matching Items (3)
Filtering by

Clear all filters

137414-Thumbnail Image.png
Description
The purpose of this project was to create a modular embedded systems platform that would provide a hands-on lab experience for students learning about embedded systems protocols. The system would be designed to be modular, expandable, and productizable. Its modularity would eliminate errors in the design and make the entire

The purpose of this project was to create a modular embedded systems platform that would provide a hands-on lab experience for students learning about embedded systems protocols. The system would be designed to be modular, expandable, and productizable. Its modularity would eliminate errors in the design and make the entire system more robust. It would also be expandable, which means additional project boards could be created in the future without requiring a complete redesign of the system. And finally, productizing the entire system would allow it to be sold to other universities who may have a similar program that would benefit from a system such as the OCTOPUS.
ContributorsDavis, Mareike (Author) / Burger, Kevin (Thesis director) / Vannoni, Greg (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor) / School of International Letters and Cultures (Contributor)
Created2013-12
134879-Thumbnail Image.png
Description
The purpose of this project was to implement and analyze a new proposed rootkit that claims a greater level of stealth by hiding in cache. Today, the vast majority of embedded devices are powered by ARM processors. To protect their processors from attacks, ARM introduced a hardware security extension known

The purpose of this project was to implement and analyze a new proposed rootkit that claims a greater level of stealth by hiding in cache. Today, the vast majority of embedded devices are powered by ARM processors. To protect their processors from attacks, ARM introduced a hardware security extension known as TrustZone. It provides an isolated execution environment within the embedded device that enables us to run various memory integrity and malware detection tools to identify possible breaches in security to the normal world. Although TrustZone provides this additional layer of security, it also adds another layer of complexity, and thus comes with its own set of vulnerabilities. This new rootkit identifies and exploits a cache incoherence in the ARM device as a result of TrustZone. The newly proposed rootkit, called CacheKit, takes advantage of this cache incoherence to avoid memory introspection from tools in secure world. We implement CacheKit on the i.MX53 development board, which features a single ARM Cortex A8 processor, to analyze the limitations and vulnerabilities described in the original paper. We set up the Linux environment on the computer to be able to cross-compile for the development board which will be running the FreeScale android 2.3.4 platform with a 2.6.33 Linux kernel. The project is implemented as a kernel module that once installed on the board can manipulate cache as desired to conceal the rootkit. The module exploits the fact that in TrustZone, the secure world does not have access to the normal world cache. First, a technique known as Cache-asRAM is used to ensure that the rootkit is loaded only into cache of the normal world where it can avoid detection from the secure world. Then, we employ the cache maintenance instructions and resisters provided in the cp15 coprocessor to keep the code persistent in cache. Furthermore, the cache lines are mapped to unused I/O address space so that if cache content is flushed to RAM for inspection, the data is simply lost. This ensures that even if the rootkit were to be flushed into memory, any trace of the malicious code would be lost. CacheKit prevents defenders from analyzing the code and destroys any forensic evidence. This provides attackers with a new and powerful tool that is excellent for certain scenarios that were previously thought to be secure. Finally, we determine the limitations of the prototype to determine possible areas for future growth and research into the security of networked embedded devices.
ContributorsGutierrez Barnett, Mauricio Antonio (Author) / Zhao, Ziming (Thesis director) / Doupe, Adam (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-12
Description
Girard Training Stables is a horse-based nonprofit organization that offers riding lessons, mental health support, and physical therapy. A scheduling tool was recently built for them to assist in managing as many as 90 volunteers across many different events. Our goal was to add observability to this scheduling tool, as

Girard Training Stables is a horse-based nonprofit organization that offers riding lessons, mental health support, and physical therapy. A scheduling tool was recently built for them to assist in managing as many as 90 volunteers across many different events. Our goal was to add observability to this scheduling tool, as being able to better observe the tool’s internal state would make fixing any problems easier. To add this observability we added both frontend and backend monitoring to track metrics such as how many users sign up for new accounts, when users start and finish creating an event, how much the server running the website is using its resources, and how many errors are caught while the server is running. Using these metrics, we were able to gain much insight into the internal state of the website and its users. We found that the frontend metrics were useful to non-technical users, with 70% of the users surveyed being able to correctly understand the data generated and theorize about parts of the website UI that could be improved based on said data. We were also able to correctly catch and log 100% of the test errors that were generated, and send alerts to administrators if these errors led to system failure. Overall, we were able to significantly improve the observability of the Girard Training Stables scheduling tool by adding monitoring, making it more robust, scalable, and easy to improve for the future.
ContributorsMoore, Peter (Author) / Ross, Michael (Co-author) / Chavez, Helen (Thesis director) / Vannoni, Greg (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2022-12