Serba-serbi pentest

Saya belum terlalu lama melakukan pentest (penetration testing) tapi sudah mengamati ada berbagai jenis client. Saya juga mulai sering ditanya oleh orang yang mau melakukan pentesting: apa aja sih yang perlu dipentest? terus prosesnya biasanya bagaimana?

Secara umum pentest adalah menguji sistem komputer terhadap kelemahan security. Apa yang diuji tentunya bergantung pada sistem yang ada. Contoh: jika sistem hanya digunakan internal perusahaan, maka yang ditest hanya internal saja. Jika aplikasi bisa diakses publik via aplikasi mobile, maka aplikasi mobile juga perlu ditest.

zap

Apa yang ditest?

Pentest bisa dilakukan secara eksternal, artinya hanya dari akses website dan app saja, tidak masuk ke jaringan internal dan juga secara internal dengan datang ke perusahaan. Hal yang penting diidentifikasi adalah: apa asset penting yang perlu dilindungi dan sepenting apa assetnya, lalu bagaimana itu bisa diakses. Contoh: jika aplikasinya melibatkan pulsa atau voucher, kita perlu mengidentifikasi titik di mana isi pulsa bisa dilakukan, misalnya via website, via layanan partner, via aplikasi. Lanjutkan membaca “Serba-serbi pentest”

Tantangan Flare On

Di posting ini saya ingin memperkenalkan kompetisi Flare On untuk para reverse engineer sekaligus mengajak ikutan buat yang belum ikutan. Flare On adalah tantangan dalam bentuk CTF (silakan baca tulisan saya ini untuk yang belum tahu apa itu CTF) khusus di bidang reverse engineering yang diadakan oleh Fireye. Tantangannya 6 minggu, semua peserta yang bisa menyelesaikan semua tantangan akan dianggap pemenang dan dapat hadiah. Ini bisa dibandingkan dengan lari Marathon (lama, butuh stamina, tingkat kesulitannya bisa sangat tinggi, semua yang selesai dianggap sebagai finisher), dan kebanyakan CTF lain bisa dibandingkan dengan lari sprint (biasanya hanya 2 hari, kesulitan soal dibatasi supaya bisa selesai dalam hitungan jam) .

Reverse Engineering (RE)

Saya sudah menulis soal pengenalan reverse engineering dan tulisan pengantar jika ingin memulai reverse engineering. Inti reverse engineering adalah: membongkar/memahami kode (terutama kode biner, tapi tidak selalu biner). Contoh kode biner yang perlu dipahami:

  • Software yang dibeli atau download (tanpa source code)
  • Malware
  • Kode exploit

Contoh penggunaan reverse engineering:

  • Software dari Hacking Team (untuk menghack orang, software ini banyak dibeli oleh beberapa pemerintah dunia) ternyata ada backdoornya.
  • Berbagai file yang kena ransomware berhasil didekrip karena ada kelemahan dalam enkripsinya, dan ini ditemukan dengan reverse engineering (dan tentunya ilmu kriptografi)
  • Malware yang sangat spesifik (misalnya yang digunakan untuk hacking Bank Sentral Bangladesh) harus dianalisis khusus, tidak akan ketemu oleh antivirus biasa
  • Malware yang tertarget (via email/web) untuk perusahaan tertentu juga perlu dianalisis secara khusus
  • Berbagai software legal ternyata menginstall rootkit (kasus terbaru saat ini di game Street Fighter)
  • Untuk melakukan pentesting secara benar untuk aplikasi mobile
  • Berbagai router dan benda IOT perlu direverse engineer untuk mengetahui cara kerjanya
  • Berbagai exploit disebarkan via halaman web (via Javascript yang diobfuscate, memanfaatkan kelamahan Flash/Java/IE, lalu mengandung kode biner berisi shell code)

Lanjutkan membaca “Tantangan Flare On”

Mengenal ESP8266: SOC Wifi super murah dari China

Artikel ini adalah perkenalan SOC ESP8266, sebuah System On A Chip (SOC) berfitur WIFI yang sedang sangat populer. Salah satu penyebab kepopuleran ESP8266 untuk Internet Of Things (IOT) karena harga chipnya yang super murah: kurang dari 2 USD (sudah termasuk ongkos kirim dari China). Benda ini juga mudah diprogram menggunakan C, Python, Lua, Basic ataupun Wiring (dengan IDE Arduino).

Secara praktis, kemampuan IP networking akan memungkinkan kita membuat benda yang bisa dikendalikan dari Internet (contohnya: mematikan atau menyalakan sesuatu), mengirimkan data ke Internet (mengirimkan pembacaan sensor), atau memanfaatkan data dari Internet (menampilkan cuaca, menampilkan jam akurat saat ini).

Tahun 2014, sebuah perusahaan China merilis chip WIFI ESP8266, chip ini awalnya hanya dijual dalam bentuk modul (bernama ESP-01) agar sebuah microcontroller (misalnya Arduino) bisa mengakses WIFI melalui serial port dengan menggunakan AT Command Hayes. Pada saat itu chip ini dokumentasinya minim sekali dalam bahasa Inggris, tapi satu hal yang pasti adalah: chip ini sangat murah. Karena sangat murah dan menarik, maka ada yang berusaha menerjemahkan datasheet lengkapnya.

20160131_155419
ESP-01

Lanjutkan membaca “Mengenal ESP8266: SOC Wifi super murah dari China”

Password

Password adalah metode autentikasi yang paling umum. Password memiliki banyak kelebihan, tapi juga banyak kekurangan. Contoh kelebihannya: sangat sederhana, mudah dishare, tidak butuh hardware khusus. Sementara itu kelemahan password: mudah dishare artinya bisa disalin dengan mudah, bisa dibruteforce, bisa terjadi password reuse, dsb.

Saat ini masalah yang sangat umum adalah ini: orang memakai password yang sama di berbagai layanan. Jika satu layanan jebol, dan password Anda ketahuan untuk semua situs lain (bisa dengan bruteforce/dictionary attack, bisa juga situs itu menyimpan plaintext password). Banyak situs kecil yang passwordnya bocor (atau mungkin bahkan pemilik situsnya jahat), tapi jangan kira situs besar tidak bisa bocor.

Selain kebocoran dari berbagai situs, password juga kadang bisa didapatkan dari mengendus (sniff) paket jaringan. Password juga bisa dengan mudah didapat dari menggunakan keylogger (program atau hardware yang menyimpan setiap tombol yang Anda tekan).

Ada berbagai solusi yang ditawarkan untuk masalah password ini, dari mulai tidak menyimpan password, menyimpan password, mengganti atau menambahkan autentikasi lain.

Lanjutkan membaca “Password”

Mudik Indonesia 2016

Posting ini sekedar merangkum beberapa posting sebelumnya, sekaligus untuk menceritakan hal-hal kecil di luar posting-posting yang lain. Liburan kali ini cukup lama, dari tanggal 22 Juni (tiba di sana) sampai 10 Juli (tiba di Chiang Mai).

20160622_101146

Karena pemesanan tiket sudah mendekati harinya, harga Air Asia ternyata sudah sangat mahal, jadi kami mengambil Singapore Air yang ternyata lebih murah. Ketika berangkat Joshua agak pilek. Terakhir saya ingat (mungkin 5 tahun yang lalu), di Singapore WIFI gratisnya agak ribet. Tapi kali ini ternyata mudah diakses dan bahkan sangat cepat.

Kami mendarat dijemput oleh orang tua saya, dan sekaligus menjemput mamanya Risna yang mendarat dari Medan di waktu yang hampir sama. Di hari pertama, saya bersama bapak berusaha menyelesaikan tujuan utama. Tujuan utama adalah membuatkan Visa untuk Joshua. Joshua perlu keluar dari Thailand untuk bisa mendapatkan Visa (yang adalah ijin untuk masuk ke Thailand). Di hari pertama ini pembuatan Visa gagal karena kurang syarat Company Registration Letter dan Tax Proof.

Di sore hari pertama, saya naik motor bersama Jonathan ke Ceria Mart, dan pulangnya dihadang hujan. Setelah menunggu lama dan mengecek Google Weather akhirnya kami memutuskan pulang gerimis.

20160623_171426

Di hari kedua kami memutuskan berangkat lagi untuk mengurus Visa Joshua. Kali ini semua sudah dipersiapkan (dokumen yang diperlukan sudah diemail dan dicetak), jadi tidak ada masalah lagi. Pulangnya kami menyampaikan titipan Kak Wanti, dan karena masih cukup sore kami memutuskan mampir di Monumen Pancasila Sakti (sudah dituliskan ceritanya di posting lain).

Di hari berikutnya, opungnya Joshua berhasil memangkas rambutnya, sekarang dia kelihatan lebih ganteng. Joshua bisa terdistract karena diberikan video Mother Goose Club. Bersama saudara saya, mas Adi, kami naik bus dan ke monas hari itu. Ini juga sudah diceritakan di posting terpisah.

Di hari Minggu kami beristirahat karena mempersiapkan diri untuk ke Jawa Tengah esok harinya. Adik Asty (sepupunya Jonathan) datang, dan mereka bisa bermain bersama. Keesokan harinya kami berangkat ke kampung halaman dan ke Yogyakarta.

Sepulang dari Yogyakarta sudah tengah malam, jadi kami membiarkan anak-anak beristirahat, sementara Opung duluan datang ke acara adat sayur matua Inang Tua Kom pada dini hari. Kami datang ke Bekasi dengan menggunakan Grab dan kembali menggunakan Uber. Senangnya sekarang rumah Eyang sudah bisa dicari di peta sampai level nomer rumah dan posisinya pas, sehingga mudah memanggil Uber/Grab. Seperti pernah saya ceritakan di posting lain, ketika seseorang mencapai Sayur Matua maka acara adatnya adalah perayaan.

20160702_165728

Di hari Minggu kami kembali beristirahat lagi dan saya nyetir ke Hypermart untuk membeli beberapa benda (terutama alat pel yang lebih baik karena pembantu di rumah Eyang sedang mudik). Joshua bisa diajak makan di Solaria. Pulangnya kami mampir ke rumah Yosi. Keesokan harinya kami pergi ke Ancol, ini juga sudah dituliskan di posting terpisah.

20160703_135859

Sebenarnya kami ingin menyewa travel untuk pergi ke Bandung, tapi ternyata sudah penuh di hari sebelum lebaran, dan kebanyakan tutup di hari lebaran. Jadi akhirnya saya menyetir ke Bandung (ini juga diceritakan di posting terpisah).

Di rumah Eyang saya sempat mengajari Jonathan bermain api dan korek api. Ini sebenarnya sesuatu yang mau saya ajarkan dari dulu, tapi selalu lupa beli koreknya. Terakhir kali ingat pas musim panas di Chiang Mai dan waktu itu banyak kebakaran, jadi saya tunda lagi.

Hari Jumat kami membuat foto keluarga bersama. Terakhir kali foto keluarga, Joshua masih di dalam perut mamanya.

IMG_8308

Di hari Sabtu, Risna bertemu dengan teman-teman SMA-nya, sementara saya, Jonathan dan keluarga Yosi menonton film Finding Dory.

20160709_133710

20160709_154737

Kami kembali ke Chiang Mai hari Minggu pagi, diantar oleh keluarga Yosi. Kami agak khawatir karena di malam Minggu Joshua agak demam dan sempat muntah. Tapi Puji Tuhan Joshua hanya cranky sedikit di awal perjalanan. Sepanjang Jakarta Singapore dia tidur. Ketika transit kami biarkan dia merangkak berkeliaran. Di penerbangan terakhir dia agak bosan, tapi ada anak yang hampir seusianya di kursi dekat kami, jadi dia agak terhibur.

IMG_0887

Di sepanjang perjalanan berangkat dan kembali, Jonathan senang sekali karena biasanya pesawat yang dia naiki kecil (single aisle) sedangkan yang ini besar (double aisle). Dia juga senang sekali membaca instruksi keselamatan yang ada di tiap pesawat. Saya selalu diminta untuk memfoto supaya bisa dilihat lagi di rumah.

Liburan kali ini sangat melelahkan, penuh dengan perjalanan panjang, tapi kami bersyukur Joshua dan Jonathan tetap sehat. Kami tadinya sangat khawatir Joshua akan sakit, apalagi dengan perjalanan jauh dengan mobil (beberapa kali), dan juga mengunjungi sangat banyak tempat.

Kami bersyukur bisa tiba kembali di Chiang Mai dengan selamat, dijemput oleh Office Manager kami. Kami juga bersyukur rumah sudah dibersihkan oleh Asisten Rumah Tangga yang sudah dipesankan sebelumnya. Berbagai hal sudah dibereskan juga (tagihan listrik, air), tukang rumput juga sudah dipanggil untuk membereskan rumput. Bahkan dia sudah membelikan telur karena dia tahu kami akan sarapan itu. Kami juga bersyukur karena listrik, air, dan Internet semuanya berjalan lancar ketika tiba di rumah.

 

Jalan-jalan di Yogyakarta

Tanggal 29 Juni kami baru mulai menikmati Yogyakarta. Kami menginap di Sahid Rich Hotel (yang lagi promo). Secara umum hotelnya bagus. Kualitas koneksi WIFI-nya jelek. Makanan sarapan cukup lengkap (bahkan ada gudeg dan Jamu juga). Karena tidak membawa mainan untuk Joshua, saya menggunakan perlengkapan dari hotel untuk mainan.

20160629_064012

Tujuan utama hari itu adalah ke Borobudur. Sampai di sana kami dikerumuni penjaja barang dan payung. Mereka menawarkan 100 ribu per 3 kaos dan 10 ribu untuk payungnya. Kami melewati mereka dan ternyata di dalam harga kaos adalah 100 ribu per 5 kaos dan sewa payung hanya 5 ribu rupiah saja. Di dalam bahkan ada jasa menggendongkan anak supaya tidak capek naik ke atas, tapi kami tidak memakai jasa ini karena tahu bahwa Joshua tidak mau digendong siapapun selain orang tuanya.

IMG_8010

Untuk mencapai Borobudur, kami naik trem dengan biaya 7500 rupiah per orang, sudah mendapatkan minuman Aqua botol kecil.

20160629_110114

Sampai di Borobudur, kami langsung naik di cuaca yang terik (saya menggendong Joshua). Setelah sampai di atas kami turun lagi.

IMG_8063

Supaya tidak capek, kami menyewa delman keluar ke arah parkir. Harganya 75 ribu per delman (ada tiketnya) plus memberi tip ke kusirnya. Perjalanannya cukup panjang menuju ke tempat parkir, jadi 75 ribu itu cukup worth the money.

IMG_8109

Sorenya kami diajak makan di Serba Sambal (SS) oleh teman kami, Hesti, yang sempat lama di Chiang Mai. Sayangnya ketika diajak keliling Yogyakarta dalam mobil, Jonathan sudah mengantuk jadi tertidur. Tapi kami jadi punya target kunjungan hari berikutnya: alun-alun.

IMG_0504

Hari berikutnya kami berenang, lalu diteruskan makan siang Gudeg.

20160630_122245

Lalu kami pergi ke Taman Pintar. Ada banyak wahana gratis dan berbayar di sini.

Yang paling dinikmati Jonathan adalah Planetarium dan naik sepeda untuk belajar lalu lintas.

20160630_135326

Selesai dari sana kami menuju alun-alun. Lucu juga di peta ada Alun-alun Utara dan Alun-alun kidul (bukan lor-kidul atau utara-selatan). Kami menikmati makanan di sana yang harganya relatif murah.

IMG_0520

Tidak lupa kami menjalani tujuan utama: sepeda kayuh berbentuk mobil dengan LED yang menyala-nyala. Tarifnya 40 ribu kalo satu putaran atau 60 ribu kalau dua putaran. Karena capek mengayuh, kami mengambil satu putaran saja. Untung saja mobil yang paling depan adalah doraemon (yang merupakan tokoh favorit Jonathan)

20160630_173907

Tadinya kami akan meneruskan perjalanan ke Bandung, tapi karena mendapatkan kabar bahwa kakak almarhum papanya Risna meninggal, kami kembali langsung ke depok.

20160701_153833

Dalam perjalanan kembali, kami melihat bahwa Brexit (brebes exit) arah ke Jawa Tengah/Timur sudah mulai macet. Kami sendiri juga mengalami sedikit macet, tapi berhasil diatasi dengan bantuan Google Map lewat jalan kampung. Kami berangkat sekitar 11 Siang dan sampai sekitar jam 1 malam.

Harga kemalasan (beberapa dollar saja)

Tulisan ini bukan tentang diskusi filosofis mengenai harga kemalasan, tapi mengenai harga komponen elektronik dari China yang begitu murah yang dalam satu hal membuat orang jadi malas, tapi dalam hal lain membuat orang jadi rajin.

Waktu belajar elektronik sekitar 2007, harga berbagai kit elektronik masih mahal. Beberapa tahun kemudian, Arduino mulai populer (terutama yang UNO), tapi masih sedikit clonenya, dan harganya yang resmi masih sekitar 30-65 USD/board belum termasuk ongkos kirim. Arduino jadi sekedar alat belajar dan prototyping, tidak untuk implementasi akhir. Ketika ingin men-deploy yang sudah kita buat, biasanya kita akan memprogram sebuah chip Atmega yang dibeli terpisah untuk menghemat karena harga sebuah chip Atmega hanya beberapa dollar saja, apalagi jika yang kita buat itu tidak terlalu penting, misalnya komponen mainan.

Fast forward tiga tahun yang lalu: clone Arduino UNO sudah sampai titik harga 9.9 USD. Dan setahun belakangan ini bahkan bisa didapatkan dengan harga sekitar 3 USD saja termasuk ongkos kirim.

Sekarang harga clone Arduino udah murah banget. Satu board harganya 2.87 USD dengan ongkir 1.37 USD. Ongkir ini per…

Posted by Yohanes Nugroho onĀ Wednesday, January 28, 2015

Sekarang malas sekali memprogram chip microcontroller jika hanya ingin memakainya di rumah, pakai saja langsung Arduino Uno-nya, lalu beli lagi yang baru. Jika butuh yang ukuran lebih kecil (misalnya mungkin karena ingin dimasukkan mainan, sedangkan Uno terlalu besar) maka kita bisa membeli versi Pro Mini, yang harganya sekitar 17 USD untuk 10 board. Untuk produksi massal, tentunya microcontroller saja tanpa board akan tetap lebih murah dan reliable. Lanjutkan membaca “Harga kemalasan (beberapa dollar saja)”