Подготовил видео демонстрацию возможности раскрытия IP-адреса собеседника через Skype.
UPD: много вопросов на тему чем отличается данная статья от этой или вот этой.
Отвечаю:
1. Там речь шла только о звонке. Я показал, что в определённой ситуации можно раскрыть и без звонка, через чат.
2. Там была только теория. А здесь видео демонстрация.
А началось всё с прочтения вот этой статьи.
Цитата из статьи:
Но никаких доказательств этого приведено не было. Меня это сильно заинтересовало. И я провёл первые предварительные тестирования.
После чего обнаружилось, что многие люди не владеют достаточными знаниями относительно этой ситуации, но вовсю готовы хвастать своими сомн��тельными знаниями. Дальнейшие комментарии на эту тему тому подтверждение. Кто-то считал, что нужно смотреть UDP сокеты (хотя в статье автор использовал программу cports для просмотра TCP соединений). Ещё мнения были, что выяснить IP-адрес собеседника можно только в случае, если у него выделенный IP, а в случае использования NAT это невозможно. Третьи говорили, что можно только адрес супернода выявить, поэтому автор статьи злоумышленника не вычислил и т.д.
Поэтому я решил внести ясность в ситуацию.
Потратив больше времени на тестирования, выяснилось следующее:
1. В ряде случаев раскрытие адреса собеседника возможно при чате с собеседником (данные передаются ему напрямую по протоколу TCP). Но не всегда. С чем связано — неясно. Однако во всех тестах, когда собеседник находился в том же городе, удавалось обнаружить его IP-адрес таким образом.
2. Раскрытие адреса собеседника возможно при общении с ним голосом (данные передаются ему напрямую по протоколу UDP). Звонок можно совершить так, чтобы собеседнику вызов не приходил и он ничего не узнал
3. Использование NAT схемы не меняет. Т.е. можно обнаружить адрес непосредственно того маршрутизатора, который производит НАТирование абонента.
4. Никакие настройки Skype в настоящий момент не позволяют защититься от этого.
P.S. В предварительных тестированиях меня постигла неудача из-за 2 факторов:
1. Мониторился TCP как раз в том случае, когда адрес не раскрывается (абонент территориально был в другом городе).
2. netstat не показывает установленные соединения для протокола UDP, поскольку в случае использования этого протокола вообще некорректно говорить об установлении соединения (т.к. это протокол без логического установления соединения).
Ссылки по теме:
1. I Know Where You are and What You are Sharing: Exploiting P2P Communications to Invade Users' Privacy
UPD: много вопросов на тему чем отличается данная статья от этой или вот этой.
Отвечаю:
1. Там речь шла только о звонке. Я показал, что в определённой ситуации можно раскрыть и без звонка, через чат.
2. Там была только теория. А здесь видео демонстрация.
Предыстория
А началось всё с прочтения вот этой статьи.
Цитата из статьи:
«Skype, оказывается, в большинстве случаев напрямую соединяется с собеседником.»
Но никаких доказательств этого приведено не было. Меня это сильно заинтересовало. И я провёл первые предварительные тестирования.
После чего обнаружилось, что многие люди не владеют достаточными знаниями относительно этой ситуации, но вовсю готовы хвастать своими сомн��тельными знаниями. Дальнейшие комментарии на эту тему тому подтверждение. Кто-то считал, что нужно смотреть UDP сокеты (хотя в статье автор использовал программу cports для просмотра TCP соединений). Ещё мнения были, что выяснить IP-адрес собеседника можно только в случае, если у него выделенный IP, а в случае использования NAT это невозможно. Третьи говорили, что можно только адрес супернода выявить, поэтому автор статьи злоумышленника не вычислил и т.д.
Поэтому я решил внести ясность в ситуацию.
Итоги тестирований
Потратив больше времени на тестирования, выяснилось следующее:
1. В ряде случаев раскрытие адреса собеседника возможно при чате с собеседником (данные передаются ему напрямую по протоколу TCP). Но не всегда. С чем связано — неясно. Однако во всех тестах, когда собеседник находился в том же городе, удавалось обнаружить его IP-адрес таким образом.
2. Раскрытие адреса собеседника возможно при общении с ним голосом (данные передаются ему напрямую по протоколу UDP). Звонок можно совершить так, чтобы собеседнику вызов не приходил и он ничего не узнал
3. Использование NAT схемы не меняет. Т.е. можно обнаружить адрес непосредственно того маршрутизатора, который производит НАТирование абонента.
4. Никакие настройки Skype в настоящий момент не позволяют защититься от этого.
P.S. В предварительных тестированиях меня постигла неудача из-за 2 факторов:
1. Мониторился TCP как раз в том случае, когда адрес не раскрывается (абонент территориально был в другом городе).
2. netstat не показывает установленные соединения для протокола UDP, поскольку в случае использования этого протокола вообще некорректно говорить об установлении соединения (т.к. это протокол без логического установления соединения).
Ссылки по теме:
1. I Know Where You are and What You are Sharing: Exploiting P2P Communications to Invade Users' Privacy
