This chapter contains a catalog of the most common mistakes made in cyber-security and summarizes their resolution. I start by defining cybersecurity antipatterns. I then describe how and why antipatterns are created. And finally, I show how antipatterns provide benefits to the reader.
An antipattern, just like a software design pattern, is a structured narrative. Design patterns focus on solutions whereas antipatterns focus on commonly recurring problems and then address the problems with one or more candidate solutions.
I was part of the team who wrote the first information technology (IT) antipatterns book more than a decade ago (the team who wrote: Antipatterns: Refactoring Software, Architectures, and Projects in Crisis [John Wiley & Sons, 1998, ISBN 978-0-471-19713-3]), and now many authors have replicated the successful concept. To write antipatterns, you need a template. An antipattern template is an outline for each pattern that assures a consistent conceptual flow and presents all of the necessary elements. I typically use two types of templates—one for a full write-up and another, simpler template for micro-antipatterns.
In the original architecture patterns book, A Pattern Language by Christopher Alexander (Oxford University Press, 1977, ISBN 978-0-195-01919-3), the author used an informal template. There is a tradeoff between having a detailed pattern template and an informal one. An informal template makes it easier to work ...