BreachRadar: Automatic Detection of Points-of-Compromise
  Bank transaction fraud results in over $13B annual losses for banks,
merchants, and card holders worldwide. Much of this fraud starts with a
Point-of-Compromise (a data breach or a skimming operation) where credit and
debit card digital information is stolen, resold, and later used to perform
fraud. We introduce this problem and present an automatic Points-of-Compromise
(POC) detection procedure. BreachRadar is a distributed alternating algorithm
that assigns a probability of being compromised to the different possible
locations. We implement this method using Apache Spark and show its linear
scalability in the number of machines and transactions. BreachRadar is applied
to two datasets with billions of real transaction records and fraud labels
where we provide multiple examples of real Points-of-Compromise we are able to
detect. We further show the effectiveness of our method when injecting
Points-of-Compromise in one of these datasets, simultaneously achieving over
90% precision and recall when only 10% of the cards have been victims of fraud.
