Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami

Šiandien iš karto apžvelgsime du atvejus – dviejų visiškai skirtingų įmonių klientų ir partnerių duomenys buvo laisvai prieinami „dėka“ atvirų Elasticsearch serverių su šių įmonių informacinių sistemų (IS) žurnalais.

Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami

Pirmuoju atveju tai yra dešimtys tūkstančių (o gal ir šimtų tūkstančių) bilietų į įvairius kultūros renginius (teatrus, klubus, keliones upėmis ir pan.), parduodamų per Radario sistemą (www.radario.ru).

Antruoju atveju tai yra duomenys apie tūkstančių (galbūt kelių dešimčių tūkstančių) keliautojų, pirkusių keliones per kelionių agentūras, prijungtas prie sistemos Sletat.ru, turistines keliones (www.sletat.ru).

Iš karto noriu pastebėti, kad skiriasi ne tik įmonių, leidusių duomenis viešai paskelbti, pavadinimai, bet ir šių įmonių požiūris į incidento atpažinimą bei vėlesnė reakcija į jį. Bet pirmiausia viskas…

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

Vienas atvejis. "Radario"

06.05.2019-XNUMX-XNUMX vakare mūsų sistema atrado, kad Elasticsearch serveris yra laisvai prieinamas, priklausantis elektroninių bilietų pardavimo tarnybai „Radario“.

Pagal jau nusistovėjusią liūdną tradiciją, serveryje buvo pateikti išsamūs tarnybos informacinės sistemos žurnalai, iš kurių buvo galima gauti asmens duomenis, vartotojų prisijungimus ir slaptažodžius bei pačius elektroninius bilietus į įvairius renginius visoje šalyje.

Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami

Bendras rąstų tūris viršijo 1 TB.

„Shodan“ paieškos sistemos duomenimis, serveris buvo viešai prieinamas nuo 11.03.2019 m. kovo 06.05.2019 d. Radario darbuotojus informavau 22-50-07.05.2019 09:30 (MSK) ir XNUMX-XNUMX-XNUMX apie XNUMX:XNUMX serveris tapo nepasiekiamas.

Žurnaluose buvo universalus (vienkartinis) prieigos raktas, suteikiantis prieigą prie visų įsigytų bilietų per specialias nuorodas, pvz.:

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

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

Problema taip pat buvo ta, kad bilietams apskaityti buvo naudojamas nuolatinis užsakymų numeravimas ir paprastas bilieto numerio surašymas (XXXXXXXXX) arba užsisakyti (YYYYYYY), iš sistemos buvo galima gauti visus bilietus.

Norėdamas patikrinti duomenų bazės aktualumą, aš net sąžiningai nusipirkau pigiausią bilietą:

Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami
Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami

ir vėliau jį rado viešajame serveryje IS žurnaluose:

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

Atskirai noriu pabrėžti, kad bilietų buvo galima įsigyti ir į jau įvykusius, ir į dar tik planuojamus renginius. Tai reiškia, kad potencialus užpuolikas gali panaudoti kažkieno bilietą, kad patektų į planuojamą renginį.

Vidutiniškai kiekviename Elasticsearch indekse, kuriame yra vienos konkrečios dienos žurnalai (nuo 24.01.2019-07.05.2019-25 iki 35-XNUMX-XNUMX), buvo nuo XNUMX iki XNUMX tūkstančių bilietų.

Be pačių bilietų, rodyklėje buvo prisijungimo vardai (el. pašto adresai) ir tekstiniai slaptažodžiai, leidžiantys pasiekti Radario partnerių, parduodančių bilietus į savo renginius per šią paslaugą, asmenines paskyras:

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

Iš viso buvo aptikta daugiau nei 500 prisijungimo / slaptažodžių porų. Bilietų pardavimo statistika matoma asmeninėse partnerių paskyrose:

Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami

Taip pat buvo viešai skelbiami pirkėjų, nusprendusių grąžinti anksčiau įsigytus bilietus, vardai, telefonų numeriai ir elektroninio pašto adresai:

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

Per vieną atsitiktinai parinktą dieną buvo aptikta daugiau nei 500 tokių įrašų.

Gavau atsakymą į įspėjimą iš „Radario“ techninio direktoriaus:

Esu „Radario“ techninis direktorius ir norėčiau padėkoti, kad nustatėte problemą. Kaip žinote, uždarėme prieigą prie tamprių ir sprendžiame pakartotinio bilietų išdavimo klientams klausimą.

Šiek tiek vėliau bendrovė padarė oficialų pareiškimą:

„Radario“ elektroninių bilietų pardavimo sistemoje buvo aptiktas ir skubiai ištaisytas pažeidžiamumas, dėl kurio gali nutekėti paslaugos klientų duomenys, Maskvos miesto naujienų agentūrai sakė bendrovės rinkodaros direktorius Kirilas Malyševas.

„Iš tikrųjų aptikome sistemos veikimo pažeidžiamumą, susijusį su reguliariais atnaujinimais, kurie buvo ištaisyti iškart po aptikimo. Dėl pažeidžiamumo tam tikromis sąlygomis dėl nedraugiškų trečiųjų šalių veiksmų gali nutekėti duomenys, tačiau incidentų neužfiksuota. Šiuo metu visi gedimai pašalinti“, – sakė K.Malyševas.

Įmonės atstovas pabrėžė, kad visus problemos sprendimo metu parduotus bilietus nuspręsta iš naujo išduoti siekiant visiškai pašalinti bet kokio sukčiavimo prieš paslaugų klientus galimybę.

Po kelių dienų patikrinau duomenų prieinamumą naudodamasis nutekėjusiomis nuorodomis – prieiga prie „atidengtų“ bilietų tikrai buvo aprėpta. Mano nuomone, tai yra kompetentingas, profesionalus požiūris į duomenų nutekėjimo problemos sprendimą.

Antras atvejis. „Fly.ru“

15.05.2019-XNUMX-XNUMX anksti ryte „DeviceLock“ duomenų pažeidimo žvalgyba identifikavo viešą Elasticsearch serverį su tam tikros IS žurnalais.

Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami

Vėliau buvo nustatyta, kad serveris priklauso kelionių pasirinkimo tarnybai „Sletat.ru“.

Iš indekso cbto__0 buvo galima gauti tūkstančius (11,7 tūkst. įskaitant dublikatus) elektroninio pašto adresų, taip pat tam tikrą mokėjimo informaciją (kelionės kaina) ir kelionių duomenis (kada, kur, lėktuvo bilietų duomenis). visi į kelionę įtrauktų keliautojų ir kt.) apie 1,8 tūkst. įrašų:

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

Beje, nuorodos į mokamas keliones gana veikia:

Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami

Rodyklėse su pavadinimu graylog_ aiškiu tekstu buvo pateikti kelionių agentūrų, prisijungusių prie Sletat.ru sistemos ir parduodančių keliones savo klientams, prisijungimai ir slaptažodžiai:

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

Mano skaičiavimais, buvo rodomi keli šimtai prisijungimo / slaptažodžio porų.

Iš kelionių agentūros asmeninės paskyros portale agent.sletat.ru buvo galima gauti klientų duomenis, įskaitant pasų numerius, tarptautinius pasus, gimimo datas, vardus ir pavardes, telefono numerius ir elektroninio pašto adresus.

Du viename: turistų duomenys ir kultūros renginių bilietai buvo viešai prieinami

Sletat.ru tarnybai pranešiau 15.05.2019-10-46 16:00 (MSK) ir po kelių valandų (iki XNUMX:XNUMX) ji dingo iš jų nemokamos prieigos. Vėliau, reaguodama į publikaciją Kommersant, tarnybos vadovybė per žiniasklaidą padarė labai keistą pareiškimą:

Įmonės vadovas Andrejus Veršininas paaiškino, kad Sletat.ru daugeliui pagrindinių partnerių kelionių organizatorių suteikia prieigą prie užklausų istorijos paieškos sistemoje. Ir jis manė, kad „DeviceLock“ jį gavo: „Tačiau nurodytoje duomenų bazėje nėra turistų pasų duomenų, kelionių agentūrų prisijungimų ir slaptažodžių, mokėjimo informacijos ir pan. Andrejus Veršininas pažymėjo, kad Sletat.ru kol kas negavo jokių tokių rimtų kaltinimų įrodymų. „Dabar bandome susisiekti su „DeviceLock“. Manome, kad tai yra įsakymas. Kai kuriems žmonėms nepatinka mūsų spartus augimas“, – pridūrė jis. “

Kaip parodyta aukščiau, turistų prisijungimai, slaptažodžiai ir pasų duomenys buvo viešai prieinami gana ilgą laiką (bent jau nuo 29.03.2019 m. kovo XNUMX d., kai „Shodan“ paieškos sistema pirmą kartą viešai užfiksavo įmonės serverį). Žinoma, niekas į mus nesikreipė. Tikiuosi, kad jie bent jau pranešė kelionių agentūroms apie nutekėjimą ir privertė pakeisti slaptažodžius.

Naujienos apie informacijos nutekėjimą ir viešai neatskleistą informaciją visada galite rasti mano „Telegram“ kanale “Informacijos nutekėjimas".

Šaltinis: www.habr.com

Добавить комментарий