Atak man in the middle

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

Man in the middle (ang. człowiek pośrodku) – atak kryptologiczny polegający na podsłuchu i modyfikacji wiadomości przesyłanych pomiędzy dwiema stronami bez ich wiedzy.

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 | edytuj kod]

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).

Można też użyć bardziej egzotycznych zabezpieczeń, takich jak nadanie klucza publicznego na większej liczbie kanałów niż atakujący jest w stanie przechwycić.

Zobacz też[edytuj | edytuj kod]