1 poin oleh GN⁺ 2024-01-20 | 1 komentar | Bagikan ke WhatsApp
  • Di Jerman, seorang pengembang yang saat bekerja menyelidiki log perangkat lunak menemukan informasi akses DB vendor dan melaporkannya, tetapi pengadilan menilainya sebagai peretasan
  • Perangkat lunak yang bermasalah membuat koneksi MySQL ke server basis data vendor, dan di dalamnya terdapat bukan hanya data pelanggan klien pengembang tersebut, tetapi juga semua data pelanggan vendor
  • Kredensial tersebut di-hardcode dalam teks polos di dalam aplikasi, dan terekspos sedemikian rupa sampai-sampai dekompilasi pun tidak diperlukan
  • Pengadilan menilai bahwa keberadaan kata sandi saja sudah berarti ada mekanisme perlindungan, dan tindakan melewatinya termasuk peretasan
  • Putusan seperti ini dapat melemahkan riset keamanan yang sah, sekaligus membuat perusahaan dengan keamanan buruk bisa menghindari tanggung jawab dan menempatkan pengguna dalam risiko lebih besar

Dari penemuan hingga tuntutan pidana

  • Ini adalah kasus yang memunculkan kekhawatiran bahwa hukum Jerman dapat membuat riset keamanan menjadi aktivitas berisiko
  • Seorang pengembang ditugaskan menyelidiki perangkat lunak yang menghasilkan pesan log dalam jumlah berlebihan
  • Dalam proses penyelidikan, ia memastikan bahwa perangkat lunak tersebut membuat koneksi MySQL ke server basis data vendor
  • Basis data itu berisi bukan hanya data kliennya sendiri, tetapi juga semua data pelanggan vendor
  • Setelah memastikannya, pengembang tersebut segera memberi tahu vendor, dan meski vendor memperbaiki kerentanannya, mereka mengajukan tuntutan pidana terhadap pengembang itu

Mekanisme perlindungan menurut pengadilan

  • Isu utamanya adalah apakah kredensial basis data yang di-hardcode di aplikasi merupakan perlindungan yang cukup untuk membenarkan tuduhan peretasan
  • Kredensial tersebut terekspos dalam teks polos, dan dekompilasi pun tidak diperlukan
  • Pengadilan menilai bahwa karena ada kata sandi, maka ada mekanisme perlindungan, dan tindakan melewatinya adalah peretasan

Risiko yang tersisa bagi riset keamanan

  • Alasan munculnya harapan agar putusan ini dibatalkan di tingkat banding adalah karena, seburuk apa pun perlindungannya, keberadaannya saja dapat membuat riset keamanan menjadi peretasan kriminal menurut hukum Jerman
  • Jika riset yang sah melemah, perusahaan dapat mempertahankan keamanan yang tidak memadai sambil menghindari tanggung jawab, dan pada akhirnya pengguna yang menjadi berisiko

Sumber asli

1 komentar

 
GN⁺ 2024-01-20
Komentar Hacker News
  • Judul artikelnya agak membingungkan dan terlihat hampir seperti clickbait. Kalau saya memahaminya dengan benar, kesalahannya adalah menggunakan kredensial basis data yang terekspos untuk login ke server basis data pihak ketiga
    Jadi, bukan sekadar dituntut karena “membocorkan” kredensial seperti kesan dari judulnya, melainkan lebih karena ia benar-benar memakainya untuk melihat-lihat isi di dalamnya

    • Sering kali satu-satunya cara untuk mengetahui suatu sistem itu apa adalah dengan masuk dan memeriksanya
      Ini mirip seperti ketika mendapat kartu akses gedung, lalu menganggap pintu yang bisa dibuka adalah ruangan yang boleh dimasuki. Kalau tim keamanan menemukan saya di ruangan yang seharusnya tidak boleh saya masuki, tidak jelas apakah itu salah saya atau salah orang yang memberi kartu dengan hak akses yang keliru
      Kalau setelah membuka pintu dan melihat ke dalam saya langsung sadar “oh, ini tempat yang tidak boleh dimasuki” lalu melaporkannya ke tim keamanan, saya juga ragu apakah itu pantas dihukum
    • Benar, ia login ke server dengan kredensial yang tertanam di aplikasi. Karena server itu berisi informasi pengguna lain, jika ia memakainya secara jahat atau login meski tahu tidak punya izin akses, itu jelas bisa menjadi kejahatan
      Namun intinya adalah apakah ia bisa mengetahui hal itu sebelum login. Jika kredensial ada di dalam aplikasi, apakah harus diasumsikan keamanan perusahaan begitu ceroboh sampai semua data pelanggan bisa diakses? Ia berhak menggunakan aplikasi tersebut, dan karena aplikasi memakai kredensial itu, tidak terlalu jauh untuk berpikir bahwa ia juga boleh memakainya
      Bagaimanapun, hasil putusan ini jelas akan berdampak buruk bagi keamanan komputer. Ke depannya, orang yang menemukan kerentanan seperti ini mungkin tidak melaporkannya karena takut pembalasan hukum
    • Tidak ada yang membingungkan. Hanya saja artikelnya tidak membingkai masalah ini dengan cara yang kamu sukai
      Dari sudut pandang pengembang, wajar melihat kata sandi sebagai sesuatu yang dimaksudkan untuk mencegah akses oleh non-pengguna, bukan oleh pengguna sah. Sejak awal kredensialnya juga tidak disembunyikan atau diobfuskasi
      Begitu menjadi jelas bahwa pengguna tidak seharusnya mengaksesnya, ia melaporkannya ke vendor. Apakah ada yang saya lewatkan? Di satu sisi ada pengembang yang melakukan pekerjaannya, dan di sisi lain ada perusahaan yang malu lalu membalas serta menakut-nakuti calon pelapor bug. Tampaknya sangat jelas apa yang sedang terjadi
    • “Benar-benar memakainya untuk melihat-lihat” memang benar, tetapi ia percaya bahwa basis data itu khusus untuk pelanggan tersebut sehingga hanya berisi data pelanggan itu, dan pelanggan tersebut mengizinkannya mengakses datanya sendiri
      Tampaknya nama basis datanya juga terlihat seperti itu. Setelah ia menyadari bahwa basis data itu berisi data semua pelanggan, ia langsung memutus koneksi
    • Saya mendukung frasa Hacking Is Not A Crime
      Yang penting adalah apa yang dilakukan terhadap data itu setelah diakses. Jika tidak melakukan apa-apa, itu tidak seharusnya menjadi kejahatan; kejahatan seharusnya baru terjadi ketika data itu benar-benar digunakan secara jahat
  • Ini masalah yang cukup besar di Jerman. Karena pasal-pasal StGB 202 dan seterusnya yang dikutip, riset keamanan di sektor swasta praktis menjadi mustahil, atau setidaknya sangat tidak menarik
    Terjadi kekosongan hampir 20 tahun, sehingga hampir tidak ada insinyur muda yang tertarik atau terlatih di bidang ini. Perusahaan-perusahaan raksasa paling kaya menyapu habis talenta yang bisa mereka temukan, dan talenta terbaik pergi ke luar negeri. Akibatnya, UKM yang merupakan mayoritas perusahaan Jerman makin sering diretas setiap hari. Tidak ada yang melakukan audit. Sekarang ini, semua hal yang terhubung ke jaringan adalah risiko keamanan
    Menurut saya, berharap ini akan dibatalkan di pengadilan tingkat lebih tinggi adalah pemikiran yang sangat naif. Terdakwa bisa membuang bertahun-tahun waktunya dari AG ke LG, OLG, hingga BGH. Saya perkirakan biayanya juga akan menguap sekitar 100 ribu euro. Untuk apa? Perusahaan gagal melindungi datanya sendiri dengan benar, lalu ketika diberi tahu, bentuk “terima kasih”-nya adalah menyeret orang itu ke pengadilan
    Saran saya begini. Jika tidak ada program bug bounty yang jelas, atau itu bukan perusahaanmu sendiri, atau perusahaan tersebut tidak secara eksplisit menugaskanmu secara tertulis dan membayarmu, jangan jadikan masalah itu sebagai masalahmu. Tahan kompleks orang Samaria baik hati, hapus semua file, dan jangan beri tahu siapa pun. Terutama di tempat kerja, jangan pernah membicarakannya. Begitu gugatan dimulai, orang yang ditanyai akan berkata, “Oh, Mike dari DevOps yang menemukannya di hex dump,” dan kamu akan menyesal
    Sebagian pakar keamanan informasi lama di Jerman begitu marah soal masalah ini sampai menolak membantu ketika lembaga pemerintah mengalami insiden. Kurang lebih sikapnya: belajarlah lewat penderitaan

  • Kasus ini sudah berlangsung selama beberapa tahun
    Musim panas lalu, pengadilan menolak perkara dari jaksa. Dalam sistem ini, jaksa mengajukan perkara ke pengadilan, lalu pengadilan meninjaunya secara cepat dan dapat menolaknya sebelum menjadwalkan sidang jika jelas-jelas lemah; ini cukup jarang terjadi. Jaksa berhasil membatalkannya di pengadilan yang lebih tinggi, sehingga persidangan digelar di pengadilan tingkat bawah yang sama, tetapi ditangani oleh hakim yang berbeda dari hakim yang pertama kali menolak perkara tersebut
    “Menurut putusan Pengadilan Negeri Jülich pada 10 Mei 2023, proses pidana terhadap peneliti keamanan tersebut dihentikan. Pengadilan menilai tidak ada tindak pidana karena data yang diakses oleh peneliti keamanan itu tidak dilindungi secara memadai. ‘Hanya data yang secara khusus dilindungi dari akses tanpa izin yang termasuk dalam ruang lingkup perlindungan tindak pidana tersebut. Ini mensyaratkan adanya langkah-langkah yang secara objektif sesuai untuk mencegah akses ke data,’ demikian bunyi putusan pengadilan. ‘Pengadilan tidak sependapat dengan pandangan jaksa bahwa perlindungan kata sandi itu sendiri sudah cukup. Misalnya, jika kata sandinya terlalu sederhana atau digunakan secara standar dalam aplikasi tertentu, kata sandi tidak selalu memberikan perlindungan data yang efektif. Dalam kasus seperti itu, pemberian akses ke data tidak merupakan tindak pidana.’”
    “Dari penyelidikan sendiri terhadap perangkat lunak Modern Solution, heise online dapat memastikan bahwa perangkat lunak itu memang berisi kata sandi default yang tertanam. Ini berarti siapa pun yang memeriksa perangkat lunak yang dapat diunduh bebas dari situs web perusahaan dapat mengakses data di server Modern Solution.”

  • Bukan, ia dinyatakan bersalah karena menggunakan kredensial itu untuk terhubung ke database. Aku tidak tahu hukum Jerman, tetapi setidaknya di Inggris, ini jelas melanggar Computer Misuse Act, jadi kasusnya sudah jelas
    Suka atau tidak, kalau berada dalam posisi melakukan riset seperti ini, setidaknya harus tahu dasar-dasar hukum

    • Untuk disebut “riset seperti ini”, pekerjaannya sebenarnya adalah “melihat perangkat lunak yang mengeluarkan terlalu banyak pesan log”
      Sepertinya pengembang itu bukan sedang melakukan riset keamanan, melainkan menyelidiki bug. Terhubung ke database, menyadari apa yang terjadi, lalu segera memutus koneksi dan melaporkannya secara bertanggung jawab seharusnya tidak berujung hukuman
      Seperti kata orang lain, kalau begini orang justru akan terdorong menjual pengetahuan ini kepada pihak yang benar-benar akan “menyalahgunakannya”
    • Menyalakan aplikasinya saja sudah berarti “menggunakan” kredensial itu. Kalau begitu, apakah semua konsumen perusahaan itu juga bersalah melakukan peretasan?
      Aku tidak melihat apa bedanya. Mungkin ini bisa dianggap pelanggaran syarat layanan, tetapi masih sangat jauh untuk disebut “peretasan”
      Hanya karena ada kata sandi, bukan berarti mereka berusaha menghalangi orang. Mereka mendistribusikan kata sandi itu bersama aplikasinya
      Ini seperti kamu diberi kartu akses saat masuk gedung dan diberi tahu “jangan pergi ke tempat yang tidak boleh”, lalu ternyata kartu itu adalah master key. Bagaimana sejak awal kita bisa tahu kartu itu akan membuka tempat yang seharusnya tidak boleh dimasuki?
      Aku juga punya kredensial layanan Google, tetapi itu hanya memberiku akses ke milikku sendiri
    • Aku tidak yakin sesederhana itu. Setahuku, ia diminta oleh seorang pelanggan untuk menyelidiki mengapa sistem dibanjiri data tertentu
      Ia menjalankan konektor dari layanan lain yang tampaknya menjadi sumber data itu, dan di firewall ia mengamati koneksi teks polos ke server MySQL jarak jauh yang terbuka. Saat diperiksa, kredensial yang digunakan ternyata sama untuk semua tenant di DB MySQL. Jadi yang terekspos bukan hanya data pelanggan itu, melainkan data semua tenant
      Setelah itu, setahuku ia membuat hash data pengguna, mengekspornya, lalu melaporkannya ke pihak berwenang, agar pengguna bisa memeriksa apakah mereka termasuk dalam sistem yang seharusnya dianggap telah dibobol. DB tersebut mengekspos data sekitar 700 ribu pengguna akhir. Ia juga memberi tahu perusahaan operator DB tentang masalah ini
      Vendor konektor itu merilis klien baru yang menggunakan TLS, dan ia juga membypassnya untuk menunjukkan bahwa masalahnya masih valid
      Ia juga dituduh memperoleh kata sandi dengan mendekompilasi perangkat lunak klien, tetapi kalau ingatanku benar, ia mengklaim hanya membuka file itu dengan Notepad
    • Jika kredensial database ditanamkan di aplikasi, maka aplikasi yang login ke server vendor tampak seperti perilaku yang memang dimaksudkan. Kalau begitu, apakah semua pengguna vendor tersebut juga harus didakwa melakukan peretasan?
    • Kalau membaca isi artikelnya, sulit dibilang sejelas itu. Pengembang tersebut menemukan kredensial database saat menyelidiki masalah, dan karena perangkat lunaknya terhubung langsung, ia tampaknya berasumsi koneksi database itu single-tenant atau dibatasi oleh hak pengguna
      Begitu menyadari bahwa ia bisa mengakses lebih banyak data daripada yang dimaksudkan, ia memutus koneksi
      Aku pernah melakukan hal yang persis sama dalam situasi serupa. Ada vendor perangkat lunak desktop yang bermasalah, dan ketika melihat kredensial database disimpan sebagai teks polos di file konfigurasi, aku terhubung ke sana. Dalam kasusku, database itu memang single-tenant khusus untuk perusahaan kami, jadi aku bisa menyelesaikan pekerjaan yang diperlukan
      Saat menerapkan hukum pada kasus seperti ini, bukankah niat jelas harus dipertimbangkan? Tidak tampak bahwa pengembang ini berniat mengakses sistem yang dibatasi
  • Hukum seperti itu sepertinya harus ditulis ulang. Niat itu penting, dan “peretas” ini tidak terlihat berniat menimbulkan kerugian
    Perusahaan itu dipermalukan karena celah keamanannya terungkap, lalu ingin menghukum orang yang mengungkapkannya

    • Benar. Ini akan menciptakan chilling effect yang membuat sistem Jerman kurang aman, dan negara-negara lain yang berada di luar jangkauan jaksa Jerman akan memanfaatkannya
      Kasus ini saja sudah membuatku sebagai pengembang tidak ingin bekerja di Jerman, apalagi di bidang keamanan
    • Setuju. Vonis bersalah ini pada dasarnya adalah hukuman karena menantang korporatisme dan mempermalukan mereka
      Mereka ingin “kaum tani” tahu tempatnya dan tidak mengintip ke jendela kaum bangsawan. Kecuali para pengacara entah bagaimana memaksa cahaya opini publik menyinari mereka, negara hampir selalu berpihak pada pihak yang punya uang paling banyak. Karena itu hal seperti ini harus dilakukan secara anonim
  • Aku pernah menjalankan startup makanan di Belanda
    Kami bekerja dengan PostNL, perusahaan besar yang menangani pengiriman surat dan dulunya organisasi pemerintah. Setiap minggu kami mengunggah pesanan kami ke sistem mereka, dan kami bisa melihat riwayat kami
    Lalu suatu hari tiba-tiba kami bisa mengakses riwayat semua pelanggan lain dan mengekspor data pengguna. Banyak di antaranya adalah pesaing langsung, dan mailing list mereka akan cukup berharga bagi kami
    Rekanku mengekspor seluruh data Marley Spoon, pesaing yang mendapat pendanaan lebih besar, dan beberapa data lain ke Excel. Ketika ia memberitahuku, aku langsung menyuruhnya menghapusnya. Mungkin menarik, tetapi jangan sampai menciptakan tanggung jawab hukum. Namun kalau kami menggunakannya, kami mungkin bisa tumbuh 10–30% dalam beberapa minggu
    Mereka tidak pernah melaporkannya, padahal itu wajib menurut hukum UE
    Pada akhirnya, kalau mendapat kunci istana, mungkin lebih baik tidak menggunakannya. Atau mungkin bisa saja digunakan
    Kami bisa saja menggunakannya dalam negosiasi harga, dan mungkin memang seharusnya begitu. Setelah itu mereka menaikkan harga kami hampir dua kali lipat dalam beberapa bulan dan sama sekali tidak berbelas kasihan. Belum lagi mereka salah menangani 3–8% pesanan dan tidak memberi pengembalian dana
    Namun sebagai gantinya kami pindah ke beberapa layanan pengiriman lain, yang masing-masing juga punya kekurangan sendiri

    • Kalau takut pembalasan, kamu bisa melapor secara anonim ke Autoriteit Persoonsgegevens dan membiarkan mereka menyelidikinya
      Screenshot berisi bukti kebocoran data pribadi pasti akan membantu, dan sepertinya PostNL belum tentu memperbaiki sistem buruk itu
      Menurut hukum Belanda, kalau rekanmu tahu ia tidak semestinya mengakses data itu tetapi tetap mengunduh data melampaui batas yang diperlukan untuk memastikan adanya kebocoran, maka ia melakukan tindak pidana
      Jika kamu “menggunakan” informasi ini dalam negosiasi, itu pemerasan, dan terutama terhadap perusahaan sebesar itu yang praktis tidak punya pesaing nyata, itu sesuatu yang sama sekali tidak ingin kamu lakukan. Mereka akan melapor ke polisi, dan tamatlah kamu
  • Kedengarannya mirip dengan kasus yang terjadi di tempat saya tinggal
    https://www.techdirt.com/2022/02/25/turns-out-it-was-actuall...
    “Peretasan” itu ternyata hanya mendekode nomor jaminan sosial yang berbentuk Base64

    • Pesan di dalam Base64 yang dienkode dalam artikel itu menarik, dan mengingatkan saya pada sesuatu yang pernah saya pikirkan
      Bayangkan berapa banyak programmer malas yang menempelkan macam-macam ke decoder Base64 online. Berapa banyak hal yang ada di dalam payload itu
      Menjalankan situs seperti base64decode.org akan menjadi honeypot yang hebat
    • Benar, itu kasus yang langsung terpikir begitu melihat judul ini. Entah kenapa, begitu saya menuliskan ini di komentar, langsung di-downvote
      Kalau datanya benar-benar dienkripsi, mungkin tidak masalah, tetapi encoding Base64 bukan enkripsi. Base64 sangat mudah didekode: https://developer.mozilla.org/en-US/docs/Glossary/Base64#the...
  • Banyak “peretasan” itu seperti ada orang bodoh yang membiarkan pintu depan terbuka lebar
    Kalau pintu depan dibiarkan terbuka lebar lalu kemalingan, publik tidak akan bersimpati, tetapi ketika perusahaan menghemat biaya dan tidak melakukan apa pun untuk memperbarui, memelihara, dan menegakkan praktik terbaik keamanan dasar, orang-orang malah meneriaki hacker

    • Ini bukan soal “simpati”, melainkan soal kejahatan
      Kalau kamu membiarkan pintu depan terbuka lebar dan saya masuk lalu mencuri, saya telah melakukan kejahatan. “Pintunya terbuka” bukan alasan pembenar
    • Meski pintu depan dibiarkan terbuka lebar lalu kemalingan, itu tetap kejahatan
      Saya memang pantas disalahkan, tetapi orang yang merampok saya juga harus mendapat hukuman yang sesuai
    • Entah kamu tinggal di mana, tetapi kalau saya membiarkan pintu terbuka, bukan berarti wajar jika seseorang masuk
      Bahkan jika mereka mengklaim “hanya ingin memastikan semuanya aman” sekalipun
  • Bukankah ini kebalikan dari hukum Orang Samaria yang Baik? Kalau melihat sesuatu, jangan katakan apa-apa dan jangan lakukan apa-apa
    Kalau mencari masalah seperti ini ilegal, saya penasaran apakah legal untuk berhenti setelah menyadari mungkin ada masalah, lalu melakukan short-selling saham perusahaan itu

    • Selama tidak menggunakan informasi orang dalam, short-selling seperti itu sepenuhnya legal. Perusahaan seperti Hindenburg Research pada dasarnya melakukan hal yang mirip
      Masalah yang akan kamu hadapi jika benar-benar mencobanya adalah investor hampir tidak peduli pada masalah keamanan. Jadi meski kerentanannya dipublikasikan, harga saham kemungkinan tidak turun. Selain itu, sepertinya perusahaan ini juga bukan perusahaan publik. Saya tidak bisa bahasa Jerman, jadi jangan terlalu yakin, tetapi tampaknya mungkin yang ini: https://www.modernsolution.net/
    • Mungkin kombinasi Tor + Twitter bisa, kalau memang benar-benar bisa mendaftar di sana lewat Tor
      Kira-kira seperti, “Halo, saya tidak sengaja menemukan bahwa ada kata sandi di offset X aplikasi ini. Di sini ada tangkapan layar hex dump yang memperlihatkan kata sandinya. Di sampingnya juga ada nama pengguna dan host, serta indikasi jelas bahwa ini koneksi SQL, tetapi saya tidak bisa memastikan apa kata sandi itu. Jangan gunakan nama pengguna dan kata sandi ini untuk terhubung ke IP tersebut. Terima kasih!”
    • Cacat seperti itu bisa tidak terlihat selama bertahun-tahun, jadi agar short-selling berhasil, mungkin perlu sedikit dorongan
      Selain itu, untuk perusahaan-perusahaan AS, kebocoran atau pelanggaran data berskala besar sering kali juga tidak berdampak negatif pada keuangan perusahaan
  • Pasal 202a hukum pidana berbunyi seperti ini
    https://www.gesetze-im-internet.de/stgb/__202a.html
    Kira-kira “tindakan memperoleh akses, untuk diri sendiri atau orang lain, ke data yang dilindungi dengan cara khusus terhadap akses tanpa izin”
    apparently kata sandi hardcoded yang tertanam di klien juga tampaknya termasuk di sini

    • Benar. Ini terkenal sebagai undang-undang yang sangat buruk, dan sejak awal seharusnya tidak pernah disahkan
      Tetapi begitulah kenyataannya, dan mungkin baru akan diperbaiki sekitar tahun 2050