SslStrip

From Ilianko

TLS (SSL)

TLS (Transport Layer Security) и неговият предшественик SSL (на английски: Secure Sockets Layer) са криптографски протоколи, които осигуряват сигурност на комуникацията по Интернет. TLS и SSL криптиране са сегменти на мрежови връзки над Transport Layer, използвайки асиметрична криптография.

Няколко версии на протоколите се използват широко при уеб, електрон поща, гласова комуникация (VoIP) и др.

TLS се описва в5246 и се основава на по-ранните SSL спецификации, разработен от Netscape Communications.

TLS позволява на клиентски / сървърски приложения да комуникират в мрежата по начин, предназначен за предотвратяване на подслушване и подправяне.

TLS клиентът и сървърът договарят динамична връзка чрез процедура на ръкостискане (handshaking) процедура. Процедурата започва, когато клиентът се свързва с TLS-сървър, изисква защитена връзка и представя на сървъра списък на поддържаните криптирания и хаш функции (ciphers and hash functions). От този списък сървърът избира най-силния шифър и хеш функция и уведомява клиента за решението.

TSL (SSL) Свързване

Сървърът изпраща обратно идентификацията си под формата на цифров сертификат. Сертификатът обикновено съдържа името на сървъра, неговият издател (certificate authority (CA) и публичен ключ за криптиране на сървъра. Клиентът може да се свърже със сървъра, който е издал сертификата и да потвърди валидността на сертификата, преди да продължи нататък.

За да се генерират сесийните ключове, използвани за сигурна връзка, клиентът криптира случайно число с публичния ключ на сървъра и му изпраща резултата. Само сървърът може да го дешифрира с неговия личен ключ. Така завършва процесът ръкостискане и започва защитена шифрована връзка.

Ако някой от по-горните стъпки, се провали, TLS ръкостискането не успява и връзката не се създава.

МIТМ

Man-in-the-middle(човек по средата) е набор от атаки, при които има атакуващ, който провежда „активно“ подслушване. Атакуващият комуникира с всички машини имащи осъществена връзка. Целта е да накара пакетите, чрез които си комуникират дадени машини да преминават през него, като същевременно машините си мислят, че говорят без посредник между тях, а всъщност цялата комуникация се управлявана от атакуващия.

Mitm.jpg

SSLStrip

SSLStrip е инструмент представен през 2009 година на конференцията BlackHat DC от Moxie Marlinspike. Целта на този инструмент е да направи видими потребителските имена и пароли пренасяни през SSL.

SSLStrip е MITM (Man in the middle) атака. Идеята на SSLStrip е да прекъсне заявката за превключване към сигурна връзка идваща от жертвата и да го я да комуникира по нормалния http протокол. По такъв начин данните от жертвата до атакуващия биват предавани в текстов вид.

Например: Когато сe проверява пощата в Gmail, потребителят написва в уеб клиента "mail.google.com" и не се интересува дали страницата се доставя през http:// или https://. Това е така, защото уеб клиента инициира криптирана връзка от сървъра автоматично. Превключването към сигурна връзка се осъществява посредством нормалния http протокол, който не е криптиран и превключването може да бъде прекъснато.




Опитна постановка

Опитната постановка ще бъде реализирана с три работни станции, маршрутизатор и комутатор със следните означения и роли:

  • WebServer - ще предоставя уеб услуги по http или https;
  • Router - Ще свързва външната мрежа с тази на жертвата;
  • Switch - ще предоставя възможност за включване на абонати към вътрешната мрежа;
  • Attacker - Ще прихваща и модифицира връзката между уеб сървъра и жертвата;
  • Victim - Ще достъпва уеб сървъра


Опитна постановка за SSL атака

Адресна схема

Устройсвто \ интерфейс 1 2
WebServer 10.0.0.2/8 ---
Router 10.0.0.1/8 192.168.0.1/24
Attacker 192.168.0.99/24 --
Victim 192.168.0.2 --