1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Security Problem Discovered In Btrfs File-System

Linux Kernel

Published on 14 December 2012 04:07 PM EST
Written by Michael Larabel in Linux Kernel
27 Comments

A hash-based denial-of-service attack vulnerability has been discovered for the Btrfs, the next-generation Linux file-system.

It was just recently that SUSE Enterprise considered Btrfs to be "production ready" and while there aren't any tier-one distributions yet relying upon Btrfs as the default Linux file-system, two easy yet nasty DOS attack points have been uncovered. A developer, Pascal Junod, discovered that it's remarkably easy to carry out a local denial-of-service attack against the file-system based upon hash collisions.

For this Hash-DOS attack, the user must already have local access to the system, but from there it's quite easy to execute as shown in Pascal's blog post. "I’d like to show how hash-DoS can be applied to the btrfs file-system with some astonishing and unexpected success."

The two different Btrfs attacks amount to:
I computed the time to create 4000 empty files in the same directory whose names were randomly chosen. This takes about 0.2 seconds. The box used is a Fedora distribution within a VM (and btrfs was a loopback-ed device). Then, I computed the time to create those 4000 empty files in the same directory, whose names were however chosen in order to hash to the same CRC32C value. This operation fails after 5 (!) seconds and creating only 61 files. In other words, this first attack allows an adversary, in a shared directory scenario, to avoid that a victim creates a file with a known-in-advance name.
Secondly:
I have created several files with random names in a directory (around 500). The time required to remove them is negligible. Then, I have created the same number of files, but giving them only 55 different crc32c values. The time required to remove them is so large that I was not able to figure it out and killed the process after 220 minutes (!).
In his blog he published some sample Python code along with other technical details. Chris Mason, the maintainer of Btrfs, hopes to have the vulnerabilities addressed for the Linux 3.8 kernel.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
  2. AMD Radeon R9 290 Open-Source Driver Works, But Has A Ways To Go
  3. Trying The Configurable 45 Watt TDP With AMD's A10-7800 / A6-7400K
  4. Sumo's Omni Gets Reloaded
Latest Linux Articles
  1. 20-Way Radeon Comparison With Open-Source Graphics For Steam On Linux Gaming
  2. Preview: OS X 10.10 Yosemite vs. Ubuntu Linux GPU Performance
  3. Radeon Graphics Yield Mixed Results With Linux 3.17 Kernel
  4. AMD's RadeonSI Driver Sped Up A Lot This Summer
Latest Linux News
  1. Metro 2033 Redux Will Hopefully Hit Linux Real Soon
  2. New Virtual Monitor Software Might End Up On Linux
  3. Company of Heroes 2 Might Be Coming Out For Linux
  4. NIR Still Being Discussed For Mesa, LLVM Gets Brought Up Again
  5. Plasma Active Is Mostly Ported To KDE Frameworks 5
  6. Google Chrome 37 Brings Many Security Fixes
  7. MenuetOS Updated With SMP Threads & Onscreen Keyboard
  8. Mesa Has A New Release Manager
  9. Enlightenment E19 Lands Its New Wayland Compositor Code
  10. Nouveau Turns Into A Mess In Latest Linux 3.17 + Mesa 10.3-dev Tests
Latest Forum Discussions
  1. AMD Releases UVD Video Decode Support For R600 GPUs
  2. Announcing radeontop, a tool for viewing the GPU usage
  3. Updated and Optimized Ubuntu Free Graphics Drivers
  4. [DB] BIOS - ACPI - data collecting
  5. It's Now Possible To Play Netflix Natively On Linux Without Wine Plug-Ins
  6. Users defect to Linux as OpenBSD removes Lynx from base system
  7. Chinese People Try To Patent Wine On ARM
  8. American Citizens running AMOK for food stamps