News for hackers. Stuff that matters.
Re:ACIDRain: Concurrency-Related Attacks on Database-Backed ... by Skunkleton on Tuesday May 28, 2019 @02:35AM (#20027717)
ABSTRACT In theory, database transactions protect application data from cor- ruption and integrity violations. In practice, database transactions frequently execute under weak isolation that exposes programs to a range of concurrency anomalies, and programmers may fail to correctly employ transactions. While low transaction volumes mask many potential concurrency-related errors under normal operation, determined adversaries can exploit them programmatically for fun and profit. In this paper, we formalize a new kind of attack on database-backed applications called an ACIDRain attack, in which an adversary systematically exploits concurrency-related vulnerabil- ities via programmatically accessible APIs. These attacks are not theoretical: ACIDRain attacks have already occurred in a handful of applications in the wild, including one attack which bankrupted a popular Bitcoin exchange. To proactively detect the potential for ACIDRain attacks, we extend the theory of weak isolation to analyze latent potential for non-serializable behavior under concurrent web API calls. We introduce a language-agnostic method for detecting potential isolation anomalies in web applications, called Abstract Anomaly Detection (2AD), that uses dynamic traces of database accesses to efficiently reason about the space of possible concurrent interleavings. We apply a prototype 2AD analysis tool to 12 popular self-hosted eCommerce applications written in four languages and deployed on over 2M websites. We identify and verify 22 critical ACIDRain attacks that allow attackers to corrupt store inventory, over-spend gift cards, and steal inventory.
Re:ACIDRain: Concurrency-Related Attacks on Database-Backed ... by bouncycastle on Tuesday May 28, 2019 @02:41AM (#20027747)
So, umm... they re-discovered race conditions and gave it a fancy name?
Re:ACIDRain: Concurrency-Related Attacks on Database-Backed ... by praptak on Tuesday May 28, 2019 @02:59AM (#20027839)
The value of tfa is the work they put into practical demonstration and analysis. Anybody can sit in their armchair and speculate about theoretical exploits. It's the actual practical exploits and mitigation techniques that matter.
Re:ACIDRain: Concurrency-Related Attacks on Database-Backed ... by homakov on Tuesday May 28, 2019 @02:46AM (#20027769)
Correct. “ACIDrain” is literally a race condition and made up name.
Re:ACIDRain: Concurrency-Related Attacks on Database-Backed ... by founderling on Tuesday May 28, 2019 @02:36AM (#20027723)
I mean a technical TlDr of how the actual attack works.
Re:ACIDRain: Concurrency-Related Attacks on Database-Backed ... by tadkar on Tuesday May 28, 2019 @02:58AM (#20027835)
Basically use the web APIs to issue two spend requests almost simultaneously, and the fact that it takes time for the database to synchronize means you can double spend. As the posters above are saying, it’s very similar to a race condition.
Re:ACIDRain: Concurrency-Related Attacks on Database-Backed ... by dc_gregory on Tuesday May 28, 2019 @03:00AM (#20027849)
The technical TLDR is "db level race condition", or the title of the article.