...

суббота, 24 января 2015 г.

[Из песочницы] Был получен несанкционированный доступ к более чем 20 000 камерам видео-наблюдения Москвы (теперь вы тоже)

Привет, Хабрахабр! Наверняка многие из вас помнят легендарный пост «Были получены исходники 3300 глобальных интернет-проектов», который долгое время был первым в рейтинге всех публикаций на сайте. Несмотря на схожий заголовок у моего поста, не претендую на первое место, но считаю, что вам стоит обратить внимание.





Эта история началась поздним вечером, когда я задержался на работе, чтобы доделать срочное задание, связанное с нашими партнерами из Амстердама. Закончив тестирование последнего модуля, я удовлетворенно откинулся в кресле и по привычке зашел проверить свою страницу в VK. В одном из моих пабликов я увидел фотографию с камеры наблюдения со служебными данными на ней. Заинтересовавшись этой фотографией, я обратился к автору изображения с просьбой получить доступ к данной камере.


На моё удивление, мне ответили. Мне сказали, что можно получить ссылку временного доступа, которая действует в течение недели и не позволяет управлять камерой и смотреть архив.


Ссылка:



http://ift.tt/1xNM1M3



Будучи вдумчивым по своей природе, я заглянул в source и обнаружил следующее:

window.APP_VERSION = '0.1';
window.BUILD_ID = 'public';
window.embeddedCamera = {"id":******,"name":"MMC_***; такой-то парк","shortName":"MMC_***","address":"такой-то адрес ","description":null,"type":{"id":4,"color":"0D0D0D"},"cameraType":4,"apiType":"ECHD_CISCO_VSM","fixed":false,"status":0,"lat":"***","lng":"***"};
window.Request = {"id":"4a6a19d5-ab03-4cb1-8fc4-281345c873f5","innerId":"******","userId":***,"ttl":1422353451835}; // Mapped HTTP request (POST/GET params)




Несложно догадаться, что используя следующий URL

http://ift.tt/1z20DgV



Я получил следующий набор потоков:

{"666":{"archive":{"control":["http://ift.tt/1xNM1M5","http://ift.tt/1xNLZUn"],"shot":{"control":["http://ift.tt/1xNM1M9","http://ift.tt/1xNM1Me"],"url":["http://ift.tt/1z20Dxh","http://ift.tt/1z20El1"]},"url":["http://ift.tt/1xNM22x","http://ift.tt/1xNLZUr"]},"live":{"ios":{"url":["http://ift.tt/1z20Dxn","http://ift.tt/1xNM22C"]},"shot":{"url":["http://ift.tt/1z20EBk","http://ift.tt/1xNLZUA"]},"url":["http://ift.tt/1z20Dxq","http://ift.tt/1xNM0aR"]},"version":100}}




Можно получить доступ к потоку камеры с произвольно выбранным айдишником. Первые потоки – это архивы камер, последняя – трансляция в реальном времени.

Открыв URL любым плеером (VLC, например), мы можем увидеть следующее:



Данная камера не очень показательная в плане качества изображения, но первоначальный поток MMC_ выдавал вполне приличную картинку с хорошим фреймрейтом.


Короче. Вставляете ссылку вида http://ift.tt/1z20EBt в браузер (где ХХХ – произвольный айдишник, я пробовал числа от 50 до 20 000), получаете набор потоков, который можно вставить в медиаплеер на своём смартфоне и при должном упорстве вы можете увидеть себя, курящим у подъезда своего дома…



Как несложно догадаться, всё это принадлежит ЕЦХД (Единому Центру Хранения Данных) – я пытался связаться с ними по поводу уязвимости, но ответа так и не получил. Надеюсь, после этой публикации ошибку всё же исправят.


Спасибо за внимание.


Recommended article: Chomsky: We Are All – Fill in the Blank.

This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий