IEEE Access (Jan 2020)

Classifying Proprietary Firmware on a Solid State Drive Using Idle State Current Draw Measurements

  • T. Owens Walker,
  • Justin A. Blanco,
  • Ryan Rakvic,
  • Ann Vanleer,
  • Dane Brown,
  • James Shey,
  • Gregory L. Sinsley,
  • Hau T. Ngo,
  • Robert W. Ives

DOI
https://doi.org/10.1109/ACCESS.2020.2973605
Journal volume & issue
Vol. 8
pp. 31869 – 31881

Abstract

Read online

Solid state drives (SSDs) are coming under increased scrutiny as their popularity continues to grow. SSDs differ from their hard disk drive predecessors because they include an onboard layer of firmware to perform required maintenance tasks related to data location mapping, write performance, and drive lifetime management. This firmware layer is transparent to the user and can be difficult to characterize despite its clear potential to impact drive behavior. Flaws and vulnerabilities in this firmware layer have become increasingly common. In this work, we propose and analyze a technique to classify different versions of proprietary firmware on an SSD through the use of current draw measurements. We demonstrate that major groupings of firmware can be classified using current draw measurements not only from explicitly active drive states such as read and write but also from the low power idle state. We achieve pairwise classifications rates near 100% between firmware examples in these different major groupings. Coupling these results with firmware release information, we are able to infer major updates in the firmware timeline for the SSD we examined. We also develop an anomaly detector and achieve detection rates of 100% for samples that reside outside of the reference grouping.

Keywords