วันนี้เราจะดูสองกรณีพร้อมกัน - ข้อมูลของลูกค้าและคู่ค้าของบริษัทที่แตกต่างกันโดยสิ้นเชิงสองแห่งสามารถใช้งานได้ฟรี "ขอบคุณ" เซิร์ฟเวอร์ Elasticsearch แบบเปิดพร้อมบันทึกระบบข้อมูล (IS) ของบริษัทเหล่านี้
ในกรณีแรก เป็นตั๋วนับหมื่น (และอาจเป็นหลายแสน) สำหรับกิจกรรมทางวัฒนธรรมต่างๆ (โรงละคร คลับ ทริปล่องแม่น้ำ ฯลฯ) ที่ขายผ่านระบบ Radario (www.radario.ru).
ในกรณีที่สอง นี่คือข้อมูลเกี่ยวกับการเดินทางท่องเที่ยวของนักเดินทางหลายพันคน (อาจเป็นหลายหมื่นคน) ที่ซื้อทัวร์ผ่านตัวแทนการท่องเที่ยวที่เชื่อมต่อกับระบบ Sletat.ru (www.sletat.ru).
ฉันอยากจะทราบทันทีว่าไม่เพียงแต่ชื่อของบริษัทที่อนุญาตให้ข้อมูลเปิดเผยสู่สาธารณะเท่านั้นที่แตกต่างกัน แต่ยังรวมถึงแนวทางของบริษัทเหล่านี้ในการรับรู้ถึงเหตุการณ์ดังกล่าวและปฏิกิริยาที่ตามมาต่อเหตุการณ์ดังกล่าวด้วย แต่สิ่งแรกสุดก่อน…
Дисклеймер: вся информация ниже публикуется исключительно в образовательных целях. Автор не получал доступа к персональным данным третьих лиц и компаний. Информация взята либо из открытых источников, либо была предоставлена автору анонимными доброжелателями.
กรณีที่หนึ่ง "เรดิโอ"
ในช่วงเย็นของวันที่ 06.05.2019/XNUMX/XNUMX ระบบของเรา
ตามประเพณีที่น่าเศร้าที่จัดตั้งขึ้นแล้ว เซิร์ฟเวอร์มีบันทึกโดยละเอียดของระบบข้อมูลของบริการ ซึ่งเป็นไปได้ที่จะรับข้อมูลส่วนบุคคล การเข้าสู่ระบบของผู้ใช้และรหัสผ่าน รวมถึงตั๋วอิเล็กทรอนิกส์สำหรับกิจกรรมต่างๆ ทั่วประเทศ
ปริมาณบันทึกรวมเกิน 1 TB
ตามเครื่องมือค้นหา Shodan เซิร์ฟเวอร์ดังกล่าวเปิดให้บริการต่อสาธารณะตั้งแต่วันที่ 11.03.2019 มีนาคม 06.05.2019 ฉันแจ้งพนักงาน Radario เมื่อวันที่ 22/50/07.05.2019 เวลา 09:30 น. (MSK) และในวันที่ XNUMX/XNUMX/XNUMX เวลาประมาณ XNUMX:XNUMX น. เซิร์ฟเวอร์ไม่สามารถใช้งานได้
บันทึกมีโทเค็นการอนุญาตสากล (เดี่ยว) ซึ่งช่วยให้เข้าถึงตั๋วที่ซื้อทั้งหมดผ่านลิงก์พิเศษ เช่น:
http://radario.ru/internal/tickets/XXXXXXXX/print?access_token=******JuYWw6MDIzOWRjOTM1NzJiNDZjMTlhZGFjZmRhZTQ3ZDgyYTk
http://radario.ru/internal/orders/YYYYYYY/print?access_token=******JuYWw6MDIzOWRjOTM1NzJiNDZjMTlhZGFjZmRhZTQ3ZDgyYTk
ปัญหาก็คือว่าในการบัญชีตั๋ว มีการใช้หมายเลขคำสั่งซื้ออย่างต่อเนื่อง และการแจงนับหมายเลขตั๋วอย่างง่าย (XXXXXXX) หรือสั่งซื้อ (ปปปปปปปปปปปปปป) สามารถรับตั๋วทั้งหมดจากระบบได้
เพื่อตรวจสอบความเกี่ยวข้องของฐานข้อมูล ฉันยังซื้อตั๋วที่ถูกที่สุดให้ตัวเองด้วยซ้ำ:
และพบในภายหลังบนเซิร์ฟเวอร์สาธารณะในบันทึก IS:
http://radario.ru/internal/tickets/11819272/print?access_token==******JuYWw6MDIzOWRjOTM1NzJiNDZjMTlhZGFjZmRhZTQ3ZDgyYTk
ฉันอยากจะเน้นย้ำอีกว่าตั๋วมีจำหน่ายทั้งสำหรับกิจกรรมที่จัดขึ้นแล้วและสำหรับงานที่ยังอยู่ในการวางแผน นั่นคือผู้โจมตีอาจใช้ตั๋วของคนอื่นเพื่อเข้าสู่เหตุการณ์ที่วางแผนไว้
โดยเฉลี่ยแล้ว แต่ละดัชนี Elasticsearch มีบันทึกสำหรับหนึ่งวัน (เริ่มตั้งแต่ 24.01.2019/07.05.2019/25 ถึง 35/XNUMX/XNUMX) มีตั๋วตั้งแต่ XNUMX ถึง XNUMX ใบ
นอกเหนือจากตั๋วแล้ว ดัชนียังมีข้อมูลเข้าสู่ระบบ (ที่อยู่อีเมล) และรหัสผ่านแบบข้อความสำหรับการเข้าถึงบัญชีส่วนตัวของพันธมิตร Radario ที่ขายตั๋วเข้าร่วมกิจกรรมผ่านบริการนี้:
Content: "ReturnUrl=&UserEmail=***@yandex.ru&UserPassword=***"
โดยรวมแล้ว ตรวจพบคู่ล็อกอิน/รหัสผ่านมากกว่า 500 คู่ สถิติการขายตั๋วจะปรากฏในบัญชีส่วนตัวของพันธมิตร:
นอกจากนี้ ยังมีข้อมูลสาธารณะ ได้แก่ ชื่อ หมายเลขโทรศัพท์ และที่อยู่อีเมลของผู้ซื้อที่ตัดสินใจคืนตั๋วที่ซื้อไว้ก่อนหน้านี้:
"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":""}"
ในหนึ่งวันที่สุ่มเลือก มีการค้นพบบันทึกดังกล่าวมากกว่า 500 รายการ
ฉันได้รับคำตอบต่อการแจ้งเตือนจากผู้อำนวยการด้านเทคนิคของ Radario:
ฉันเป็นผู้อำนวยการด้านเทคนิคของ Radario และขอขอบคุณที่ระบุปัญหา ดังที่คุณทราบ เราได้ปิดการเข้าถึงความยืดหยุ่นแล้ว และกำลังแก้ไขปัญหาการออกตั๋วใหม่ให้กับลูกค้า
หลังจากนั้นไม่นานบริษัทก็ได้ออกแถลงการณ์อย่างเป็นทางการ:
Kirill Malyshev ผู้อำนวยการฝ่ายการตลาดของบริษัท บอกกับสำนักข่าว Moscow City News Agency ว่าพบช่องโหว่ในระบบการขายตั๋วอิเล็กทรอนิกส์ของ Radario และได้รับการแก้ไขทันที ซึ่งอาจนำไปสู่การรั่วไหลของข้อมูลจากลูกค้าของผู้ให้บริการได้
“เราค้นพบช่องโหว่ในการทำงานของระบบที่เกี่ยวข้องกับการอัปเดตเป็นประจำ ซึ่งได้รับการแก้ไขทันทีหลังจากค้นพบ ผลจากช่องโหว่ดังกล่าว การกระทำที่ไม่เป็นมิตรของบุคคลที่สามอาจนำไปสู่การรั่วไหลของข้อมูลได้ภายใต้เงื่อนไขบางประการ แต่ไม่มีการบันทึกเหตุการณ์ใดๆ ไว้ ในขณะนี้ ข้อบกพร่องทั้งหมดได้รับการแก้ไขแล้ว” K. Malyshev กล่าว
ตัวแทนของบริษัทเน้นย้ำว่าได้ตัดสินใจที่จะออกตั๋วทั้งหมดที่ขายไปใหม่ในระหว่างการแก้ไขปัญหา เพื่อที่จะขจัดความเป็นไปได้ที่จะเกิดการฉ้อโกงต่อลูกค้าบริการโดยสิ้นเชิง
ไม่กี่วันต่อมา ฉันตรวจสอบความพร้อมใช้งานของข้อมูลโดยใช้ลิงก์ที่รั่วไหล - การเข้าถึงตั๋ว "ที่ถูกเปิดเผย" นั้นครอบคลุมอยู่แล้ว ในความคิดของฉัน นี่เป็นแนวทางที่มีความสามารถและเป็นมืออาชีพในการแก้ปัญหาการรั่วไหลของข้อมูล
กรณีที่สอง "Fly.ru"
เช้าวันที่ 15.05.2019/XNUMX/XNUMX DeviceLock ข้อมูลการละเมิดข้อมูลอัจฉริยะ ระบุเซิร์ฟเวอร์ Elasticsearch สาธารณะพร้อมบันทึกของ IS บางอย่าง
ต่อมามีการจัดตั้งขึ้นว่าเซิร์ฟเวอร์เป็นของบริการเลือกทัวร์ "Sletat.ru"
จากดัชนี ซีบีทีโอ__0 เป็นไปได้ที่จะได้รับที่อยู่อีเมลนับพัน (11,7 พันรายการรวมถึงข้อมูลซ้ำ) รวมถึงข้อมูลการชำระเงินบางส่วน (ค่าทัวร์) และข้อมูลการท่องเที่ยว (เมื่อใด ที่ไหน รายละเอียดตั๋วเครื่องบิน ทั้งหมด นักเดินทางที่รวมอยู่ในทัวร์ ฯลฯ ) จำนวนประมาณ 1,8 พันบันทึก:
"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"}"
อย่างไรก็ตามลิงก์ไปยังทัวร์แบบชำระเงินนั้นค่อนข้างใช้งานได้:
ในดัชนีที่มีชื่อ เกรย์ล็อก_ ในข้อความที่ชัดเจนคือการเข้าสู่ระบบและรหัสผ่านของตัวแทนการท่องเที่ยวที่เชื่อมต่อกับระบบ Sletat.ru และการขายทัวร์ให้กับลูกค้า:
"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¤cyAlias=RUB&pageSize=300&pageNumber=1&s_showcase=true&includeOilTaxesAndVisa=0&login=zakaz%40XXX.ru&password=XXX, Referer: , UserAgent: , IP: 94.154.XX.XX."
ตามการประมาณการของฉัน มีการแสดงคู่ล็อกอิน/รหัสผ่านหลายร้อยคู่
จากบัญชีส่วนตัวของตัวแทนการท่องเที่ยวบนพอร์ทัล agent.sletat.ru สามารถได้รับข้อมูลลูกค้า ได้แก่ หมายเลขหนังสือเดินทาง หนังสือเดินทางระหว่างประเทศ วันเกิด ชื่อนามสกุล หมายเลขโทรศัพท์ และที่อยู่อีเมล
ฉันแจ้งบริการ Sletat.ru เมื่อวันที่ 15.05.2019/10/46 เวลา 16:00 น. (MSK) และไม่กี่ชั่วโมงต่อมา (จนถึง XNUMX:XNUMX น.) บริการนี้ก็หายไปจากการเข้าถึงฟรี ต่อมาเพื่อตอบสนองต่อการตีพิมพ์ใน Kommersant ฝ่ายบริหารของบริการได้ออกแถลงการณ์ที่แปลกมากผ่านสื่อ:
Andrei Vershinin หัวหน้าของบริษัท อธิบายว่า Sletat.ru ให้บริการผู้ให้บริการทัวร์พันธมิตรรายใหญ่หลายรายที่สามารถเข้าถึงประวัติการค้นหาในเครื่องมือค้นหา และเขาสันนิษฐานว่า DeviceLock ได้รับมัน: “อย่างไรก็ตาม ฐานข้อมูลที่ระบุไม่มีข้อมูลหนังสือเดินทางของนักท่องเที่ยว ข้อมูลเข้าสู่ระบบและรหัสผ่านของตัวแทนการท่องเที่ยว ข้อมูลการชำระเงิน ฯลฯ” Andrei Vershinin ตั้งข้อสังเกตว่า Sletat.ru ยังไม่ได้รับหลักฐานใด ๆ ของข้อกล่าวหาร้ายแรงดังกล่าว “ขณะนี้เรากำลังพยายามติดต่อ DeviceLock เราเชื่อว่านี่คือคำสั่ง บางคนไม่ชอบการเติบโตอย่างรวดเร็วของเรา” เขากล่าวเสริม "
ดังที่แสดงไว้ด้านบน การเข้าสู่ระบบ รหัสผ่าน และข้อมูลหนังสือเดินทางของนักท่องเที่ยวเป็นสาธารณสมบัติมาเป็นเวลานานแล้ว (อย่างน้อยตั้งแต่วันที่ 29.03.2019 มีนาคม XNUMX เมื่อเซิร์ฟเวอร์ของบริษัทถูกบันทึกเป็นสาธารณสมบัติเป็นครั้งแรกโดยเครื่องมือค้นหา Shodan) . แน่นอนว่าไม่มีใครติดต่อเรา ฉันหวังว่าอย่างน้อยพวกเขาก็แจ้งให้ตัวแทนการท่องเที่ยวทราบเกี่ยวกับการรั่วไหลและบังคับให้พวกเขาเปลี่ยนรหัสผ่าน
ข่าวเกี่ยวกับการรั่วไหลของข้อมูลและคนวงในสามารถพบได้ในช่องโทรเลขของฉัน "
ที่มา: will.com