Atak man in the middle

Man in the middle, MITM (również atak „człowiek pośrodku”[1]) – atak kryptologiczny polegający na podsłuchu i modyfikacji wiadomości przesyłanych pomiędzy dwiema stronami bez ich wiedzy.

Schemat działania ataku man in the middle pasywnego (góra) i aktywnego (dół).

Przykładem takiego ataku jest podsunięcie nadawcy własnego klucza przy transmisji chronionej szyfrem asymetrycznym. Scenariusz takiego ataku w systemie klucza publicznego mógłby wyglądać następująco:

  • Alicja chce połączyć się z Bobem (np. stroną banku internetowego). Ewa jest osobą atakującą transmisję w celu przechwycenia tajnych haseł Alicji
  • Ewa w pierwszym etapie musi przekierować ruch z komputera Alicji do Boba na swój komputer, może to zrobić np. zmieniając dane podawane przez DNS o adresie komputera Boba, lub nasłuchiwać zapytań do DNS i w odpowiednim momencie wysłać adres swojego komputera.
  • Po połączeniu Ewa przekazuje Alicji swój klucz publiczny rzekomo jako klucz publiczny Boba, jednocześnie nawiązuje połączenie z Bobem, a otrzymane od niego dane (np. treść strony www) przekazuje Alicji.
  • Alicja widząc stronę logowania Boba, wpisuje w przeglądarce swoje tajne hasło i wysyła je do Ewy, nie wiedząc o przechwyceniu transmisji.
  • W zależności od celu ataku, Ewa po odczytaniu hasła albo przerywa transmisję, albo w dalszym ciągu pośredniczy w transmisji pomiędzy Alicją i Bobem, cały czas wykradając tajne dane (stan konta, dodatkowe hasła itp.).
  • W ten sposób Ewa potrafi odczytać wszystkie przesyłane pozornie bezpiecznym kanałem dane, nie będąc zmuszona do czasochłonnego łamania szyfrów zabezpieczających transmisję.

Sytuacja normalna:

Alicja < [Klucz Alicji] -RSA/AES- [Klucz Boba] > Bob

Atak Ewy:

Alicja < [Klucz Alicji] -RSA/AES- [Klucz Ewy 1] > Ewa < [Klucz Ewy 2] -RSA/AES- [Klucz Boba] > Bob

Zabezpieczenie przed atakiem edytuj

Komunikacja jest odporna na atak man in the middle, jeśli jedna strona zna klucz publiczny drugiej lub potrafi go zweryfikować – np. jest on podpisany przez organizację certyfikującą (certification authority).

Rzadziej stosowanym sposobem zabezpieczenia jest także nadanie klucza publicznego na większej liczbie kanałów niż atakujący jest w stanie przechwycić.

Zobacz też edytuj

Przypisy edytuj

  1. Słownik terminów testowych ISTQB,Wersja 3.4 (2020), s. 8.