Hanya beberapa hari yang lalu, saya menulis di Habrir tentang bagaimana layanan online medis Rusia DOC + berhasil meninggalkan dalam domain publik sebuah database dengan log akses terperinci, dari mana dimungkinkan untuk memperoleh data dari pasien dan karyawan layanan. Dan di sini ada insiden baru, dengan layanan Rusia lainnya yang menyediakan pasien dengan konsultasi online dengan dokter - "Dokter ada di dekatnya" (www.drclinics.ru).
Saya akan segera menulis bahwa karena kecukupan karyawan Dokter Dekat, kerentanan dengan cepat (2 jam dari saat pemberitahuan di malam hari!) Dieliminasi dan kemungkinan besar tidak ada kebocoran data pribadi dan medis. Berbeda dengan insiden dengan DOC +, di mana saya tahu pasti bahwa setidaknya satu file json dengan data ukuran 3,5 GB jatuh ke "dunia terbuka", sementara posisi resminya terlihat seperti ini: " Sejumlah kecil data telah sementara disediakan untuk umum, yang tidak dapat menimbulkan konsekuensi negatif bagi karyawan dan pengguna layanan DOC +. "

Pelanggan anonim menghubungi saya sebagai pemilik saluran Telegram " Kebocoran Informasi " dan melaporkan tentang kerentanan potensial di situs www.drclinics.ru.
Inti dari kerentanan adalah bahwa, mengetahui URL dan berada di sistem di bawah akun Anda, Anda dapat melihat data pasien lain.
Untuk mendaftarkan akun baru di sistem Doctor Near, pada kenyataannya, Anda hanya perlu nomor ponsel yang Anda terima SMS konfirmasi, sehingga tidak ada yang bisa memiliki masalah mengakses akun pribadi Anda.
Setelah pengguna memasukkan akun pribadinya, ia dapat segera, mengubah URL di bilah alamat browsernya, melihat laporan yang berisi data pribadi pasien dan bahkan diagnosa medis.

Masalah yang signifikan adalah bahwa layanan menggunakan penomoran dari ujung ke ujung dan sudah menghasilkan URL dari angka-angka ini:
https://[ ]/…/…/40261/…
Oleh karena itu, cukup untuk menetapkan angka minimum yang dapat diterima (7911) dan maksimum (42926 - pada saat kerentanan) untuk menghitung jumlah total (35015) laporan dalam sistem dan bahkan (jika ada niat jahat) untuk mengunduh semuanya dengan skrip sederhana.

Di antara data yang tersedia untuk dilihat adalah: nama dokter dan pasien, tanggal lahir dokter dan pasien, nomor telepon dokter dan pasien, jenis kelamin dokter dan pasien, alamat email dokter dan pasien, spesialisasi dokter, tanggal konsultasi, biaya konsultasi, dan dalam beberapa kasus bahkan diagnosis sebagai komentar pada laporan).
Kerentanan ini pada dasarnya sangat mirip dengan yang ditemukan pada Desember 2017 di server organisasi keuangan mikro Zaimograd. Kemudian pencarian bisa mendapatkan 36763 kontrak yang berisi data paspor lengkap dari klien organisasi.
Seperti yang saya tunjukkan sejak awal, karyawan Dekat Dokter menunjukkan profesionalisme nyata dan meskipun saya memberi tahu mereka tentang kerentanan pada pukul 23:00 (waktu Moskow), akses ke akun pribadi saya segera ditutup untuk semua orang, dan pada pukul 1:00 ( Msk) kerentanan ini telah diperbaiki.
Saya tidak bisa membantu tetapi menendang kembali departemen PR dari DOC + yang sama (New Medicine LLC). Dengan mendeklarasikan " jumlah data yang tidak signifikan untuk sementara waktu ternyata berada di domain publik ", mereka kehilangan pandangan bahwa kami memiliki data "kontrol obyektif" yang kami miliki, yaitu mesin pencari Shodan. Sebagaimana dicatat dengan benar di komentar pada artikel itu, menurut Shodan, tanggal komit pertama dari server ClickHouse terbuka di alamat DOC + IP: 02.15.2019 03:08:00, tanggal komit terakhir: 03/17/2019 09:52:00. Ukuran basis data sekitar 40 GB.
Dan total ada 15 fiksasi:
15.02.2019 03:08:00 16.02.2019 07:29:00 24.02.2019 02:03:00 24.02.2019 02:50:00 25.02.2019 20:39:00 27.02.2019 07:37:00 02.03.2019 14:08:00 06.03.2019 22:30:00 08.03.2019 00:23:00 08.03.2019 14:07:00 09.03.2019 05:27:00 09.03.2019 22:08:00 13.03.2019 03:58:00 15.03.2019 08:45:00 17.03.2019 09:52:00
Dari pernyataan itu, ternyata untuk sementara waktu itu sedikit lebih dari sebulan, dan sejumlah kecil data sekitar 40 gigabytes. Yah, saya tidak tahu ...
Tetapi kembali ke "Dokter ada di dekatnya."
Saat ini, paranoia profesional saya dihantui oleh hanya satu masalah kecil yang tersisa - oleh respons server Anda dapat mengetahui jumlah laporan dalam sistem. Saat Anda mencoba untuk mendapatkan laporan dengan URL yang tidak dapat Anda akses (tetapi laporan itu sendiri ada di sana), server mengembalikan ACCESS_DENIED , dan ketika Anda mencoba untuk mendapatkan laporan yang tidak ada di sana, NOT_FOUND dikembalikan. Dengan memantau peningkatan jumlah laporan dalam sistem dalam dinamika (seminggu sekali, sebulan, dll.), Anda dapat mengevaluasi beban layanan dan volume layanan yang disediakan. Ini tentu saja tidak melanggar data pribadi pasien dan dokter, tetapi itu bisa menjadi pelanggaran terhadap rahasia dagang perusahaan.