Skip to content

Commit 945a2c2

Browse files
Add Heartland / SQLi story time
Signed-off-by: David A. Wheeler <[email protected]>
1 parent 2094950 commit 945a2c2

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

secure_software_development_fundamentals.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2413,6 +2413,10 @@ forget to do it.
24132413
The mistake can happen at the beginning, or later when the code is modified,
24142414
but experience shows that the mistake *will* happen.
24152415

2416+
> 😱 STORY TIME: Heartland Payment Systems / SQL Injection
2417+
2418+
> In late 2007 attackers used a SQL injection attack to compromise the database of Heartland Payment Systems (aka "Heartland"). At the time Heartland processed 100 millino payment card transactions per month for 175,000 merchants. The attackers used the SQL injection to insert code into Web scripts used by the Web login page. The attackers eventually used this accept to install a spyware program called a 'sniffer' that captured the card data as payments were processed for several months in 2008. As a result, Heartland temporarily lost its compliance with the Payment Card Industry Data Security Standard (PCI DSS), which was required to implement their core business of processing card payments. Heartland reportedly had to pay $145 million in compensation for fraudulent payments (["Data Breach Directions: What to Do After an Attack" by Diane Ritchey](https://www.securitymagazine.com/articles/86071-data-breach-directions-what-to-do-after-an-attack)). They have since taken many steps to make their systems stronger and more robust to try to prevent a recurrence.
2419+
24162420
🔔 SQL injection is a special case of injection attacks, and we have already noted that injection attacks are so common and dangerous that they are 2017 OWASP Top 10 #1. SQL injection specifically is such a common cause of security vulnerabilities that just SQL injection is 2021 CWE Top 25 #6 and 2019 CWE Top 25 #6. SQL injection is also identified as [CWE-89](https://cwe.mitre.org/data/definitions/89.html), *Improper Neutralization of Special Elements used in an SQL Command (‘SQL Injection’)*.
24172421

24182422
Again, we want to try to use an approach that is easy to use correctly - it needs to be secure by default.
@@ -6112,6 +6116,8 @@ Reichel, Robert, *How we threat model*, 2020-09-02 ([https://github.blog/2020-09
61126116

61136117
Reproducible Builds project, “Definitions”, (<https://reproducible-builds.org/docs/definition/>)
61146118

6119+
Ritchey, Diane, "Data Breach Directions: What to Do After an Attack", *Security Manazine*, 2015-02-01, <https://www.securitymagazine.com/articles/86071-data-breach-directions-what-to-do-after-an-attack>
6120+
61156121
Rogers, Tony, *Falsehoods Programmers Believe About Names - With Examples*, 2018 ([https://shinesolutions.com/2018/01/08/falsehoods-programmers-believe-about-names-with-examples/](https://shinesolutions.com/2018/01/08/falsehoods-programmers-believe-about-names-with-examples/))
61166122

61176123
Romailler, Yolan, *The definitive guide to “Modulo Bias and how to avoid it”!* (<https://research.kudelskisecurity.com/2020/07/28/the-definitive-guide-to-modulo-bias-and-how-to-avoid-it/>)

0 commit comments

Comments
 (0)