Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami

Šodien aplūkosim uzreiz divus gadījumus - divu pilnīgi atšķirīgu uzņēmumu klientu un partneru dati bija brīvi pieejami, “pateicoties” atvērtajiem Elasticsearch serveriem ar šo uzņēmumu informācijas sistēmu (IS) žurnāliem.

Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami

Pirmajā gadījumā tie ir desmitiem tūkstošu (un varbūt simtiem tūkstošu) biļešu uz dažādiem kultūras pasākumiem (teātriem, klubiem, upes braucieniem utt.), kas tiek pārdotas caur Radario sistēmu (www.radario.ru).

Otrajā gadījumā tie ir dati par tūkstošiem (iespējams, vairāku desmitu tūkstošu) ceļotāju tūristu braucieniem, kuri iegādājās ceļojumus caur ceļojumu aģentūrām, kas savienotas ar sistēmu Sletat.ru (www.sletat.ru).

Uzreiz gribu atzīmēt, ka atšķiras ne tikai uzņēmumu nosaukumi, kas ļāvuši datiem kļūt publiski pieejamiem, bet arī šo uzņēmumu pieeja notikušā atpazīšanā un turpmākā reakcija uz to. Bet vispirms vispirms…

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

Pirmais gadījums. "Radario"

06.05.2019/XNUMX/XNUMX vakarā mūsu sistēma atklāja, ka Elasticsearch serveris ir brīvi pieejams, kas pieder elektronisko biļešu tirdzniecības dienestam Radario.

Atbilstoši jau iedibinātajai bēdīgajai tradīcijai serverī atradās detalizēti dienesta informācijas sistēmas žurnāli, no kuriem varēja iegūt personas datus, lietotāju pieteikumvārdus un paroles, kā arī pašas elektroniskās biļetes uz dažādiem pasākumiem visā valstī.

Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami

Kopējais baļķu apjoms pārsniedza 1 TB.

Saskaņā ar Shodan meklētājprogrammu serveris ir bijis publiski pieejams kopš 11.03.2019. gada 06.05.2019. marta. Paziņoju Radario darbiniekiem 22/50/07.05.2019 plkst. 09:30 (MSK) un XNUMX/XNUMX/XNUMX ap plkst. XNUMX:XNUMX serveris kļuva nepieejams.

Žurnālos bija ietverts universāls (vienots) autorizācijas marķieris, kas nodrošina piekļuvi visām iegādātajām biļetēm, izmantojot īpašas saites, piemēram:

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

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

Problēma bija arī tā, ka biļešu uzskaitei tika izmantota nepārtraukta pasūtījumu numerācija un vienkārša biļetes numura uzskaite (XXXXXXXX) vai pasūtīt (YYYYYYY), no sistēmas bija iespējams iegūt visas biļetes.

Lai pārbaudītu datu bāzes atbilstību, es pat godīgi nopirku lētāko biļeti:

Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami
Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami

un vēlāk atrada to publiskā serverī IS žurnālos:

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

Atsevišķi vēlos uzsvērt, ka biļetes bija pieejamas gan uz jau notikušiem, gan vēl tikai plānotiem pasākumiem. Tas nozīmē, ka potenciālais uzbrucējs varētu izmantot kāda cita biļeti, lai iekļūtu plānotajā pasākumā.

Vidēji katrs Elasticsearch indekss, kas satur žurnālus par vienu konkrētu dienu (sākot no 24.01.2019. līdz 07.05.2019.), saturēja no 25 līdz 35 tūkstošiem biļešu.

Papildus pašām biļetēm indeksā bija pieteikšanās (e-pasta adreses) un teksta paroles, lai piekļūtu Radario partneru personīgajiem kontiem, kuri pārdod biļetes uz saviem pasākumiem, izmantojot šo pakalpojumu:

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

Kopumā tika konstatēti vairāk nekā 500 pieteikšanās/paroles pāri. Biļešu pārdošanas statistika ir redzama partneru personīgajos kontos:

Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami

Tāpat publiski bija pieejami pircēju vārdi, tālruņu numuri un e-pasta adreses, kuri nolēma atgriezt iepriekš iegādātās biļetes:

"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":""}"

Vienā nejauši izvēlētā dienā tika atklāti vairāk nekā 500 šādu ierakstu.

Es saņēmu atbildi uz brīdinājumu no Radario tehniskā direktora:

Es esmu Radario tehniskais direktors un vēlos pateikties par problēmas identificēšanu. Kā zināms, esam slēguši piekļuvi elastīgajām gumijām un risinām jautājumu par biļešu atkārtotu izsniegšanu klientiem.

Nedaudz vēlāk uzņēmums sniedza oficiālu paziņojumu:

Radario elektroniskajā biļešu tirdzniecības sistēmā tika atklāta un nekavējoties novērsta ievainojamība, kas var izraisīt datu noplūdi no pakalpojuma klientiem, Maskavas pilsētas ziņu aģentūrai sacīja uzņēmuma mārketinga direktors Kirils Mališevs.

“Mēs faktiski atklājām sistēmas darbības ievainojamību, kas saistīta ar regulāriem atjauninājumiem, kas tika novērsta uzreiz pēc atklāšanas. Neaizsargātības rezultātā noteiktos apstākļos trešo personu nedraudzīgas darbības varētu izraisīt datu noplūdi, taču incidenti netika fiksēti. Šobrīd visas vainas ir novērstas,” sacīja K. Mališevs.

Uzņēmuma pārstāve uzsvēra, ka visas problēmas risināšanas laikā pārdotās biļetes nolemts atkārtoti izsniegt, lai pilnībā novērstu jebkādas krāpniecības iespējas pret dienesta klientiem.

Dažas dienas vēlāk es pārbaudīju datu pieejamību, izmantojot nopludinātās saites - piekļuve “atsegtajām” biļetēm patiešām tika segta. Manuprāt, tā ir kompetenta, profesionāla pieeja datu noplūdes problēmas risināšanai.

Otrais gadījums. "Fly.ru"

Agri no rīta 15.05.2019 DeviceLock datu pārkāpuma izlūkošana identificēja publisku Elasticsearch serveri ar noteiktas IS žurnāliem.

Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami

Vēlāk tika noskaidrots, ka serveris pieder ceļojumu atlases dienestam “Sletat.ru”.

No indeksa cbto__0 bija iespējams iegūt tūkstošiem (11,7 tūkstoši, ieskaitot dublikātus) e-pasta adrešu, kā arī daļu maksājumu informāciju (ceļojumu izmaksas) un ceļojumu datus (kad, kur, aviobiļešu informāciju viss ceļojumā iekļautie ceļotāji utt.) aptuveni 1,8 tūkstošu ierakstu apmērā:

"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"}"

Starp citu, saites uz maksas ekskursijām darbojas diezgan labi:

Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami

Indeksos ar nosaukumu graylog_ skaidrā tekstā bija to ceļojumu aģentūru pieteikumvārdi un paroles, kuras ir pieslēgtas Sletat.ru sistēmai un pārdod saviem klientiem ekskursijas:

"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."

Pēc manām aplēsēm, tika parādīti vairāki simti pieteikšanās/paroles pāru.

No ceļojumu aģentūras personīgā konta portālā agent.sletat.ru bija iespēja iegūt klientu datus, tostarp pases numurus, starptautiskās pases, dzimšanas datumus, pilnus vārdus, tālruņu numurus un e-pasta adreses.

Divi vienā: tūristu dati un kultūras pasākumu biļetes bija publiski pieejami

Paziņoju pakalpojumam Sletat.ru 15.05.2019 plkst. 10:46 (MSK), un dažas stundas vēlāk (līdz plkst. 16:00) tas pazuda no viņu brīvās piekļuves. Vēlāk, atbildot uz publikāciju Kommersant, dienesta vadība ar plašsaziņas līdzekļu starpniecību izteica ļoti dīvainu paziņojumu:

Uzņēmuma vadītājs Andrejs Veršinins skaidroja, ka Sletat.ru vairākiem lielākajiem partneru tūrisma operatoriem nodrošina piekļuvi vaicājumu vēsturei meklētājprogrammā. Un viņš pieņēma, ka DeviceLock to saņēma: "Tomēr norādītajā datu bāzē nav tūristu pasu datu, ceļojumu aģentūru pieteikumvārdu un paroļu, maksājumu informācijas utt." Andrejs Veršinins atzīmēja, ka Sletat.ru pagaidām nav saņēmis pierādījumus par tik nopietnām apsūdzībām. "Tagad mēs cenšamies sazināties ar DeviceLock. Mēs uzskatām, ka tas ir pasūtījums. Dažiem cilvēkiem nepatīk mūsu straujā izaugsme," viņš piebilda. "

Kā redzams iepriekš, tūristu pieteikumvārdi, paroles un pasu dati bija publiski pieejami diezgan ilgu laiku (vismaz kopš 29.03.2019. gada XNUMX. marta, kad uzņēmuma serveri pirmo reizi publiskajā domēnā ierakstīja meklētājprogramma Shodan). Protams, neviens ar mums nesazinājās. Ceru, ka viņi vismaz paziņoja tūrisma aģentūrām par noplūdi un piespieda nomainīt paroles.

Ziņas par informācijas noplūdi un iekšējām personām vienmēr var atrast manā Telegram kanālā "Informācijas noplūde'.

Avots: www.habr.com

Pievieno komentāru