Source Code Versioning & Security

Dalam kuliah “Software Security” yang saya ajarkan minggu lalu, kami berdiskusi mengenai topik “source code versioning” dan “security“. Apa kaitannya keduanya? Adakah kaitannya?

Source code versioning adalah sebuah kegiatan dalam pengembangan perangkat lunak. Pada awalnya pengembangan perangkat lunak dilakukan secara serampangan. Tidak ada metodologi. Pokoknya asal jadi saja. Salah satu masalah yang muncul adalah ketidakjelasan versi yang digunakan. Misal, di sistem produksi ada masalah dengan perangkat lunaknya. Dia menggunakan versi 1.1. Sementara itu di bagian pengembangan, perangkat lunaknya sudah sampai ke versi 1.7. Agak sulit menentukan masalah karena ada perbedaan versi. Masalah lain juga dapat terjadi ketika terjadi upgrade. Misal, perangkat lunak dari versi 1.1 diperbaharui menjadi versi 1.3 kemudian diperbaharui lagi ke versi 1.7. Ternyata ada masalah di versi 1.7, maka perangkat lunak harus dikembalikan ke versi sebelumnya. Tanpa menggunakan versioning, ini akan sulit dilakukan.

Saat ini ada banyak sistem source code versioning ini. Yang paling terkenal saat ini adalah Git.

Mari kita sekarang membahas topik utamanya; hubungan antara code versioning ini dengan security. Dalam diskusi yang kami lakukan, kami belum menemukan hubungan atau alasan yang dapat diterima dengan mudah bahwa code versioning itu mendukung security. Yang kami temukan adalah alur seperti ini:

Pengembangan perangkat lunak sangat disarankan (harus?) menggunakan code versioning. Karena code versioning ini digunakan, maka hal-hal yang terkait dengan itu harus aman (secure). Kendali-kendali keamanan apa saja yang sudah diterapkan?

Itu yang baru dapat kami utarakan.

Iklan

Mengajar(i) Data Science

Kemarin (Senin) adalah sesi kedua dari acara “Data Science with Python”, yang kami adakan di Bandung Digital Valey (BDV). Pada acara ini kami mengajari penggunaan Python untuk Data Science.

Apa itu Data Science? Masih belum ada jawaban yang dianggap sebagai definisi formal dari “data science”. Definisi yang paling “dekat” dan yang paling banyak digunakan adalah penjelasan dari Drew Conway. Pada intinya Data Science adalah gabungan dari kemampuan komputasi (hacking skill), matematika (statistik), dan pemahaman atas masalah yang akan diteliti (domain problem).

Pada pertemuan pertama, Senin sebelumnya, kami melakukan persiapan-persiapan dahulu yaitu memasang Python beserta modul-modul (library) terkait. Ternyata ini tidak mudah karena ada banyak versi dan konfigurasi. Python sendiri ada versi 2 dan 3. Kali ini kami fokus ke versi 3 (meskipun saya pribadi masih banyak mengunakan versi 2). Sistem operasi yang digunakan peserta juga bervariasi; Mac OS X, Linux, dan Windows. Masing-masing juga konfigurasinya beda-beda. Jadi intinya adalah … pusing.

Selain tools, kami mulai menggunakan tools tersebut untuk melakukan sedikit operasi statistik, yaitu linear regression. Ini kemudian menjadi pekerjaan rumah karena waktunya yang tidak cukup.

Nah, kemarin topik ini dilanjutkan. Setelah membahas PR tentang linear regression, kami kemudian maju lagi ke topik baru. Kali ini yang kami lakukan adalah memproses data log dari web server dan mengambil data yang ada dalam request kepada web server tersebut. Data ini harus diproses (parsing) dan kemudian akhirnya dimasukkan ke Pandas, sebuah kumpulan tools Python untuk pemrosesan data.

Cerita teknisnya menyusul ya.

Cyber Intelligence Asia 2018

Hampir seminggu ini saya berada di Singapura. Acara utama yang saya kunjungi adalah Cyber Intelligence Asia 2018. (Kalau disingkat bisa jadi CIA 2018. CIA, biasanya di dunia security merupakan singkatan dari Confidentiality, Integrity, dan Availability. Jadi pas juga.) Cyber Intelligence Asia ini adalah acara tahunan yang lokasi penyelenggaraannya pindah-pindah. Kali ini di Singapura. Sayangnya belum pernah di Indonesia.

Topik yang dibahas di acara ini terkait dengan cyber security di negara atau organisasi masing-masing pembicara. Asyiknya adalah kita dapat membahas banyak hal secara terbuka, yang mana ini akan sulit jika dibahas tanpa tatap muka. Ada banyak “rahasia”. Kita dapat belajar bagaimana negara lain menangani kasus kejahatan ATM di negara mereka, misalnya. Atau bagaimana mereka mengembangkan framework cyber security di negara mereka.

IMG_20180322_083731 day2

Sudah beberapa acara CIA ini saya diminta untuk menjadi chairman-nya. Tugas saya adalah mengatur agar acaranya berjalan lancar; memastikan pembicara tidak melebihi waktunya, menyiapkan pertanyaan jika peserta tidak bertanya. Lumayan repotlah.

Topik acara kali ini cukup lumayan bagusnya. Sama seperti tahun-tahun sebelumnya. Sayangnya jumlah pesertanya kelihatannya menurun. Mungkin karena bersamaan dengan acara ini ada banyak acara cyber security lainnya di Singapura. Misalnya, Blackhat sedang berlangsung juga. Anyway, acara ini sukses.

IMG_20180322_143323_HDR 0001

Memperhatikan Lingkungan

Dalam sebuah wawancaa saya ditanya mengenai bagaimana cara saya mendapatkan ide-ide atau memprediksi sebuah teknologi atau kesempatan bisnis. Jawaban singkat saya adalah banyak membaca dan memperhatikan lingkungan.

Yang saya maksudkan banyak membaca adalah membaca apa saja. Untuk bidang teknologi saya sering membaca majalah IEEE dan mendengarkan ulasan teknologi di berbagai sumber berita. (Membaca di sini juga termasuk melihat dan mendengar.) Untuk yang melihat, saya jarang nonton TV Indonesia karena saya tidak mendapatkan nilai tambah. Coba sebutkan channel TV yang banyak membahas teknologi.

Untuk dunia bisnis saya senang menonton TV berita luar negeri. Biasanya sering sekali dibahas soal tenologi terbaru dan kemungkinan bisnisnya. Untuk bahan bacaan, lebih menarik membaca majalah bisnis ketimbang membaca koran Indonesia. Lagi-lagi, perhatikan koran Indonesia yang isinya berita negatif semua.

Ketika membaca, melihat, dan mendengar, saya mencoba memperhatikan ini utamanya. Kemudian saya mencoba mengarang, melihat jauh ke depan. Tidak perlu jauh-jauh melihatnya, melihat satu dua langkah ke depan saja. Ternyata kemampuan ini tidak banyak dilatih oleh banyak orang.

Perhatikan pengemudi atau pengendara motor di Indonesia ini. Kebanyakan – atau mungkin sebagian besar? – hanya melihat apa yang ada di depannya saja. Dia tidak mencoba melihat situasi di depan kendaraan yang ada di depan dia. Dengan kata lain, untuk melihat satu (atau dua ya?) langkah ke depan dia sudah tidak berminat. Maka kemampuan untuk memprediksi situasi di jalanpun rendah. Ketika kendaraan kita berhenti, maka klakson di belakang mulai berbunyi. Dia tidak melihat kenapa kita berhenti. Padahal di depan kita ada kendaraan lain yang juga berhenti. Dengan hanya sedikit usaha, dia bisa tahu. Analogi melihat ke depan dalam dunia teknologi dan bisnispun mirip seperti itu.

Nah, untuk saat ini saya melihat beberapa topik menarik seperti Blockchain, Internet of Things (IoT), dan Artificial Intelligence (AI) atau Machine Learning. Dari mana saya tahu ini? Ya dari banyak membaca dan memperhatikan lingkungan.

Memulai Perkuliahan Lagi

Hari ini sebetulnya sudah merupakan minggu kedua dari perkuliahan di ITB. Semester ini saya mengajar tiga (3) mata kuliah. Semuanya di bidang information security:

  • II3230 – Keamanan Informasi (Information Security)
  • EL5215 – Keamanan Perangkat Lunak (Software Security)
  • EL6115 – Secure Operation and Incident Handling

Ini potret yang saya ambil di kelas Keamanan Informasi minggu lalu.

ITB information security class 2018

Kelasnya dimulai pagi sekali, pukul 7 pagi. Ayo semangat! Semoga tetap bersemangat sampai akhir semester.

Tanpa KTP: mencari dompet ukuran A4

Kemarin siang saya mengunjungi salah satu grapari Telkomsel untuk membeli Kartu Halo. Setelah menunggu hampir 30 menit, akhirnya saya dilayani, Namun, akhirnya gagal untuk mendapatkan Kartu Halo-nya Telkomsel. Alasannya adalah saya tidak memiliki KTP.

Setahun yang lalu, KTP saya habis. Sementara itu eKTP saya tak kunjung datang meskipun saya sudah mendaftarkan diri tahunan yang lalu – di awal program eKTP. Alasannya adalah blankonya tidak ada. Lucu saja. Blanko kok tidak ada selama tahunan. Kalau disuruh mengadakan sendiri, beli sendiri blanko-nya pun saya mau kok. Akibatnya, saya sekarang tidak memiliki KTP. KTP saya digantikan dengan SUKET (Surat Keterangan). [saya juga baru tahu singkatannya adalah SUKET – ha ha ha.]

SUKET ini – seperti namanya – adalah surat dalam bentuk kertas A4. Saya belum tahu apakah ada orang yang kemana-mana membawa SUKET ini. Adakah dompet berukuran A4? ahahay. Walhasil, SUKET ini saya pindai (scan) dan hasil pemindaiannya ini yang ada di handphone saya. Ternyata waktu daftar di grapari Telkomsel itu foto SUKET di handphone saya tidak laku,

Di tengah kehebatan pemanfaatan teknologi informasi, pembuatan KTP saja negeri ini tidak mampu.

Suatu saat, saya diminta untuk menjadi salah satu anggota tim untuk membenahi eKTP. Saya ingin tertawa karena melihat ironinya. Lah, saya sendiri termasuk manusia SUKET. Ah, sudahlah.

Sementara itu saya akhirnya membeli kartu SIM dari operator lain yang tidak membutuhkan kehadiran SUKET fisik. Saya tidak menyalahkan operator, saya menyalahkan siapa ya? #korbaneKTP

Analogi Bitcoin

Sekarang Bitcoin sedang ramai diperbincangkan. Sebetulnya apa itu Bitcoin? Daripada menjelaskan tentang Bitcoin (atau cryptocurrency lainnya), lebih baik saya buat analoginya.

Katakanlah sekolah Anda ingin mengadakan acara bazaar. Di acara tersebut ada penjualan makanan dan minuman. Agar penjualan makanan dan minuman terkendali maka panitia membuat aturan bahwa pembelian makanan dan minuman dilakukan dengan menggunakan kupon. Kupon dijual dalam pecahan Rp. 20.000,-. Maka mulailah orang yang hadir di bazaar tersebut membeli kupon.

Untuk menghindari terjadinya fraud, penipuan, kupon palsu dan sejenisnya maka jumlah penjualan kupon dibatasi. Hanya ada 500 kupon yang tersedia.

Eh, ternyata makanan dan minuman yang ada di sana enak-enak. Maka orang mulai mencari kupon. Walah. Jumlah kupon yang tersedia ternyata terbatas. Maka mulailah kupon dicari. Tiba-tiba ada orang yang menjual kuponnya. Kupon yang harganya Rp. 20.000,- dijual seharga Rp. 25.000,-. Lumayan, untung Rp. 5.000,-. Malah ada orang yang menjual kupon itu dengan harga Rp. 30.000,-.

Begitu melihat kupon dapat dijual lebih mahal dari harga belinya maka orang mulai memperjualbelikan kupon. Kupon lebih dicari lagi. Harga makin naik lagi. Sekarang harga kupon menjadi Rp. 100.000,-. Wow!!

Lucunya, orang-orang tidak menggunakan kupon itu untuk membeli makanan. Justru jual beli kuponnya yang menjadi fokus kegiatannya.

Lantas bagaimana nasib penjual makanan dan minuman itu? Hmm … sebentar kita cek dulu. Ternyata jual beli makanan dilakukan dengan uang Rupiah saja karena daripada tidak ada yang beli dan kupon malah disimpan (dan diperjualbelikan) oleh orang-orang. Kupon tidak jadi solusi.

Bazaar akan selesai. Bagaimana nasib harga kupon setelah bazaar selesai? Anda tahu sendiri.

Update: yang ini belum tentu benar, tapi lucu saja. hi hi hi.

bitcoin-mania