Tentang Ransomware Petya

[Lagi asyik-asyiknya liburan, eh ada masalah keamanan lagi. Terpaksa ngeblog dulu.]

Lagi-lagi ramai tentang ransomware. Kali ini ransomware yang muncul diberi nama Petya. (Nama Petya ini sebetulnya kurang tepat karena pada awalnya diduga ransomware ini memiliki kesamaan dengan kode ransomware lama yang bernama Petya, namun ternyata kodenya berbeda. Maka muncullah nama pelesetan lain, seperti NotPetya, ExPetya, Goldeneye, dan seterusnya.)

Seperti halnya ransomware lainya, Petya juga mengunci berkas di komputer target dan meminta pembayaran melalui Bitcoin. Setelah membayar menggunakan Bitcoin, target diminta untuk memberitahukan melalui email. Namun email tersebut sudah dibekukan oleh providernya (Posteo) sehingga tidak ada mekanisme untuk memberitahukan bahwa ransom sudah dibayar. Dengan kata lain, tidak bisa mengembalikan berkas-berkas. Solusinya ya hanya pasang kembali (reinstall) sistem operasi Windows.

(Karena sifatnya yang tidak bisa dikembalikan lagi – entah sengaja atau tidak – maka Petya ini dapat dikatakan bukan ransomware, tapi malware yang menghapus disk saja. Sama jahatnya.)

Petya juga menggunakan kelemahan dari SMB v1 yang banyak digunakan pada sistem operasi Microsoft untuk berbagai fungsi, seperti misalnya untuk file sharing. Ini kelemahan sama yang dimanfaatkan oleh ransomware WannaCry. Dikabarkan kelemahan ini diketahui oleh NSA yang kemudian mengembangkan eksploit yang bernama EternalBlue (dan eksploit lainnya). Beberapa malware / ransomware dikembangkan dari eksploitasi ini.

Penyebaran Petya awalnya diberitakan oleh Polisi Ukraina dan terkait dengan software akunting yang harus digunakan oleh perusahaan-perusahaan yang memiliki proyek di pemerintahan Ukraina. (Tentu saja perusahaan pengembang software tersebut menolak tuduhan ini.) Itulah sebabnya ada dugaan lain bahwa ransomware Petya ini merupakan kedok untuk melakukan kekacauan di dunia siber Ukrainan. Cyberwar?

Penyebaran ransomware Petya ini agak terbatas karena mekanisme distribusi yang menggunakan jaringan lokal (tidak seperti lainnya yang menggunakan internet sebagai pencarian target berikutnya). Namun ada juga upaya penyebaran melalui email phishing.

Petya juga memeriksa keberadaan berkas “C:\WINDOWS\perfc.dat” (read-only). Jika ada berkas tersebut, maka mekanisme enkripsi dimatikan. Namun ini tidak membatasi kehidupannya. Jadi ini bukan mekanisme kill switch sebagaimana ada pada ransomware lainnya.

Berbagai software anti-virus sudah dapat mendeteksi ransomware Petya ini. Update program anti virus Anda dan update sistem operasi secara berkala. Tentu saja lakukan backup data yang penting secara berkala.

Iklan

Penanganan Ransomware WannaCry

Pertama, tidak usah panik. Ini bukan ransomware yang pertama (dan bukan yang terakhir pula).

Beberapa hari yang lalu muncul Ransomware WannaCry (dan variasinya) yang mengancam banyak komputer di dunia. Dikarenakan banyaknya komputer yang terancan, maka tulisan ini dibuat. Urutan penulisan tidak lazim. Biasanya di awal ada pengantar dahulu dan kemudian baru pembahasan. Namun karena yang diutamakan aalah penanganannya, maka bagian tersebut ditampilkan di awal.

Sistem Yang Terkena

Sistem yang terkena oleh Ransomsware WannaCry ini adalah sistem operasi Microsoft Windows (semua). Desktop ataupun notebook, selama menggunakan sistem operasi tersebut, termasuk yang rentan. Lengkapnya dapat dilihat pada bagian “Bahan Bacaan”.

Penanganan

Instruksi singkat untuk menangani ransomware WannaCry adalah sebagai berikut:

  1. melakukan backup;
  2. memperbaiki sistem operasi (OS) Microsoft dengan memasang patch MS17–010;
  3. menonaktifkan SMB (yang biasa digunakan untuk file sharing) jika memungkinkan;
  4. blok port TCP: 139/445 & 3389 dan UDP: 137 & 138, yang digunakan untuk melakukan penyerangan (jika memungkinkan).

Jika komputer sudah terkena maka dapat dilakuan proses pemasangan ulang (reinstall) sistem operasi Windows.

[Update] Ada kelemahan dari versi yang ada, sehingga memungkinkan dibuatkan Decryption Tool. Informasi mengenai decryption tool dapat diperoleh dari link berikut ini.

Ada informasi yang mengatakan bahwa password yang digunakan untuk mengenkripsi adalah “WNcry@2ol7” (tanpa tanda kutip), tetapi hal ini belum dapat kami konfirmasi.

Instruksi (keterangan) yang lebih panjang adalah sebagai berikut.

Ada beberapa hal yang kadang menyulitkan penanganan di atas atau perlu mendapatkan perhatian. Misalnya ada beberapa sistem dan aplikasi yang membutuhkan fitur file sharing atau menggunakan port 139/445. Jika fitur itu dimatikan (disable, block) maka aplikasi atau layanan tersebut dapat tidak berfungsi. Untuk itu pastikan dahulu bahwa penonaktifan dan pemblokiran ini tidak menghambat aplikasi Anda. Hal ini biasanya relevan terhadap server. Untuk komputer / notebook pengguna biasa, biasanya hal ini tidak terlalu masalah.

Ketika melakukan proses backup, sebaiknya komputer tidak terhubung ke internet atau jaringan komputer. Dikhawatirkan ketika backup sedang berlangsung, komputer terinfeksi ransomware tersebut.Yang menyulitkan adalah jika proses backup dilakukan melalui jaringan (misal backup secara online di Dropbox, Google Drive, dan sejenisnya), maka komputer Anda ya harus terhubung dengan jaringan.

Jika tidak ada data yang penting pada komputer tersebut, proses backup dapat diabaikan. (Meski hal ini tidak disarankan.)

Mematikan fitur SMB bergantung kepada versi dari Windows yang digunakan. Link dari Microsoft ini dapat membantu. Singkatnya adalah dengan tidak mencentang pilihan SMB 1.0/CIFS File Sharing Support sebagaimana ditampilkan pada gambar berikut.

smb-share

Penjelasan Yang Lebih Mendalam

Ransomware adalah software yang termasuk kepada kategori malware, malicious software (software yang memiliki itikad jahat). Ransomware biasanya mengubah sistem sehingga pengguna tidak dapat mengakses sistem atau berkas dengan berbagai cara. Salah satu caranya adalah melakukan proses enkripsi dengan kunci tertentu. Berkas aslinya dihapus. Untuk mengembalikan berkas yang sudah terenkripsi tersebut, pengguna harus mendapatkan kunci dari penyerang. Biasanya penyerang meminta bayaran. Itulah sebabnya dia disebut ransomware. Untuk kasus WannaCry ini, permintaan bayarannya bervariasi dari US$300-US$600.

Ada banyak ransomware dan tidak dibahas pada tulisan ini karena akan menjadi sangat panjang.

WannaCry (atau WannaCrypt) menggunakan kerentanan (vulnerability) sistem operasi Windows yang diduga kemudian dieksploitasi oleh NSA (dikenal dengan nama EternalBlue). Tools tersebut ternyata bocor ke publik dan kemudian dikembangkan menjadi basis dari WannaCry ransomware ini.

Penyebaran. Ada dua cara penyebaran; pada tahap awal dan pada tahap setelah ada ransomware yang terpasang.

Umumnya malware (termasuk ransomware ini) pada awalnya menyebar melalui social engineering (tipu-tipu). Ada varian dari ransomware yang menempel pada attachment PDF atau berkas lain yang dikirimkan via email. Penerima diminta untuk mengklik attachment itu. (Itulah sebabnya jangan sembarangan mengklik.) Jika diklik, maka ransomware tersebut akan memasang dirinya di sistem.

Setelah berhasil menginfeksi sistem, maka untuk versi 1, malware ini akan memastikan kill switch tidak aktif. (Akan dibahas selanjutnya.) Jika kill switch ini ada maka malware akan berhenti. Jika kill switch ini tidak ada, maka malware akan melakukan scanning ke jaringan mencari komputer-komputer lain di jaringan yang memiliki kerentanan SMB ini. Setelah itu dia akan melakukan penyerakan dengan membuat paket khusus yang diarahkan ke port-port yang digunakan oleh SMB (139, 445, 3389). Inilah cara penyebarannya melalui jaringan. Penyebaran yang ini seperti worm.

(Itulah sebabnya sebaiknya port-port tersebut diblokir jika tidak dibutuhkan. Jika Anda memiliki perangkat network monitoring, perhatikan apakah ada peningkatan traffic pada port-port tersebut. Jika ada, perhatikan sumber / source IP dari paket-paket tersebut. Boleh jadi komputer tersebut sudah terkena ransomware.)

Kill switch. Ternyata ransomware versi awal ini memiliki fitur kill switch, yaitu sebuah mekanisme untuk menghentikan dirinya sendiri. Jika domain http://www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com tersedia dan berjalan, maka ransomware ini akan menghentikan dirinya. (Hal ini ditemukan secara tidak sengaja oleh seorang peneliti malware. Dia kemudian mendaftarkan domain tersebut sehingga penyebaran versi awal dari WannaCry ini terhenti secara tidak sengaja. Ceritanya ada di sini.) Namun saat ini sudah ada WannaCry versi 2.0 yang tidak memiliki kill switch ini.

Penutupan Port. Port 139/445 pada sistem Windows digunakan untuk berbagai layanan, salah satunya adalah untuk file sharing / printer sharing. Port ini sudah sering digunakan sebagai bagian dari penyerangan (malware, cracking). Sebaiknya port-port ini ditutup. (Cara penutupannya akan dibahas terpisah. Biasanya terkait dengan layanan file sharing seperti di bahas pada bagian atas.)

Namun jika port ini ditutup, maka ada kemungkinan beberapa layanan yang biasa Anda lakukan (sharing) tidak berfungsi. Jika demikian (port tersebut harus aktif) maka gunakan alternatif perlindungan lain (misal dengan menggunakan firewall) untuk memastikan bahwa port tersebut hanya dapat diakses secara terbatas (oleh komputer yang Anda kenali).

Biasanya kami memang menyarankan untuk memblokir port ini. Sebaiknya port-port ini juga difilter di router jika tidak ada layanan sharing yang menyeberang lintas segmen jaringan. (Umumnya memang konfigurasi standar yang aman seperti ini. Jika tidak, nampaknya Anda harus membenahi keamanan jaringan Anda.)

Lain-lain

Tulisan ini akan diperbaiki secara berkala mengingat perkembangan (perubahan) status dari ransomware ini yang cepat berubah. Silahkan kunjungi untuk mendapatkan perubahan tersebut.

Bahan Bacaan

  1. Microsoft Security Bulletin MS17-010 – Critical: informasi mengenai sistem operasi apa saja yang terkena (hampir semua OS Windows yang masih digunakan saat ini), ketersediaan patch, dan rincian lain untuk memperbaiki.
  2. Untuk sistem yang sudah kadaluwarsa (Windows XP, Vista, Windows 8, Server 2003 dan 2008 Editions), Microsoft mengeluarkan emergency patch yang dapat diambil di sini.
  3. Cara untuk enable/disable SMB: agak sedikit teknis dan rinci.
  4. Decryption Tool: untuk membuka yang sudah terkena
  5. WannaCry|WannaDecrypt0r NSA-Cyberweapon-Powered Ransomware Worm: di github berisi banyak link terkait dengan WannaCry tersebut; terutama informasi teknis singkatnya.

Ngoprek IoT Lagi

Minggu pagi, enaknya ngoprek hardware lagi. Ngoprek Internet of Things (IoT) lagi. Maka digelarlah berbagai komponen dan perangkat di atas meja.

P_20170507_080328-01 IoT

Ada banyak yang ingin saya kerjakan. Satu-satu dioprek.

Weather station. Ada perangkat IoT untuk menangkap data cuaca. Coba cari yang mana di atas meja itu. Sudah ketemu. Pertama kali mau ngoprek, cek dulu apakah ada batrenya. Eh ternyata di perangkatnya belum ada batrenya. Ada yang membutuhkan 3 batre AA yang rechargeable. Untuk yang sensor suhu, kelembaban, dan tekanan juga membutuhkan batre (2 AAA tidak perlu rechargeable.) Yaaah. Terpaksa harus ditunda dulu ngopreknya. Besok beli batrenya ah.

P_20170507_082611-weather-01

Acer CloudProfessor (CFP). Yang ini berupa sebuah perangkat (Acer CloudProfessor, atau kita singkat saja CFP) dan beberapa sensor lainnya. CFP ini berupa sebuah perangkat yang terhubung ke cloud-nya Acer. (Di foto dia yang berwana hitam.)

IMG_20170507_100812-01

CFP ini dapat dihubungkan dengan berbagai sensor dan actuator. Sebagai contoh, dia dapat dihubungan dengan LED. Nantinya ada aplikasi di handphone yang dapat kita gunakan untuk mengendalikan LED itu melalui cloud. Ada juga sensor cahaya dan ada motor yang dapat dipasang menjadi kipas.

Sensor/LED - Acer CFP - cloud - handphone

Saya bahkan mencoba oprekan lain, yaitu mengendalikan kipas dengan handphone. Kipas ini terhubung dengan Arduino Leonardo yang di atasnya dipasang expansion board. Videonya dapat dilihat di sini:

Demikian ngoprek IoT di hari Minggu ini. Ngoprek akan dilanjutkan lagi sore hari. Nanti mau ngoprek BLE (Bluetooth LE). Kalau sempat.

Masa Depan Industri Mikroelektronika

Menebak masa depan bukanlah hal yang mudah. Orang yang hebatpun sering salah dalam memprediksi. Saya sendiri pernah “beruntung” menebak masa depan beberapa teknologi dengan baik karena kebetulan berada di tempat yang tepat pada waktu yang tepat pula. (I was in the right place and the right time.) Sebuah keberuntungan.

Sebagai contoh, saya mengenal World Wide Web (WWW) sejak pertama kali dibuat oleh Tim Berners-Lee. Kebetulan pada saat itu saya harus bekerja menggunakan NeXT computer. Pada saat yang sama, di Swiss, Tim Berners-Lee juga menggunakan komputer NeXt untuk mengembangkan WWW-nya. Saya sempat katakan bahwa WWW memiliki masa depan yang cerah, tetapi orang-orang tidak percaya karena waktu itu sedang musimnya protokol / aplikasi “Gopher”. Untuk membuktikannya, saya membuat halaman tentang Indonesia yang pertama. (The Indonesian homepage.)

Hal yang sama juga terjadi dengan Linux. Pada masa itu saya membutuhkan sistem operasi UNIX untuk komputer di rumah. Di kampus / kantor saya menggunakan Sun Microsystem untuk pekerjaan dan penelitian saya. Di rumah saya hanya punya komputer berbasis Intel. UNIX yang ada saat itu adalah SCO UNIX yang mahal dan Minix (yang entah kenapa kurang sreg). Ternyata di Finlandia ada seorang mahasiswa yang sedang berusaha membuat sebuah sistem operasi yang mirip UNIX. Saya jadinya ikut ngoprek juga. Ternyata asyik. Saya ngajakin teman-teman buat perusahaan pendukung Linux, tetapi pada sibuk sekolah semua. Akhirnya kami tidang ngapa-ngapain. Muncullah RedHat.

Nah, saya punya perasaan yang sama tentang Internet of Things (IoT) ini. Ini adalah masa depan.

Ketika saya berbicara dengan orang-orang pembuat perangkat keras, manufakturing elektronika dan mikroelektronika, kebanyakan masih mengarah kepada produk SIM card (smartcard). Dapat dipahami karena pasar SIM card di Indonesia saja ada lebih dari 500 juta unit pertahunnya. Sebuah pasar yang sangat besar. Maka akan sangat sulit untuk membujuk mereka untuk berubah haluan.

Kalau kita perhatikan lebih lanjut perangkat IoT ini, tidak ada yang menggunakan SIM card. Komunikasi antar perangkat ini sekarang kebanyakan menggunakan WiFi. Ke depannya apakah akan tetap menggunakan WiFi? atau Bluetooh (BLE)? Zigbee? LoRa? Yang pasti nampaknya bukan yang berbasis seluler. (Halo perusahaan seluler. Siap-siap menurun.)

photo559633135318444158

Komponen utama dari IoT adalah “prosesor” dan “media komunikasi”. Kunci utamanya adalah harus murah. Sangat murah. Mereka tidak harus menggunakan prosesor yang paling hebat (secara komputasi), tetapi yang cukup bagus dan murah. Masalahnya, jumlah yang diproduksi ini skalanya adalah milyaran unit. Beda 10 sen saja sudah beda jauh biayanya.

Jadi prosesor jenis apa? Nah, itu kita belum tahu. Sama-sama mencari tahu. Bahkan perusahaan besar sekalipun, seperti Intel dan IBM, masih mencari-cari. Mari kita perhatikan perkembangannya.

[Hal lain yang terkait dengan software dan data akan kita bicarakan dalam topik terpisah. Kita masih mencari “killer application” untuk IoT sebagaimana adanya Visicalc (spreadsheet) untuk komputer dan SMS untuk handphone. Google-nya IoT?]

IoT Programming

Steve Jobs pernah berkata, “Untuk setiap penggemar hardware, ada 10 orang yang suka ngulik software. Software hobbyists”. Tidak persis benar, tetapi kira-kira begitulah kata-katanya. Itulah sebabnya dia (dan Steve Wozniak) membuat komputer Apple ][. Sebelumnya kalau mau ngoprek software, harus ngoprek kit komputer. Harus tahu hardware. Padahal ada orang yang tidak memiliki latar belakang hardware, tapi ingin ngoprek komputer.

Salah satu kesulitan ngoprek hardware adalah menyambung-nyambungkan komponen. Bahkan untuk sekedar menyambungkan LED juga tidak mudah. Padahal “hello world” di dunia hardware itu adalah blinking LED.

Jika menyambungkan 1 LED saja sudah susah, apalagi menyambungkan 6 LED (atau lebih). Itulah sebabnya jarang yang membuat tutorial untuk menyalakan LED lebih dari 1 buah.

Salah satu solusi yang kami tawarkan adalah  membuat LED board yang cocok dengan board yang umum ada di lapangan. Sebagai contoh, ini adalah tampilan ProcodeCG LED (6 buah LED) yang disambungkan dengan NodeMCU. Bersih kan? Tidak perlu ada kabel-kabel.

p_20170306_092518-nodemcu-procodecg-0001

Sekarang kita dapat membuat kode Knight Rider LED tanpa perlu pusing dengan kabel-kabelnya. Jadi orang yang gemar software tetapi tidak memiliki latar belakang hardware dapat juga ikut ngoprek IoT (Internet of Things).

[Nanti video dan kode untuk menyalakan LED tersebut akan saya unggah ke YouTube. Sekarang akses internet lagi lemot.]

Selamat ngoprek.

Ngoprek IoT

Sudah seminggu ini (atau mungkin lebih?) saya ngoprek Internet of Things (IoT). Apa sih IoT itu? Pada dasarnya ini adalah perangkat keras (hardware) dalam ukuran kecil yang dapat diprogram untuk mengambil data (misal data temperatur) dan meneruskannya ke internet. Teknologi elektronika dan komputer berkembang dengan pesat sehingga perangkat dapat menjadi lebih kecil dan murah. Demikian pula kecepatan akses internet menjadi lebih cepat dan juga lebih murah. Kedua hal inilah yang menyebabkan populernya IoT.

p_20170220_075632-kopi-iot-01
NodeMCU boards

Latar belakang saya memang elektronika, sehingga seharusnya tidak banyak kesulitan dalam ngoprek IoT ini. Kenyataannya ada hal-hal yang sangat spesifik sehingga harus saya oprek dulu sebelum bisa jalan. Tadi malam saya ngoprek sampai jam 2 pagi (eh, 2 malam?). he he he.

Saya memiliki banyak development boards. Begitu ada yang baru, beli atau minta. (Yang terakhir itu yang menarik, minta. he he he.) Terus dioprek. Hasilnya saya masukkan ke YouTube dan kodenya saya simpan di Github supaya dapat dimanfaatkan orang lain. Ayo ngoprek IoT juga.

(PGP) Key-Signing Party

Salah satu aktivitas dalam rangka menjalankan sistem teknologi informasi yang aman (secure IT operation) adalah proses pertukaran kunci publik. Sistem kunci publik yang digunakan biasanya berbasis kepada PGP (Pretty Good Privacy) atau Gnu Privacy Guard (GPG). Maka di kelas saya, dilakukan key-signing party.

P_20170214_134309-01 keysigning

Para mahasiswa diminta membuat kunci publiknya, mengunggah kuncinya ke sebuah keyserver, dan kemudian menunjukkan identitasnya (KTP, kartu mahasiswa). Saya unduh kunci mereka dan saya tandatangani (signed) kunci mereka itu setelah melihat dan memastikan bahwa identitas mereka itu benar. Inilah kegiatan key-signing party yang sesungguhnya.

P_20170214_134545_BF keysigning

Di atas beberapa foto proses tersebut. Seru. Untuk memproses seluruh kunci di kelas ini dibutuhkan lebih dari 1 jam.