2025 Feb 12 :: LinKRID: Vetting Imbalance Reference Counting in Linux kernel with Symbolic Execution

Speaker: Abdun Nihaal


Talk 1

  • Topic: LinKRID: Vetting Imbalance Reference Counting in Linux kernel with Symbolic Execution

  • Description: Linux kernel employs reference counters, which record the number of references to a shared kernel object, to track its lifecycle and prevent memory errors like use-after-free. However, the usage of reference counters can be tricky and often error-prone, especially considering unique kernel conventions of managing reference counters (e.g., external vs. internal reference counters). In this paper, we aim to automatically discover incorrect usage of reference counters, overcoming two key challenges: (1) scalability and (2) the aforementioned unique kernel conventions. Specifically, we develop a tiered program analysis based solution to efficiently and precisely check the imbalances between the change in the actual number of references and the corresponding reference counter. We apply our tool to the 4.14.0 kernel (with allyesconfig) and find 118 bugs, out of which 87 are new. The result shows our tool is scalable and effective.

  • Time 6 pm to 7 pm (IST)

  • Presenter: Abdun Nihaal

  • About the Presenter: https://www.linkedin.com/in/abdun-nihaal/

  • URL : Video call link: https://meet.google.com/eek-tgyh-ofe