Сокращатели ссылок вроде bit.ly, goo.gl и другие генерируют ссылки с токеном из 5, 6 или 7 символов. Как выяснилось, этого слишком мало, так что всё адресное пространство можно сбрутфорсить. Профессор Виталий Шматиков из Корнелльского технологического университета с коллегой, независимым исследователем Мартином Георгиевым, просканировали адресное пространство сокращённых ссылок — и нашли немало документов на облачных хостингах.
Казалось бы, что такого? Но выяснилось, что предсказуемая структура длинного URL иногда позволяет по одному найденному документу получить доступ к другим документам на хостинге или всообще ко всем документам!
В частности, до марта 2016 года такая структура длинного URL была на хостинге Microsoft OneDrive (она описана ниже), но схожий принцип может быть на других сервисах.
Сокращатель ссылок встроен в OneDrive и другие облачные сервисы, так что короткий адрес автоматически присваивается каждому документу, даже с секретной информацией. Ну а если кто-то подберёт этот адрес, то может получить доступ к аккаунту, отредактировать документы, внедрить загрузчик трояна и т.д.
Результаты 18-месячной работы исследователи опубликовали в докладе.
Как видно из доклада, авторы сконцентрировались на двух сокращателях, которые встроены в OneDrive и Google Maps.
Здесь адреса документов и папок кодируются в адреса домена 1drv.ms, обслуживаются оператором Bitly и им присваиваются те же токены, что и на bit.ly. Другими словами, любое сканирование токенов bit.ly автоматически находит и адреса 1drv.ms. Во время пробного сканирования 100 000 000 URL в домене bit.ly со случайно выбранными 6-символьными токенами 42% оказались активными URL. Из них 19 524 вели к документам и папкам на хостинге OneDrive/SkyDrive. Но это не всё.
Как выяснилось, адреса OneDrive имеют предсказуемую структуру. Зная полный URL одного документа, можно сконструировать корневой URL и автоматически перейти в аккаунт, открыть все файлы и папки.
Например, брутфорсом вы обнаружили URL http://1drv.ms/1xNOWV7, который резолвится в https://onedrive.live.com/?cid=485bef1a80539148&id=485BEF1A80539148!115&ithint=folder,xlsx&authkey=!AOOp2TqTTSMT5q4.
Из длинного URL мы извлекаем параметры cid и authkey, с помощью которых конструируем корневой URL для аккаунта: https://onedrive.live.com/?cid=485bef1a80539148&authkey=!AOOp2TqTTSMT5q4.
Для получения доступа к конкретному документу, нужно в исходном коде страницы на облачном хостинге найти элементы с атрибутами href, содержащие &app=, &v=, /download.aspx? или /survey? (этот конкретный способ вроде бы не работает с марта 2016 года).
Для поиска других папок нужно искать ссылки, которые начинаются с onedrive.live.com и содержат cid аккаунта.
Таким методом авторы исследования выявили ещё 227 276 документов на хостинге OneDrive.
Что характерно, около 7% найденных папок были открыты на запись. Не нужно объяснять, что это значит, учитывая, насколько легко обойти встроенный антивирус OneDrive.
До сентября 2015 года у адресов goo.gl/maps были токены из 5 символов. Сканирование случайной выборки выявило 23 965 718 активных ссылок, из которых 10% оказались картами с маршрутами движения, в том числе к больницам для больных раком и с психическими расстройствами, центры для алкоголиков и наркоманов, центры абортов, тюрьмы. В общем, деликатная информация. Например, маршрут от центра абортов до определённого адреса, в принципе, позволяет предположить место проживания человека. Если это дом, где живёт одна женщина, то и предположить личность. Затем, составить карту со всеми адресами, где этот адрес был начальной или конечной точкой движения. Вот такая карта для одного человека.
Представители Microsoft после двухмесячной переписки сказали, что не считают брутфорс токенов уязвимостью. Однако некоторые описанные выше методы перестали работать. Когда с представителями Microsoft связались снова, они отрицали, что сделанные изменения имеют отношение к данному отчёту.
Компания Google отреагировала немедленно, перешла на токены 11-12 символов и ограничила возможности сканирования URL.
Казалось бы, что такого? Но выяснилось, что предсказуемая структура длинного URL иногда позволяет по одному найденному документу получить доступ к другим документам на хостинге или всообще ко всем документам!
В частности, до марта 2016 года такая структура длинного URL была на хостинге Microsoft OneDrive (она описана ниже), но схожий принцип может быть на других сервисах.
Сокращатель ссылок встроен в OneDrive и другие облачные сервисы, так что короткий адрес автоматически присваивается каждому документу, даже с секретной информацией. Ну а если кто-то подберёт этот адрес, то может получить доступ к аккаунту, отредактировать документы, внедрить загрузчик трояна и т.д.
Результаты 18-месячной работы исследователи опубликовали в докладе.
Как видно из доклада, авторы сконцентрировались на двух сокращателях, которые встроены в OneDrive и Google Maps.
OneDrive
Здесь адреса документов и папок кодируются в адреса домена 1drv.ms, обслуживаются оператором Bitly и им присваиваются те же токены, что и на bit.ly. Другими словами, любое сканирование токенов bit.ly автоматически находит и адреса 1drv.ms. Во время пробного сканирования 100 000 000 URL в домене bit.ly со случайно выбранными 6-символьными токенами 42% оказались активными URL. Из них 19 524 вели к документам и папкам на хостинге OneDrive/SkyDrive. Но это не всё.
Как выяснилось, адреса OneDrive имеют предсказуемую структуру. Зная полный URL одного документа, можно сконструировать корневой URL и автоматически перейти в аккаунт, открыть все файлы и папки.
Например, брутфорсом вы обнаружили URL http://1drv.ms/1xNOWV7, который резолвится в https://onedrive.live.com/?cid=485bef1a80539148&id=485BEF1A80539148!115&ithint=folder,xlsx&authkey=!AOOp2TqTTSMT5q4.
Из длинного URL мы извлекаем параметры cid и authkey, с помощью которых конструируем корневой URL для аккаунта: https://onedrive.live.com/?cid=485bef1a80539148&authkey=!AOOp2TqTTSMT5q4.
Для получения доступа к конкретному документу, нужно в исходном коде страницы на облачном хостинге найти элементы с атрибутами href, содержащие &app=, &v=, /download.aspx? или /survey? (этот конкретный способ вроде бы не работает с марта 2016 года).
Для поиска других папок нужно искать ссылки, которые начинаются с onedrive.live.com и содержат cid аккаунта.
Таким методом авторы исследования выявили ещё 227 276 документов на хостинге OneDrive.
Что характерно, около 7% найденных папок были открыты на запись. Не нужно объяснять, что это значит, учитывая, насколько легко обойти встроенный антивирус OneDrive.
Google Maps
До сентября 2015 года у адресов goo.gl/maps были токены из 5 символов. Сканирование случайной выборки выявило 23 965 718 активных ссылок, из которых 10% оказались картами с маршрутами движения, в том числе к больницам для больных раком и с психическими расстройствами, центры для алкоголиков и наркоманов, центры абортов, тюрьмы. В общем, деликатная информация. Например, маршрут от центра абортов до определённого адреса, в принципе, позволяет предположить место проживания человека. Если это дом, где живёт одна женщина, то и предположить личность. Затем, составить карту со всеми адресами, где этот адрес был начальной или конечной точкой движения. Вот такая карта для одного человека.
Как отреагировали компании
Представители Microsoft после двухмесячной переписки сказали, что не считают брутфорс токенов уязвимостью. Однако некоторые описанные выше методы перестали работать. Когда с представителями Microsoft связались снова, они отрицали, что сделанные изменения имеют отношение к данному отчёту.
Компания Google отреагировала немедленно, перешла на токены 11-12 символов и ограничила возможности сканирования URL.