Несколько дней назад со мной произошло ровно то, что написано в заголовке. В далеком 2014 году (а именно 28 декабря в 17:00) мы с женой и друзьями играли в перформанс-квест «Коллекционер» от «Клаустрафобии» и уже давно про это забыли, но «Клаустрафобия» напомнила о себе самым неожиданным образом.
А собственно вот и наша фотография, которая нашлась в открытом доступе (я спиной, остальные лица искажены для этой статьи)…
Дисклеймер: вся информация ниже публикуется исключительно в образовательных целях. Автор не получал доступа к персональным данным третьих лиц и компаний. Информация взята либо из открытых источников, либо была предоставлена автору анонимными доброжелателями.
База данных Elasticsearch с двумя индексами, предположительно принадлежащая «Клаустрафобии» (claustrophobia.com), была найдена в открытом доступе.
index docs.count store.size
phobia-master 1068927 3.2gb
phobia-sandbox 55 2.9mb
Кто угодно, зная IP-адрес, мог беспрепятственно получить доступ к данным через обычный браузер, используя базовый язык запросов Elasticsearch.
Судя по данным поисковика Shodan, база впервые была обнаружена 03.02.2019 03:09:00. Доступ к ней был закрыт 31.03.2019, после моего уведомления (по электронной почте и через Facebook), в промежутке между 12:00 и 16:30 (МСК).
Всего Shodan фиксировал эту базу 6 раз:
03.02.2019 03:09:00
03.02.2019 19:39:00
01.03.2019 12:10:00
03.03.2019 19:55:00
09.03.2019 05:41:00
23.03.2019 13:07:00
Про то, как обнаруживают открытые базы данных Elasticsearch, я писал отдельную статью.
В базе содержались данные (всего чуть более 1 млн. записей) по заказам:
- Дата заказа
- Дата и время квеста
- Название квеста
- Место (страна и город) квеста
- Имя, телефон и адрес электронной почты человека, делавшего заказ
- Стоимость (включая предоплату, скидки и промокоды), валюта платежа и тип оплаты (наличные, карта)
- Время прохождения квеста
- Количество игроков
- Ссылка на совместную фотографию участников квеста
Информация, за период с 2013 по 2019 гг., была из разных стран:
- Россия
- Украина
- Белоруссия
- Эстония
- Германия
- Испания
- Франция
- Голландия
- Италия
- и т.д.
Например, по Германии нашлось более 10 тыс. записей.
"Наш" квест 2014 года выглядел так:
{
"_index": "phobia-master",
"_type": "model-Game",
"_id": "105352",
"_score": 10.159659,
"_source": {
"comment": "",
"suspicious_cancellation": false,
"promo_code": "",
"photo": "https://.../.../.../28.12-17.jpg",
"book_source": {
"ru": "Сайт",
"fr": "Site internet",
"en": "Web-site",
"nl": "Сайт",
"be": "Сайт",
"tr": "Сайт",
"ca": "Pagina web",
"de": "Internetseite",
"db": "site",
"it": "Сайт",
"sk": "Сайт",
"ar": "Сайт",
"th": "Сайт",
"sl": "Сайт",
"cs": "Сайт",
"et": "Lehekulg",
"az": "Sayt",
"ua": "Сайт",
"es": "Pagina web"
},
"client_tickets_count": null,
"currency": "₽",
"result": null,
"language_code": null,
"owner": {
"phone": "+7…",
"nickname": "А… Л…",
"id": 38284,
"profile_type": "everyone",
"email": "…@gmail.com"
},
"id": 105352,
"refused_to_photo": null,
"not_completed": null,
"confirmed": false,
"extra_price": 0,
"branded_photo": null,
"booking_price": 12000,
"call_center_comment": null,
"cert_id": 0,
"status": {
"ru": "Пройдена",
"fr": "Reussi",
"en": "Completed",
"nl": "Пройдена",
"be": "Пройдена",
"tr": "Пройдена",
"ca": "Сompletat",
"de": "Absolviert",
"db": "completed",
"it": "Пройдена",
"sk": "Пройдена",
"ar": "Пройдена",
"th": "Пройдена",
"sl": "Пройдена",
"cs": "Пройдена",
"et": "Labitud",
"az": "Kecilmisdir",
"ua": "Пройдена",
"es": "Completado"
},
"booked_by": null,
"investigated": "no",
"brand_logo": {
"ru": "",
"fr": "",
"en": "",
"nl": "",
"be": "",
"db": null,
"ca": "",
"de": "",
"tr": "",
"it": "",
"sk": "",
"ar": "",
"th": "",
"sl": "",
"cs": "",
"et": "",
"az": "",
"ua": "",
"es": ""
},
"gamers_count": 4,
"tickets_count": 0,
"partial_prepay": true,
"payment": {
"ru": "онлайн",
"fr": "en ligne ",
"en": "online",
"nl": "online",
"be": "онлайн",
"tr": "Online",
"ca": "Online ",
"de": "Online-Zahlung",
"db": "online",
"it": "online",
"sk": "online",
"ar": "??? ????????",
"th": "???????",
"sl": "онлайн",
"cs": "онлайн",
"et": "Online",
"az": "onlayn",
"ua": "онлайн",
"es": "Online"
},
"promocode_type": null,
"lacking_sum_paid": false,
"prepay_price": 3000,
"booking_time_local": "28.12.2014 12:36",
"hints_count": null,
"booking_id": "PER 14 54 814",
"booking_time": "2014-12-28T09:36:13+00:00",
"timeslot": {
"start": "2014-12-28T14:00:00+00:00",
"price": 6000,
"start_local_date": "28 декабря",
"id": 95759,
"caption": "Коллекционер: 28.12.2014, 17:00",
"es_start_local_date": "2014-12-28",
"quest": {
"rating_positions": [
486,
486
],
"id": 108,
"name": {
"ru": "Коллекционер",
"fr": "",
"en": "The Collector",
"nl": "",
"be": "",
"db": "Коллекционер",
"ca": "",
"de": "",
"tr": "",
"it": "",
"sk": "",
"ar": "",
"th": "",
"sl": "",
"cs": "",
"et": "",
"az": null,
"ua": "",
"es": ""
},
"location": {
"city": {
"timezone": "Europe/Moscow",
"country": {
"iso_code": "ru",
"id": 1,
"name": {
"ru": "Россия",
"fr": "",
"en": "Russia",
"nl": "Rusland",
"be": "",
"db": "Россия",
"ca": "",
"de": "Russland",
"tr": "",
"it": "",
"sk": "",
"ar": "",
"th": "",
"sl": "",
"cs": "",
"et": "",
"az": null,
"ua": "",
"es": ""
}
},
"id": 1,
"name": {
"ru": "Москва",
"fr": "",
"en": "Moscow",
"nl": "",
"be": "",
"db": "Москва",
"ca": "",
"de": "Moskau",
"tr": "",
"it": "",
"sk": "",
"ar": "",
"th": "",
"sl": "",
"cs": "",
"et": "",
"az": "",
"ua": "Москва",
"es": ""
}
},
"id": 55,
"name": {
"ru": "Поварская",
"fr": "",
"en": "",
"nl": "",
"be": "",
"db": "Поварская",
"ca": "",
"de": "",
"tr": "",
"it": "",
"sk": "",
"ar": "",
"th": "",
"sl": "",
"cs": "",
"et": "",
"az": null,
"ua": "",
"es": ""
}
}
},
"prices_by_tickets_count": null,
"start_local_dt": "2014-12-28T17:00:00+03:00",
"start_local": "28.12.2014, 17:00"
},
"cancellation_reason": null,
"cancellation": {
"ru": "нет",
"fr": "non",
"en": "no",
"nl": "nee",
"be": "нет",
"tr": "hay?r",
"ca": "No",
"de": "nein",
"db": "no",
"it": "no",
"sk": "nie",
"ar": "??",
"th": "???",
"sl": "нет",
"cs": "нет",
"et": "pole",
"az": "нет",
"ua": "немає",
"es": "no"
}
}
}
К чести «Клаустрафобии» надо сказать, что они оказались в числе того незначительного количества компаний, которые отвечают на сообщения о потенциальной утечке данных и благодарят исследователей:
Добрый день! Пишу вам из известной уже вам компании Клаустрофобия. Мы получили ваше сообщение в Фейсбуке по поводу риска утечки данных, за что отдельно хочу вас поблагодарить! В знак благодарности приглашаем вас стать одним из тестировщиков наших будущих игр. Если вы согласны, то пришлите мне, пожалуйста, ваши контактные данные: email и телефон. Мы пригласим вас, когда будут проводиться тесты! Еще раз благодарим за вашу помощь ;)
Новости про утечки информации и инсайдеров всегда можно найти на моем Telegram-канале «Утечки информации».
Комментарии (18)
opanas
02.04.2019 12:47+2В знак благодарности приглашаем вас стать одним из тестировщиков наших будущих игр.
Извиниться за ошибку? Сообщить о принятых мерах? Вознаградить сейчас за уже найденное? Быть более конкретными касательно будущих задач и вознаграждения? — нет, не слышали. Поверхностный и неконкретный ответ компании, хорошо хоть оперативный.UnrealQW
02.04.2019 18:54+1Думаю, имея контактные данные можно подать заявление в полицию о том, что страшный хакер незаконно получил доступ к персональным данным. При желании можно записать разговор «хакера» при встрече в клубе.
Pro-invader
02.04.2019 14:06+2Картинка, похожая на КДПВRussDragon
02.04.2019 14:27Кажется, утечка не очень критичная, нет?
Большая часть данных весьма бесполезна и угрозы как таковой не несёт (если только самой Клаустрофобии).
Разве что, наверное, номер телефона может быть проблемой – но я уже привык думать о нём как о чем-то, что давным давно уже гуляет по сети в разных дампах БД операторов.ashotog Автор
02.04.2019 14:31ну как — это база клиентов, для конкурентов и всяких маркетологов весьма полезная. а так-то конечно не так критично, как база кредитов или медицинские данные ;)
RussDragon
02.04.2019 14:49> как база кредитов или медицинские данные ;)
Ну вы тёплое с мягким-то не сравнивайте. Базу кредитов или медицинские данные можно использовать против человека и/или использовать в корыстных целях, в них действительно содержатся sensitive-данные.
Что можно сделать с точки зрения немаркетолога/конкурента с данными КФ – я не знаю. Раскроете мне тайну?Nexus7
02.04.2019 17:10+2Например, может поискать телефонный номер Василия Пупкина в этой базе, найти клёвую фотку «Вася за решёткой» и заказать статью желтушной газете:
ШОК! Кандидат в депутаты Василий Пупкин в 2014 году попал в спецприёмник за ношение противогаза на улице. <фото>
Василий потом будет долго отвечать на вопросы своих избирателей и «осадочек останется».
Как говаривал Брюс Шнайер (в моей вольной интерпретации): не храните данные пользователей, это им может навредить, и вы даже не знаете, как именно.
transcengopher
03.04.2019 14:20Что за странная избыточность с локализацией значений? Это нормально для подобных баз данных? Какие есть полезные эффекты в таком отсутствии нормализации?
KennyGin
Где теперь можно найти дамп этой базы данных?
ashotog Автор
надеюсь, что нигде ;)
WebMonet
Наверное это вопрос больше ко всем читателям этого поста / блога.
Не считаете ли вы, что сообщения об утечках без дампа попахивают информационным агентством «ОБС»? Я понимаю, что распространение такой информации на этом сайте не приветствуется, но уверен, что людям, связанным с ИБ будет полезно ознакомиться с причиной и результатом утечки в учебных и познавательных целях.
ashotog Автор
пример дампа в статье. изучайте ;)
WebMonet
Это примерно как анализировать прорыв трубы по пробирке с водой…
Просто я недавно провел аналитику «Mega Collection», в которой львиная доля инфы — мусор. Поэтому у меня складывается ощущение, что значимость утечек сильно преувеличена и истерия вокруг них создается искусственно.
ashotog Автор
ясно. т.е. надо в паблик сливать все данные, чтобы было больше веры. прекрасное предложение, но нет ;)