Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public

Aujourd'hui, nous examinerons deux cas à la fois : les données des clients et partenaires de deux entreprises complètement différentes étaient disponibles gratuitement « grâce aux » serveurs Elasticsearch ouverts avec les journaux des systèmes d'information (SI) de ces entreprises.

Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public

Dans le premier cas, il s'agit de dizaines de milliers (voire de centaines de milliers) de billets pour divers événements culturels (théâtres, clubs, balades fluviales, etc.) vendus via le système Radario (www.radario.ru).

Dans le second cas, il s'agit de données sur les voyages touristiques de milliers (éventuellement plusieurs dizaines de milliers) de voyageurs qui ont acheté des circuits via des agences de voyages connectées au système Sletat.ru (www.sletat.ru).

Je voudrais d'emblée noter que non seulement les noms des entreprises qui ont permis que les données soient rendues publiques diffèrent, mais aussi l'approche de ces entreprises face à la reconnaissance de l'incident et la réaction qui en a résulté. Mais avant tout…

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

Premier cas. "Radiaire"

Au soir du 06.05.2019/XNUMX/XNUMX notre système découvert que le serveur Elasticsearch est disponible gratuitement, propriété du service de vente électronique de billets Radario.

Selon la triste tradition déjà établie, le serveur contenait des journaux détaillés du système d'information du service, à partir desquels il était possible d'obtenir des données personnelles, des identifiants et des mots de passe des utilisateurs, ainsi que les billets électroniques eux-mêmes pour divers événements dans tout le pays.

Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public

Le volume total de journaux dépassait 1 To.

Selon le moteur de recherche Shodan, le serveur est accessible au public depuis le 11.03.2019 mars 06.05.2019. J'ai prévenu les employés de Radario le 22/50/07.05.2019 à 09h30 (heure de Moscou) et le XNUMX/XNUMX/XNUMX vers XNUMXhXNUMX, le serveur est devenu indisponible.

Les journaux contenaient un jeton d'autorisation universel (unique), donnant accès à tous les billets achetés via des liens spéciaux, tels que :

http://radario.ru/internal/tickets/XXXXXXXX/print?access_token=******JuYWw6MDIzOWRjOTM1NzJiNDZjMTlhZGFjZmRhZTQ3ZDgyYTk

http://radario.ru/internal/orders/YYYYYYY/print?access_token=******JuYWw6MDIzOWRjOTM1NzJiNDZjMTlhZGFjZmRhZTQ3ZDgyYTk

Le problème était aussi que pour comptabiliser les billets, on utilisait une numérotation continue des commandes et une simple énumération du numéro du billet (XXXXXXXX) ou commander (AAAAAAAA), il était possible d'obtenir tous les billets du système.

Pour vérifier la pertinence de la base de données, je me suis même honnêtement acheté le billet le moins cher :

Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public
Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public

et je l'ai trouvé plus tard sur un serveur public dans les journaux IS :

http://radario.ru/internal/tickets/11819272/print?access_token==******JuYWw6MDIzOWRjOTM1NzJiNDZjMTlhZGFjZmRhZTQ3ZDgyYTk

Par ailleurs, je voudrais souligner que des billets étaient disponibles aussi bien pour les événements déjà eus que pour ceux qui sont encore en cours de planification. Autrement dit, un attaquant potentiel pourrait utiliser le ticket de quelqu’un d’autre pour accéder à l’événement prévu.

En moyenne, chaque index Elasticsearch contenant des journaux pour un jour spécifique (du 24.01.2019/07.05.2019/25 au 35/XNUMX/XNUMX) contenait de XNUMX à XNUMX XNUMX tickets.

En plus des billets eux-mêmes, l'index contenait des identifiants (adresses e-mail) et des mots de passe textuels pour accéder aux comptes personnels des partenaires Radario qui vendent des billets pour leurs événements via ce service :

Content: "ReturnUrl=&UserEmail=***@yandex.ru&UserPassword=***"

Au total, plus de 500 couples login/mot de passe ont été détectés. Les statistiques de ventes de billets sont visibles dans les comptes personnels des partenaires :

Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public

Les noms, numéros de téléphone et adresses e-mail des acheteurs qui ont décidé de restituer les billets précédemment achetés étaient également accessibles au public :

"Content": "{"name":"***","surname":"*** ","middleName":"Евгеньевна ","passportType":1,"passportNumber":"","passportIssueDate":"11-11-2011 11:11:11","passportIssuedBy":"","email":"***@mail.ru","phone":"+799*******","ticketNumbers":["****24848","****948732"],"refundReason":4,"comment":""}"

En une journée choisie au hasard, plus de 500 enregistrements de ce type ont été découverts.

J'ai reçu une réponse à l'alerte du directeur technique de Radario :

Je suis le directeur technique de Radario et je tiens à vous remercier d'avoir identifié le problème. Comme vous le savez, nous avons fermé l'accès aux élastiques et résolvons le problème de la réémission des billets pour les clients.

Un peu plus tard, la société a fait une déclaration officielle :

Une vulnérabilité a été découverte et rapidement corrigée dans le système de vente de billets électroniques Radario, ce qui pourrait entraîner une fuite de données des clients du service, a déclaré le directeur marketing de l'entreprise, Kirill Malyshev, à l'agence de presse de la ville de Moscou.

« Nous avons en fait découvert une vulnérabilité dans le fonctionnement du système associée aux mises à jour régulières, qui a été corrigée immédiatement après la découverte. En raison de cette vulnérabilité, dans certaines conditions, des actions hostiles de tiers pourraient entraîner une fuite de données, mais aucun incident n'a été enregistré. Pour le moment, tous les défauts ont été éliminés», a déclaré K. Malyshev.

Un représentant de l'entreprise a souligné qu'il a été décidé de réémettre tous les billets vendus pendant la résolution du problème afin d'éliminer complètement la possibilité de toute fraude contre les clients du service.

Quelques jours plus tard, j'ai vérifié la disponibilité des données à l'aide des liens divulgués : l'accès aux tickets « exposés » était effectivement couvert. À mon avis, il s'agit d'une approche compétente et professionnelle pour résoudre le problème des fuites de données.

Deuxième cas. "Fly.ru"

Tôt le matin 15.05.2019/XNUMX/XNUMX Intelligence de violation de données DeviceLock identifié un serveur Elasticsearch public avec les logs d'un certain SI.

Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public

Plus tard, il a été établi que le serveur appartenait au service de sélection de circuits « Sletat.ru ».

À partir de l'index cbto__0 il a été possible d'obtenir des milliers (11,7 mille, y compris les doublons) d'adresses e-mail, ainsi que certaines informations de paiement (coûts du voyage) et des données sur le voyage (quand, où, détails du billet d'avion tous voyageurs inclus dans le circuit, etc.) pour un montant d'environ 1,8 mille enregistrements :

"full_message": "Получен запрос за создание платежного средства: {"SuccessReturnUrl":"https://sletat.ru/tour/7-1939548394-65996246/buy/?ClaimId=b5e3bf98-2855-400d-a93a-17c54a970155","ErrorReturnUrl":"https://sletat.ru/","PaymentAgentId":15,"DocumentNumber":96629429,"DocumentDisplayNumber":"4451-17993","Amount":36307.0,"PaymentToolType":3,"ExpiryDateUtc":"2020-04-03T00:33:55.217358+03:00","LifecycleType":2,"CustomerEmail":"[email protected]","Description":"","SettingsId":"8759d0dd-da54-45dd-9661-4e852b0a1d89","AdditionalInfo":"{"TourOfficeAdditionalInfo":{"IsAdditionalPayment":false},"BarrelAdditionalInfo":{"Tickets":[{"Passenger":{"FIO":"XXX VIKTORIIA"},"ReservationSystem":null,"TicketNumber":null,"IsRefundPossible":false},{"Passenger":{"FIO":"XXX ANDREI"},"ReservationSystem":null,"TicketNumber":null,"IsRefundPossible":false},{"Passenger":{"FIO":"XXX Andrei"},"ReservationSystem":null,"TicketNumber":null,"IsRefundPossible":false}],"Segments":[{"Flight":"5659","AviaCompany":null,"AviaCompanyIataCode":null,"DepartureCity":"LED","DepartureAirport":"LED","DepartureAirportIataCode":"LED","DepartureDate":"2019-04-11T02:45:00","DepartureTime":null,"ArrivalCity":"SHJ","ArrivalAirport":"SHJ","ArrivalAirportIataCode":"SHJ","ArrivalDate":"2019-04-11T09:40:00","ArrivalTime":null,"FareCode":null},{"Flight":"5660","AviaCompany":null,"AviaCompanyIataCode":null,"DepartureCity":"SHJ","DepartureAirport":"SHJ","DepartureAirportIataCode":"SHJ","DepartureDate":"2019-04-14T10:45:00","DepartureTime":null,"ArrivalCity":"LED","ArrivalAirport":"LED","ArrivalAirportIataCode":"LED","ArrivalDate":"2019-04-14T15:50:00","ArrivalTime":null,"FareCode":null}]},"Tickets":[{"Passenger":{"FIO":"XXX VIKTORIIA"},"ReservationSystem":null,"TicketNumber":null,"IsRefundPossible":false},{"Passenger":{"FIO":"XXX ANDREI"},"ReservationSystem":null,"TicketNumber":null,"IsRefundPossible":false},{"Passenger":{"FIO":"XXX Andrei"},"ReservationSystem":null,"TicketNumber":null,"IsRefundPossible":false}],"Segments":[{"Flight":"5659","AviaCompany":null,"AviaCompanyIataCode":null,"DepartureCity":"LED","DepartureAirport":"LED","DepartureAirportIataCode":"LED","DepartureDate":"2019-04-11T02:45:00","DepartureTime":null,"ArrivalCity":"SHJ","ArrivalAirport":"SHJ","ArrivalAirportIataCode":"SHJ","ArrivalDate":"2019-04-11T09:40:00","ArrivalTime":null,"FareCode":null},{"Flight":"5660","AviaCompany":null,"AviaCompanyIataCode":null,"DepartureCity":"SHJ","DepartureAirport":"SHJ","DepartureAirportIataCode":"SHJ","DepartureDate":"2019-04-14T10:45:00","DepartureTime":null,"ArrivalCity":"LED","ArrivalAirport":"LED","ArrivalAirportIataCode":"LED","ArrivalDate":"2019-04-14T15:50:00","ArrivalTime":null,"FareCode":null}]}","FinancialSystemId":9,"Key":"18fe21d1-8c9c-43f3-b11d-6bf884ba6ee0"}"

D'ailleurs, les liens vers les visites payantes fonctionnent assez bien :

Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public

Dans les index avec le nom graylog_ en texte clair se trouvaient les identifiants et les mots de passe des agences de voyages connectées au système Sletat.ru et vendant des circuits à leurs clients :

"full_message": "Tours by request 155213901 added to local cache with key 'user_cache_155213901' at 5/6/2019 4:49:07 PM, rows found 0, sortedPriceLength 215. QueryString: countryId=90&cityFromId=1265&s_nightsMin=6&s_nightsMax=14&stars=403%2c404&minHotelRating=1&currencyAlias=RUB&pageSize=300&pageNumber=1&s_showcase=true&includeOilTaxesAndVisa=0&login=zakaz%40XXX.ru&password=XXX, Referer: , UserAgent: , IP: 94.154.XX.XX."

Selon mes estimations, plusieurs centaines de couples login/mot de passe ont été affichés.

Depuis le compte personnel de l’agence de voyages sur le portail agent.sletat.ru il a été possible d'obtenir des données sur les clients, notamment des numéros de passeport, des passeports internationaux, des dates de naissance, des noms complets, des numéros de téléphone et des adresses e-mail.

Deux en un : les données touristiques et les billets pour les événements culturels étaient accessibles au public

J'ai prévenu le service Sletat.ru le 15.05.2019/10/46 à 16h00 (heure de Moscou) et quelques heures plus tard (jusqu'à XNUMXhXNUMX) il a disparu de leur accès gratuit. Plus tard, en réponse à la publication dans Kommersant, la direction du service a fait une déclaration très étrange à travers les médias :

Le chef de l'entreprise, Andrei Vershinin, a expliqué que Sletat.ru permet à un certain nombre de grands voyagistes partenaires d'accéder à l'historique des requêtes dans le moteur de recherche. Et il a supposé que DeviceLock l'avait reçu : "Cependant, la base de données spécifiée ne contient pas les données des passeports des touristes, les identifiants et mots de passe des agences de voyages, les informations de paiement, etc." Andrei Vershinin a souligné que Sletat.ru n'a pas encore reçu de preuves d'accusations aussi graves. «Nous essayons maintenant de contacter DeviceLock. Nous pensons qu'il s'agit d'un ordre. Certaines personnes n’aiment pas notre croissance rapide », a-t-il ajouté. "

Comme indiqué ci-dessus, les identifiants, mots de passe et données de passeport des touristes sont restés dans le domaine public pendant assez longtemps (au moins depuis le 29.03.2019 mars XNUMX, lorsque le serveur de l’entreprise a été enregistré pour la première fois dans le domaine public par le moteur de recherche Shodan). Bien entendu, personne ne nous a contactés. J'espère qu'ils ont au moins informé les agences de voyages de la fuite et les ont forcés à changer leurs mots de passe.

Les nouvelles sur les fuites d'informations et les initiés peuvent toujours être trouvées sur ma chaîne Telegram "Fuites d'informations».

Source: habr.com

Ajouter un commentaire