Для того, чтобы защититься от атак, необходимо их изучать и классифицировать. В качестве примера классификации приведем список категорий:
Захват паролей (Stealing passwords) — методы, используемые для получения паролей других пользователей.
Социальная инженерия (Social engineering) — получение конфиденциальной информации путем искусных переговоров.
Ошибки и черные ходы (Bugs and backdoors) — использование систем, которые не соответствуют своим спецификациям, или замена программ скомпрометированными версиями.
Ошибки аутентификации (Authentication failures) — нарушение механизмов, используемых для аутентификации.
Ошибки протоколов (Protocol failures) — протоколы ненадлежащим образом разработаны или реализованы.
Утечка информации (Information leakage) — получение информации, которая необходима администраторам, для корректного функционирования сети, но также может использоваться злоумышленниками.
Отказ в обслуживании (Denial of service) — усилия, направленные на создание препятствий пользователям в использовании их систем.