Dns cache poisoning
Коли DNS-сервер отримує неавтентичні дані і кешируєт їх для оптимізації швидкодії, він стає отруєним і починає надавати неавтентичні дані своїм клієнтам.
Зазвичай комп'ютер в мережі використовує DNS-сервер, наданий своєю організацією або інтернет-провайдером. DNS-сервери часто встановлюються в мережі організацій для прискорення процесу трансляції імен за допомогою кешування раніше отриманих відповідей на запити. Атака на DNS-сервер може вплинути на роботу користувачів цього сервера або навіть на користувачів інших серверів, що посилаються на отруєний.
Запит від DNS-сервера жертви: яка A-запис для subdomain.attacker.example?
Підміна NS-записи для іншого домену жертви
Запит DNS-сервера: яка A-запис для subdomain.attacker.example?
Сервер-жертва збереже не відноситься до запиту інформацію про NS-записи для target.example в кеші, що дозволить атакуючому відповідати на наступні запити для всього домену target.example.
Запобігання атак і протидія
Багато атаки на кеш можуть бути запобігти на стороні DNS-серверів за допомогою зменшення ступеня довіри до інформації, що приходить від інших DNS-серверів, або навіть ігнорування будь-яких DNS-записів, прямо не відносяться до запитів. Наприклад, останні версії BIND (версії 9, 10) виконують такі перевірки. Істотно знизити ймовірність успішної атаки на кеш може використання випадкових UDP-портів для виконання DNS-запитів.
Атакам на кеш також можна протиставити транспортний рівень або рівень додатків моделі OSI. так як і на цих рівнях можуть бути використані цифрові підписи. Наприклад, в безпечної версії HTTP - HTTPS користувач може перевірити, чи має сервер, з яким він з'єднався, сертифікат ЕЦП і кому цей сертифікат належить. Схожий рівень безпеки має SSH, коли програма-клієнт перевіряє ЕЦП віддаленого сервера під час активного з'єднання. З'єднання за допомогою IPSEC встановиться, якщо клієнтом і сервером НЕ будуть пред'явлені заздалегідь відомі ключі ЕЦП. Додатки, які завантажують свої оновлення автоматично, можуть мати вбудовану копію сертифіката ЕЦП і перевіряти справжність оновлень за допомогою порівняння ЕЦП сервера оновлень з вбудованим сертифікатом.