Эта история началась поздним вечером, когда я задержался на работе, чтобы доделать срочное задание, связанное с нашими партнерами из Амстердама. Закончив тестирование последнего модуля, я удовлетворенно откинулся в кресле и по привычке зашел проверить свою страницу в 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.
Комментариев нет:
Отправить комментарий