Я снова про утечки персональных данных, но на этот раз расскажу немного про загробный мир ИТ-проектов на примере двух недавних находок.
В процессе аудита безопасности баз данных часто бывает, что обнаруживаешь сервера (как искать базы данных, я писал в блоге), принадлежащие проектам давно (или не так давно) покинувшим наш мир. Такие проекты даже продолжают имитировать жизнь (работу), напоминая зомби (собирая персональные данные пользователей после своей смерти).
Дисклеймер: вся информация ниже публикуется исключительно в образовательных целях. Автор не получал доступа к персональным данным третьих лиц и компаний. Информация взята либо из открытых источников, либо была предоставлена автору анонимными доброжелателями.
Начнем с проекта с громким названием «Команда Путина» (putinteam.ru).
Сервер с открытой MongoDB был обнаружен 19.04.2019.
Как можно заметить, первым до этой базы добрался «вымогатель»:
В базе нет особо ценных персональных данных, но есть адреса электронной почты (менее 1000), имена/фамилии, хешированные пароли, GPS-координаты (видимо при регистрации со смартфонов), города проживания и фотографии пользователей сайта, создавших на нем свой личный кабинет.
{
"_id" : ObjectId("5c99c5d08000ec500c21d7e1"),
"role" : "USER",
"avatar" : "https://fs.putinteam.ru/******sLnzZokZK75V45-1553581654386.jpeg",
"firstName" : "Вадим",
"lastName" : "",
"city" : "Санкт-Петербург",
"about" : "",
"mapMessage" : "",
"isMapMessageVerify" : "0",
"pushIds" : [
],
"username" : "5c99c5d08000ec500c21d7e1",
"__v" : NumberInt(0),
"coordinates" : {
"lng" : 30.315868,
"lat" : 59.939095
}
}
{
"_id" : ObjectId("5cb64b361f82ec4fdc7b7e9f"),
"type" : "BASE",
"email" : "***@yandex.ru",
"password" : "c62e11464d1f5fbd54485f120ef1bd2206c2e426",
"user" : ObjectId("5cb64b361f82ec4fdc7b7e9e"),
"__v" : NumberInt(0)
}
Очень много мусорной информации и пустых записей. Например, код подписки на рассылку новостей не проверяет, что введен адрес электронной почты, поэтому вместо адреса, можно писать все, что угодно.
Судя по копирайту на сайте, проект заброшен в 2018 году. Все попытки связаться с представителями проекта были неудачными. Однако, редкие регистрации на сайте идут – налицо имитация жизни.
Второй зомби-проект в моем сегодняшнем разборе это латвийский стартап «Roamer» (roamerapp.com/ru).
21.04.2019 на сервере в Германии была обнаружена открытая база данных MongoDB мобильного приложения «Roamer».
База, размером 207 Мб, находится в открытом доступе с 24.11.2018 (по данным Shodan)!
По всем внешним признакам (не работающий адрес электронной почты технической поддержки, битые ссылки на магазин Google Play, копирайт на сайте 2016 года и т.п.) – приложение давно заброшено.
В свое время про этот стартап написали практически все тематические СМИ:
- VC: «Латвийский стартап Roamer — убийца роуминга»
- the-village: «Roamer: Приложение, снижающее стоимость звонков из-за рубежа»
- lifehacker: «Как сократить расходы на связь в роуминге в 10 раз: Roamer»
«Убийца» кажется убился сам, но даже мертвым продолжает разглашать персональные данные своих пользователей...
Судя по анализу информации в базе, многие пользователи продолжают использовать это мобильное приложение. За несколько часов наблюдения появилось 94 новых записи. А за период с 27.03.2019 по 10.04.2019 в приложении зарегистрировалось 66 новых пользователей.
В открытом доступе находятся логи (более 100 тыс. записей) приложения с такой информацией как:
- телефон пользователя
- токены доступа к истории звонков (доступны по ссылкам вида: api3.roamerapp.com/call/history/1553XXXXXX)
- история звонков (номера, входящий или исходящий звонок, стоимость звонка, продолжительность, время звонка)
- мобильный оператор пользователя
- IP-адреса пользователя
- модель телефона пользователя и версия мобильных OS на нем (например, iPhone 7 12.1.4)
- адрес электронной почты пользователя
- баланс и валюта счета пользователя
- страна пользователя
- текущее местоположение (страна) пользователя
- промокоды
- и многое другое.
{
"_id" : ObjectId("5c9a49b2a1f7da01398b4569"),
"url" : "api3.roamerapp.com/call/history/*******5049",
"ip" : "67.80.1.6",
"method" : NumberLong(1),
"response" : {
"calls" : [
{
"start_time" : NumberLong(1553615276),
"number" : "7495*******",
"accepted" : false,
"incoming" : false,
"internet" : true,
"duration" : NumberLong(0),
"cost" : 0.0,
"call_id" : NumberLong(18869601)
},
{
"start_time" : NumberLong(1553615172),
"number" : "7499*******",
"accepted" : true,
"incoming" : false,
"internet" : true,
"duration" : NumberLong(63),
"cost" : 0.03,
"call_id" : NumberLong(18869600)
},
{
"start_time" : NumberLong(1553615050),
"number" : "7985*******",
"accepted" : false,
"incoming" : false,
"internet" : true,
"duration" : NumberLong(0),
"cost" : 0.0,
"call_id" : NumberLong(18869599)
}
]
},
"response_code" : NumberLong(200),
"post" : [
],
"headers" : {
"Host" : "api3.roamerapp.com",
"X-App-Id" : "a9ee0beb8a2f6e6ef3ab77501e54fb7e",
"Accept" : "application/json",
"X-Sim-Operator" : "311480",
"X-Wsse" : "UsernameToken Username="/******S19a2RzV9cqY7b/RXPA=", PasswordDigest="******NTA4MDhkYzQ5YTVlZWI5NWJkODc5NjQyMzU2MjRjZmIzOWNjYzY3MzViMTY1ODY4NDBjMWRkYjdiZTQxOGI4ZDcwNWJmOThlMTA1N2ExZjI=", Nonce="******c1MzE1NTM2MTUyODIuNDk2NDEz", Created="Tue, 26 Mar 2019 15:48:01 GMT"",
"Accept-Encoding" : "gzip, deflate",
"Accept-Language" : "en-us",
"Content-Type" : "application/json",
"X-Request-Id" : "FB103646-1B56-4030-BF3A-82A40E0828CC",
"User-Agent" : "Roamer;iOS;511;en;iPhone 7;12.1.4",
"Connection" : "keep-alive",
"X-App-Build" : "511",
"X-Lang" : "EN",
"X-Connection" : "WiFi"
},
"created_at" : ISODate("2019-03-26T15:48:02.583+0000"),
"user_id" : "888689"
}
Связаться с владельцами базы разумеется не удалось. Контакты на сайте не работают, на сообщения в соц. сетях никто не реагирует.
В Apple App Store приложение по-прежнему доступно (itunes.apple.com/app/roamer-roaming-killer/id646368973).
Новости про утечки информации и инсайдеров всегда можно найти на моем Telegram-канале «Утечки информации»: https://t.me/dataleak.
Автор: Ashot Oganesyan