if99.net

IF99 ITB

Setelah Pilkada DKI Berlalu

without comments

Pilkada putaran kedua di DKI Jakarta baru saja selesai. Kita pun sama-sama sudah mengetahui hasilnya. Melalui hasil hitung cepat, pasangan Anies Baswedan dan Sandiaga Uno berhasil mengalahkan pasangan petahana Basuki Tjahaya Purnama (Ahok) – Djarot Saiful Hidayat dengan angka yang cukup telak, yaitu 58% banding 42%. Hasil real count dari KPU tidak akan jauh berbeda dari hasil hitung cepat, yang ketika tulisan ini dibuat ternyata rekapitulasi hasilnya sudah diumumkan (Baca: Rekapitulasi Suara TPS di KPU DKI Jakarta Selesai, Ini Hasilnya).

Inilah Pilkada yang paling menegangkan dan paling panas dalam sejarah Pilkada. Pilkadanya di DKI Jakarta, tetapi menyedot perhatian seluruh rakyat Indonesia. Jadi, tidak heran ada yang mengatakan ini Pilkada rasa Pilpres.

Saya sebut Pilkada yang panas dan menegangkan karena Pilkada DKI melibatkan sisi emosional orang banyak. Sentimen SARA sudah mencuat jauh sebelum kampanye Pilkada dimulai. Faktornya adalah sang petahana, Ahok. Banyak orang menilai bahwa Ahok tidak disukai karena etnik dan agamanya. Betulkah begitu? Menurut saya penilaian itu tidak tepat. Orang Indonesia sudah terbiasa hidup berdampingan dengan etnik dan penganut agama yang berbeda. Tidak ada masalah yang serius. Seperti yang pernah saya nyatakan dalam tulisan sebelumnya, Ahok sebenarnya memiliki kinerja yang bagus, jadi seharusnya dia bisa memenangkan pertandingan ini apabila  didasarkan pada hasil kerja nyatanya. Komitmennya menegakkan pemerintahan yang bersih dan anti korupsi juga sangat diapresiasi. Bahkan, hasil-hasil survey juga menunjukkan bahwa warga Jakarta mayoritas puas dengan kinerjanya. Namun ternyata mereka tidak memilih Ahok. Apa sebabnya?

Rupanya, kinerja dan prestasi saja tidak cukup. Orang juga melihat dari sisi yang lain, yaitu attitude. Inilah yang kurang dimiliki Ahok. Ahok tidak bisa menjaga bicaranya. Dia berbicara apa saja, mengomentari hal-hal yang bukan wilayahnya, menunjukkan sikap dan perilaku yang kurang santun, yang mana bagi masyarakat timur sikap dan perilaku masih sangat dijunjung tinggi. Apalagi seorang gubernur tidak hanya pemimpin administrasi pemerintahan, tetapi juga pemberi keteladanan. Apalah artinya kinerja yang bagus namun tertutup oleh attitude yang kurang pas.

Perilaku Ahok yang tidak bisa menjaga bicaranya menimbulkan ketersinggungan, khususnya umat Islam. Puncaknya adalah kasus Al-Maidah 51 yang terkenal itu yang sama-sama kita ketahui masalahnya. Karena sudah masuk ke ranah agama, sesuatu yang sangat esensial dan primordial bagi orang  Indonesia, maka mau tidak mau Pilkada DKI akhirnya “menyeret” partisisipasi hampir seluruh bangsa Indonesia untuk ikut-ikutan berkomentar. Dari semula berkomentar berubah menjadi sikap pro dan kontra.  Bangsa ini akhirnya terbelah dua dalam menyikapi Ahok.  Akibatnya sungguh menyedihkan. Hubungan pertemanan menjadi rusak hanya gara-gara berbeda sikap dan pandangan tentang Ahok. Keharmonisan hubungan antra umat beragama menjadi terganggu. Bangsa Indonesia berada diambang perpecahan. Media sosial memiliki peran besar dalam polarisasi bangsa ini, karena posting-an tentang kubu-kubuan ini beredar dengan cepat dan masif secara personal. Berita fintah dan hoax berseliweran setiap waktu yang membuat kebatinan bangsa ini semakin panas dan tegang.

Sekarang pesta sudah usai. Ahok kalah. Kekalahan itu menurut para pengamat tidak hanya karena faktor sentimen SARA semata, tetapi juga akibat beberapa kejadian  menjelang hari pemungutan suara, yang membuat pemilih rasional mengalihkan suaranya ke pasangan lain. Tiga kejadian yang menonjol adalah, pertama pembagian sembako secara masif pada masa tenang kepada rakyat miskin, yang dinilai sebagai bentuk politik uang dan dianggap menciderai demokrasi yang bersih. Kedua adalah konten video kampanye Ahok-Djarot yang memberi stigma negatif kepada kaum pribumi dan umat Islam. Ketiga adalah kasus penghinaan Steven kepada Gubernur NTB di Bandara Changi, Singapura. Ketiga kejadian ini beredar dengan cepat dan deras melalui media sosial, akibatnya sungguh tak terduga, pemilih rasional menjauhi Ahok.

Syukurlah Ahok menerima kekalahan itu dengan lapang dada. Media sosial pun tiba-tiba berubah menjadi sejuk dan lebih tenang. Suasana panas berubah menjadi dingin. Ada “untungnya” juga Anies-Sandi yang menang, sebab jika Ahok yang menang maka saya khawatir polarisasi bangsa ini akan terus berlanjut hingga Pilpres 2019 dan sesudahnya. Rupanya Tuhan bekerja dengan cara-Nya sendiri sehingga bangsa Indonesia luput dari perpecahan yang mengancam.

Sekarang yang  diperlukan adalah rekonsiliasi bangsa Indonesia yang terpecah akibat Pilkada DKI.  Sudahi permusuhan dan penebaran kebencian kepada masing-masing kelompok. Tidak ada gunanya.  Kita ini bangsa yang satu, yaitu Bangsa Indonesia.


Written by rinaldimunir

April 21st, 2017 at 1:56 pm

Posted in Indonesiaku

Kesabaran Merawat Ibu yang Terkena Stroke

without comments

Dulu saya pernah menulis tentang kesabaran anak yang diuji dengan merawat orangtuanya yang sakit-sakitan di akhir hayatnya (Baca: “Ujian” dari Orangtua pada Saat Akhir Hayat). Kali ini saya menemukan kisah yang serupa lagi, yang dialami oleh tukang ojek langganan anak saya.

Saya punya ojek langganan yang khusus untuk mengantar jemput anak saya ke sekolah. Saya memanggilnya Kang Agus. Sudah hampir empat tahun saya berlangganan ojek dengannya. Dia mempunyai seorang istri tapi belum dikarunia anak.  Selain menjadi tukang ojek, dia juga berjualan kaos kaki di dekat sebuah sekolah. Penghasilannya tidak seberapa, baik menjadi tukang ojek maupun berjualan kaos kaki.

Sekarang menjadi tukang ojek sudah mulai dikuranginya, pasalnya ibunya terbaring sakit di rumah setelah mendapat serangan stroke tiga tahun lalu. Ibunya sejak lama tinggal seorang diri setelah berpisah dengan suaminya. Serangan stroke membuat ibunya lumpuh. Tidak bisa berjalan, tidak bisa duduk sendiri, dan bicara pun sudah kurang jelas. Sejak ibunya terkena stroke, Kang Agus pun pindah ke rumah ibunya demi bisa merawat ibunya yang sudah tidak bisa apa-apa. Ibunda Kang Agus benar-benar bergantung pada orang lain.

Sebenarnya Kang Agus punya dua orang saudara perempuan, sudah menikah, dan hidup terpisah, tetapi kedua suadaranya ini tidak mau merawat ibunya. Praktis hanya Kang Agus sendiri, dibantu istrinya, yang merawat ibunya setiap hari.

Karena sudah tidak bisa apa-apa (lumpuh sebelah), maka ibunya hanya berada di atas kasur dari pagi sampai malam hingga pagi lagi. Semua aktivitasnya hanya di atas kasur, baik makan, buang air besar, pipis, dan lain-lain. Satu-satunya aktivitas untuk mengusir rasa jenuh adalah membaca yasinan setiap hari.

Istri Kang Agus bekerja di rumah saya sebagai asisten rumah tangga. Rutinitas yang dilakukan mereka berdua setiap hari kepada ibunda dimulai sejak subuh. Setelah sholat subuh, ibunda dimandikan (digendong ke kamar mandi). Setelah dipakaikan pampers dan pakaian, selanjutnya ibunda digendong lagi ke atas kasur. Sarapan pagi pun disiapkan untuk sang ibu sebelum mereka berdua berangkat kerja. Jam setengah tujuh pagi Kang Agus sudah datang ke rumah saya untuk mengantar anak sulung ke sekolah. Istrinya baru datang ke rumah saya pukul delapan setelah selesai membereskan rumah mertua dan memasak untuk makan siang.

Ibunda Kang Agus ditinggalkan seorang diri di rumah dalam posisi duduk di atas kasur. Untuk merebahkan tubuhnya ke kasur tidak bisa dilakukan sendiri, harus dibantu. Kadang-kadang karena mengantuk setelah membaca yasinan, sang ibu rebah tertidur begitu saja di atas kasur, namun untuk bangkit duduk lagi tidak bisa dilakukannya karena syaraf di punggung sudah lumpuh. Harus menunggu anak atau menantunya pulang agar ia bisa duduk lagi.

Setelah mengantar anak saya ke sekolah, Kang Agus balik ke rumahnya sebentar untuk melihat kondisi ibunya, lalu keluar rumah lagi untuk berjualan kaos kaki. Jam satu siang istrinya pulang ke rumah sebentar untuk memberi makan ibunya, membersihkan pipis dan BAB di dalam pampers (sang ibu dipakaikan pampers karena untuk pipis dan buang air besar hanya bisa di atas kasur), lalu kembali lagi ke rumah saya melanjutkan pekerjaan yang tertunda. Kang Agus menjemput anak saya dari sekolah pukul empat sore, lalu kembali ke rumah ibunya.

Begitulah rutinitas yang dilakukan Kang Agus setiap hari, diantara memikirkan nafkah dan merawat ibunya. Dapatkah kau mengerti ujian kesabaran yang dihadapinya. Jarang ada orang yang bisa tahan mengurus orangtuanya yang sakit-sakitan dan tidak berdaya lagi di atas kasur.  Siapa anak dan menantu yang dengan penuh kesabaran dan ketelatenan membersihkan kotoran ibunya, melap badannya, menceboki pantat dan membersihkan pipisnya? Semua itu dilakukan setiap hari, setiap minggu, setiap bulan, dan setiap tahun, dan dilakukan berdua.  Sungguh sebuah kesabaran dan pengorbanan yang tiada batasnya.

Minggu lalu saya menjenguk ke rumah Kang Agus karena sudah beberapa hari Kang Agus tidak bisa mengantar jemput anak saya ke sekolah. Rupanya Kang Agus sakit diabetes (turunan dari ibunya) sehingga hanya bisa di rumah saja. Dalam keadaan sakit pun kang Agus tetap merawat ibunya dengan setia.  Saya yang datang ke rumah itu melihat sendiri kondisi ibunya yang di atas kasur. Memang menyedihkan, ibu yang sudah tua, kesepian setiap hari, tidak punya teman bicara ketika anak dan menantunya pergi bekerja, dan hanya bisa duduk berjam-jam di atas kasur dari pagi sampai malam.

Saya hanya bisa membesarkan hati Kang Agus dan menyatakan bahwa yang dilakukannya kepada ibunya adalah amal sholeh sebagai bakti anak kepada orangtuanya. Insya Allah amalan sholeh itu akan dibalas oleh Allah SWT dengan pahala yang berlipat ganda. Mungkin sekali-sekali pernah terbersit perasaaan bosan dan jengkel menghadapi ibunya, itu manusiawi, namun Kang Agus tetaplah melakoninya dengan sabar.

Saya mendapat pelajaran berharga dari Kang Agus tentang kesabaran yang luar biasa.


Written by rinaldimunir

April 18th, 2017 at 11:34 am

Selipkan Sedikit Uang dan Kartu ATM di dalam Tasmu

without comments

Teman saya mendapat pengalaman yang dapat menjadi pelajaran  bagi kita kalau bepergian. Dia mendarat di Bandara Husein Sastranegara Bandung karena baru tiba dari Lampung. Setelah keluar dari Bandara dan mau pulang, dia merogoh sakunya, ternyata dia barus tersadar kalau dompetnya ketinggalan di wisma di Lampung.  Masalahnya dia sama sekali tidak mempunyai uang seperserpun untuk naik taksi atau sekedar naik angkot. Mau ambil uang di ATM tetapi kartu ATM berada di dalam dompet yang ketinggalan itu.

Lalu dia coba mengobok-ngobok isi tas ranselnya, mencari-cari siapa tahu ada terselip uang receh. Alhamdulillah, ternyata ada satu lembar uang 2000-an dan satu uang logam seribuan. Lumayan cukup untuk naik angkot dari Bandara sampai ke jalan terdekat ke kampus ITB, nanti bisa disambung jalan kaki. Setiba di kampus dia bisa pinjam uang temannya untuk pulang ke rumah.

Saya sendiri kalau bepergian ke luar kota selalu menerapkan pepatah yang mengatakan “jangan taruh semua telur di dalam satu keranjang”. Jika keranjang jatuh, maka semua telur pecah. Saya sering merasa khawatir kalau sedang bepergian  lalu dompet saya hilang, dicopet, atau ketinggalan, padahal semua uang dan kartu ATM ada di dompet tersebut. Bayangkan kalau kita berada di suatu tempat dimana kita tidak mengenal satu orangpun. Kalau dompet hilang, kemana kita mencari pinjaman uang sekedar untuk naik taksi atau makan? Oke, bisa saja kita minta tolong istri kita atau saudara kita untuk mentransfer uang ke rekening kita, tapi masalahnya kita tidak bisa mengambilnya di mesin ATM karena kartu ATM pun hilang. Mau ambil di bank, kita tidak membawa buku tabungan.

Maka, biasanya saya menaruh beberapa kartu ATM di dalam tas. Saya punya tiga kartu ATM dari bank berbeda. Satu kartu saya taruh di dalam dompet, satu kartu lagi di dalam tas ransel, dan satu kartu lagi di tempat lainnya (misalnya saku celana). Kadang-kadang sedikit uang juga saya taruh di dalam tas untuk berjaga-jaga. Jadi, jika saya kehilangan dompet, maka saya tidak terlalu khawatir menjadi orang yang paling bingung di dunia, karena ada cadangan kartu ATM lain di dalam tas atau saku celana.

Biasanya di dalam dompet kita juga menyimpan kartu-kartu lain seperti KTP, SIM, STNK, kartu kredit dan macam-macam kartu yang lain. Maka, untuk meminimalkan kehilangan, kartu-kartu yang tidak penting dibawa (karena tidak dibutuhkan) saya tinggalkan di rumah. Biasanya SIM, STNK, kartu asuransi kesehatan, dan kartu NPWP yang saya tinggal di rumah.

Kebiasaan “jangan menaruh semua telur di dalam satu keranjang” saya terapkan juga kepada anak saya. Uang jajan anak saya (atau uang  keperluan lainnya) tidak semuanya saya masukkan ke dalam dompet atau saku celananya, tetapi sebagian saya taruh di dalam tasnya. Jadi, jika dia mau naik angkot atau ojek dan dompetnya ketinggalan di rumah, maka masih ada sedikit uang di dalam tas untuk membayar angkot atau ojek. Malang sekali kan jika turun dari angkot ternyata tidak bisa membayar sama sekali berhubung dompet ketinggalan. Bisa-bisa anak kita dimaki-maki supir angkot atau dituduh menipu.


Written by rinaldimunir

April 12th, 2017 at 3:25 pm

Posted in Gado-gado

Tanah yang Tak Kulupa

without comments

Sebagai orang rantau, kerinduan apakah yang selalu membayang di dalam pikiran? Tentu saja tanah kampung halaman. Apalagi jika di tanah itu anda pernah dilahirkan, dibesarkan, lalu ketika beranjak dewasa meninggalkannya. Jika masih punya orangtua di sana, maka keinginan untuk pulang selalu ada. Tapi jika sudah tidak punya orangtua lagi, dua-duanya sudah almarhum, maka apakah tanah kampung halaman itu akan dilupakan?

Jawabnya tidak, teutama bagi saya sendiri. Meskipun kedua orang ibu-bapa saya sudah meninggalkan dunia fana ini, tetapi keinginan untuk selalu pulang selalu tetap ada. Minimal menengok rumah warisan orangtua, tempat di mana saya dulu dilahirkan dan dibesarkan dengan kasih sayang.

Setiap kali meninggalkan kota Padang menggunakan pesawat, saya selalu mengambil duduk pada sisi pesawat sebelah kiri. Tujuannya satu: menatap dari atas udara tanah kota yang telah membesarkan saya. Kota ini berhalaman lautan yang terbantang luas di sebelah barat, yaitu Samudera Hindia. Kawasan pinggiran pantai sangat padat dengan pemukiman, gedung-gedung, dan perkantoran. Dari udara semua pemandangan itu terlihat dengan jelas selepas pesawat take-off dari Bandara Minangkabau.

padang2

Lihatlah daratan bagian bawah, tampaklah tanah yang berbentuk kepala burung. Diujungnya teronggok Gunung Padang yang seakan duduk termenung di pinggir laut. Tanah yang berbentuk kepala dan badan burung itu adalah bagian dari perbukitan yang berhadapan dengan Samudera Hindia. Sebuah sungai yang bernama Batang Arau memisahkan kawasan perbukitan dengan dataran kota. Ujung sungai itu bernama Muara. Di sepanjang sungai itulah terletak kaweasan kota lama yang dibangun sejak zaman Hindia-Belanda.

padang1

Terus mengarahkan pandangan menyusuri perbukitan itu ke arah tenggara, maka sampailah ke kompleks pemakaman orang kampung saya. Di sanalah, di atas tanah bukit yang curam, terletak makam ibu dan ayah saya.  Tidak tampak dari atas pesawat, tapi saya bisa membayangkannya dari atas pesawat dengan perasaan sedih. Semoga Allah SWT menerima amal sholehmu wahai ayah dan ibu, dan menempatkamu di tempat yang layak di sisi-Nya, amin.

Lamat-lamat pesawat semakin menjauh dari tanah kota Padang, terbang ke selatan menuju tanah Jawa. Tanah yang telah memberikan kenangan kepada saya pun hilang dari pandangan. Tanah itu tidak akan pernah kulupa.


Written by rinaldimunir

April 10th, 2017 at 4:22 pm

Obrolan dengan Supir Go-Jek Sepanjang Jalan

without comments

Akhir-akhir ini saya jadi sering menggunakan Go-Jek dari rumah ke Bandara Husein Sastranegara, Bandung. Biasanya saya naik taksi dari rumah, atau bawa motor lalu dititip parkir di Bandara selama semalam dua malam, tapi saya merasa lebih praktis naik ojek saja.

Nah, naik ojek pangkalan atau naik ojek berbasis aplikasi semacam Go-Jek? Dua-duanya saya gunakan, tapi kalau ke Bandara saya pilih naik Go-jek saja.  Go-Jek bisa dipesan dari rumah melalui aplikasinya, lima menit kemudian supir Go-Jek nya datang.  Praktis dan lebih murah. Namun saya tetap menghargai ojek pangkalan, kalau untuk jarak dekat ya saya naik ojek biasa.

Saya ini orang yang tipenya suka mengajak ngobrol supir Go-Jek sepanjang perjalanan. Tidak hanya supir Go-Jek saja, tapi saya juga suka mengajak ngobrol supir angkot, supir taksi, atau supir travel. Kebetulan saja saya mendapat supir-supir Go-Jek yang ramah dan mau diajak bercerita. Saya suka menanyakan pengalaman mereka selama menjadi supir Go-Jek. Naluri jurnalistik saya muncul begitu saja, siapa tahu ada bahan untuk tulisan, he..he. Sambil mendengarkan mereka bercerita, saya menyelami kehidupan mereka. Banyak saja cerita yang dapat dijadikan pelajaran hidup dan sumber inspirasi. Sambil ngobrol mereka tetap awas menjalankan motornya.

~~~~~~~~~~~~~~~~~~~~~~~~~~

Cerita Supir Go-Jek 1

Saya naik Go-Jek dari rumah di Antapani ke Bandara Husein S. Tarifnya terpampang di layar aplikasi cuma 24 ribu saja. Sebagai perbandingan, jika memakai taksi dari rumah saya minimal 50 ribu rupiah. Sepanjang perjalanan supir gojeknya enak diajak mengobrol.  Saya tanya-tanyalah dia, berapa dapat penghasilan dari bonus go-ride, go-food, go-mart, dan aneka go lainnya.  Setiap hari dia mendapat bonus minimal 20 poin, itu setara 100 ribu rupiah, minimal lho itu.  Bonus uang itu ditransfer ke rekeningnya setiap hari. Sebulan berarti minimal tiga juta rupiah. Itu belum termasuk bayaran cash dan bonus lebih bayar dari penumpang.

Jam kerjanya fleksibel, Go-Jek ini cuma kerja tambahan saja.  Dia hanya Go-Jek dari pagi sampai pukul 9.00, lalu sesudah itu dia bekerja mengantar surat tagihan kartu kredit dari berbagai bank ke alamat nasabah. Tugas mengantar tagihan kartu kredit sampai jam 15.00, sesudah itu dia kembali nge-gojek lagi sampai jam 10 malam. Kalau surat tagihan yang diantar tidak banyak, dia nge-go-jek lagi, tidak harus dari jam 15.00.

Dengan penghasilan meng-gojek saja minimal mendapat penghasilan per bulan minimal tiga juta diluar cash dan bonus penumpang. Itu penghasilan di atas UMK. Jika ditambah dengan penghasilan mengantarkan surat tagihan kartu kredit dari bank tentu lebih besar lagi. Makanya banyak orang yang keluar dari pekerjaan formalnya dan beralih menjadi supir Go-Jek karena terbayang penghaislan yang menggiurkan.

Tapi supir Go-Jek di Bandung masih belum berani show of force menampakkan diri dengan seragam Go-Jek serta helm hijaunya itu seperti yang kita lihat di Jakarta atau di kota lain. Mereka masih melapisi seragam Go-Jek dengan jaket penutup agar tidak terlihat oleh supir ojek pangkalan, yang masih menolak kehadiran Go-Jek. Itu cara supir Go-Jek di Bandung menyamar. Namun sekarang kondisinya sedikit lebih lunak. Supir Go-Jek boleh mengantarkan penumpang ke daerah yang dikuasai ojek pangkalan, tapi mereka terlarang menarik penumpang baru dari daerah itu. Itu win-win solution dengan supir ojek pangkalan, demikian cerita supir Go-Jek tadi.

Tidak terasa sampailah saya di Bandara Husein, hendak terbang ke Lampung mengajar di ITERA. Supir Go-Jek menurunkan saya di dekat pangkalan taksi bandara. Ongkos Go-Jek 24 ribu saya lebihkan, bonus buat supir Go-Jek itu, serta memberi nilai bintang  5  di aplikasi Go-Jek.

Olala, saya lupa mengambil foto supir Go-Jek tadi agar tidak dibilang “no pic = hoax“. He..he..

 

Cerita Supir Gojek 2

Kali ini saya ke bandara Husein lagi dengan Go-Jek. Supir gojek yang membawa saya sungguh keren pengalaman hidupnya. Inspiratif. Namanya Pak Saiful, orang Madura. Dia bukan supir Go-Jek dengan pengalaman hidup biasa-biasa saja, tapi luar biasa. Selama bertahun-tahun sebelum menjadi supir Go-Jek, Pak Saiful  telah melanglangbuana di berbagai negara bekerja sebagai sarjana teknik mesin. Pak Saiful pernah bekerja di Belanda, Belgia, Australia, dan terakhir di Arab Saudi sebelum akhirnya pulang ke tanah air.

Putra Pak Saiful adalah lulusan S2 bidang komputer di Korea dan sekarang bekerja di empat perusahaan masakapai asing sebagai ahli IT. Meskipun sudah mencapai gelar Master, Pak Saiful tetap mendorong anaknya untuk meneruskan S3 ke luar negeri. Putranya itu sebenarnya sudah diterima S3 di  Jepang tapi tidak jadi diambilnya karena memakai program ikatan dinas dan setelah lulus harus bekerja selama 10 tahun di sana. Mungkin S3 di Jerman saja, katanya. Keren ya…

Sekarang sesudah pensiun pak Saiful sekali-sekali masih menjadi konsultan permesinan, minggu lalu baru pulang proyek di Kendari. Lha, udah hidup mapan begini kok masih mau kerja Go-Jek, Pak, tanya saya. He…he, ternyata me-gojek itu buat mengusir rasa jenuh saja karena sehari-hari dia di depan komputer memantau pekerjaan.

Pak Saiful juga bercerita tentang kucing-kucingan supir Go-Jek menghindari bentrokan dengan ojek pangkalan. Meski tidak memakai atribut Go-Jek, tapi supir ojek pangkalan mampu mendeteksi supir Go-Jek yang masuk kawasannya. Antapani yang padat berbagai kompleks perumahan itu sebenarnya pasar basah Go-Jek, namun supir Go-Jek sering takut masuk Antapani.

Setelah sampai di Bandara Husein, saya minta mengambil gambarnya buat berbagi cerita yang menarik ini. Ini Pak Saiful, tidak memakai seragam Go-Jek, seperti halnya supir Go-Jek lain di Bandung.

gojek

Hmmmm…saya membayangkan masa pensiun yang indah seperti Pak Saiful ini, yang telah berhasil mendidik anak-anaknya ke jenjang pendidikan yang tinggi. Semoga tetap sehat terus, Pak…


Written by rinaldimunir

April 6th, 2017 at 4:31 pm

Posted in Kisah Hikmah

Array of middle eastern restaurants in front of Sultan Mosque…

without comments

Array of middle eastern restaurants in front of Sultan Mosque Singapore. #singapore #sunset #maghrib #tourist (at Masjid Sultan) via http://ift.tt/2oxMgBl

Written by Veriyanta Kusuma

April 4th, 2017 at 9:42 pm

Posted in Uncategorized

Rumah di Pinggir Lapangan

without comments

Saya merasa beruntung sekali membeli rumah yang terletak di pinggir lapangan (ruang terbuka hijau atau RTH). Di sekeliling lapangan itu tumbuh pohon-pohon besar. Ketika siang hari yang panas, angin semilir berhembus dari pohon-pohon itu, membawa kesejukan dan rasa adem. Burung-burung beterbangan di sekitar pohon, dan suara serangga tonggeret yang sedang musim kawin riuh rendah terdengar hingga ke depan rumah.

Namun yang lebih menyenangkan lagi karena  rumah persis di depan lapangan (dipisahkan oleh jalan), maka kami tidak punya tetangga di depan rumah. Oleh karena itu ruang bermain anak menjadi lebih luas selain lapangan itu juga dapat dijadikan warga untuk aneka aktivitas, seperti main layang-layang, main bola, atau tempat duduk-duduk warga pada sore hari.

rumah1

Halaman rumah kala hujan, dengan ruang terbuka hijau (lapangan) tampak dari depan rumah

Namun, yang lebih penting dari semua itu adalah ruang terbuka yang luas untuk anak saya yang sulung. Saya diamanahi oleh Allah SWT anak berkebutuhan khusus (ABK). Keberadaan ABK tentu dapat membuat tetangga merasa agak kurang nyaman karena suara dan aktivitas anak saya yang mungkin dapat membuat orang lain terganggu.  Dengan tidak adanya tetangga di depan rumah, maka tentu berkurang rasa khawatir jika tetangga kami merasa kurang nyaman.

Ruang terbuka hijau itu dulunya milik Perumnas, maklum rumah saya termasuk di daerah Perumnas. Di sekeliling lapangan dimanfaatkan warga yang rumahnya di pinggir lapagan untuk bergai keperluan. Ada yang membangun garasi buat mobil, ada yang menjadikannya kebun, dan lain-lain. Saya sendiri memanfaatkan lahan di pinggir lapangan di depan rumah menjadi taman dan kebun kecil untuk menanam bunga serta beberapa tumbuhan lain. Selama ini tidak ada larangan untuk memanfaatkan lahan di pinggir lapangan tersebut asalkan bukan bangunan permanen. Daripada menjadi semak-semak dan tempat bersarang nyamuk, maka lebih baik dimanfaatkan. Tapi jika sewaktu-waktu mau di-revitalisasi oleh Pemerintah Kota, maka siap-siap saja semua yang sudah ditanam atau dibangun di sana harus rela dibongkar.

rumah2

Lahan di pinggir lapangan di seberang rumah saya jadkan taman dan kebun

Saya sering duduk sendirian di depan rumah memandang taman rimbun dan lapangan itu. Seringkali saya berpikir, mungkin mendapat rumah ini sudah menjadi suratan Tuhan, sudah diatur oleh Tuhan saya mempunyai rumah di sini. Dengan kondisi anak saya yang ABK, rupanya Tuhan memilihkan saya rumah di sini. Membeli rumah itu kata orang seperti mencari jodoh. Kalau mendapat yang pas, maka kita pun mencintainya. Itu tandanya saya berjodoh dengan rumah ini.

~~~~~~~~~

Saya melempar kembali ingatan ke masa lalu  kisah mendapatkan rumah  yang saya tempati sekarang. Setelah saya menikah, saya menjadi seorang kontraktor. Maksudnya saya selalu mengontrak rumah karena belum mampu membeli rumah sendiri. Saya sudah tiga kali mengontrak rumah, selalu berpindah-pindah ke rumah kontrakan, tapi masih dalam satu kawasan. Satu per satu anak saya lahir dan rumah kontrakan mulai terasa sempit. Bosan sering pindah rumah terus, mengangkut barang-barang itu lho, sungguh merepotkan.

Sebagai orang yang selalu hidup hemat, saya rajin menabung. Setiap dapat penghasilan, saya selalu menabungnya. Kebetulan saya bukan orang yang suka royal, tidak suka menonton bioskop, tidak suka ke mal, tidak merokok, jadi memang penghasilan sebagai dosen dan penulis hanya untuk makan, transportasi, dan kebutuhan rumah tangga saja.

Setiap hari libur saya sering membawa anak-anak yang masih kecil itu jalan-jalan ke kompleks perumahan. Jalan kaki saja. Ada satu rumah yang saya sering lewati. Rumah itu kosong, halamannya cukup luas, namun saya belum terpikir untuk memilikinya. Tabungan saya juga belum cukup. Lagipula, tidak ada tanda-tanda rumah itu mau dijual.

Setiap kali jalan-jalan membawa anak keliling-keliling, saya selalu melewati rumah itu lagi. Suatu hari ada tulisan RUMAH INI DIJUAL. HUBUNGI NOMOR (nomor telpon pemilik). Iseng-iseng saya hubungi nomor yang bersangkutan. Disambut. Lalu saya tanyakan harga rumahnya. Dia menyebutkan sebuah harga. Oh, saya tidak memiliki uang sebanyak yang dia minta. Kemudian saya tawar, apakah bisa sekian harganya. Pemiliknya ternyata menyarankan untuk janjian ketemu di rumah tersebut.

Pada hari yang dijanjikan, kami bertemu dengan pemilik rumah. Saya membawa anak yang masih kecil-kecil. Melihat anak-anak saya itu, pemilik itu merasa simpati. Dia minta sebuah harga yang bulat, sedikit lebih rendah dari yang dia tawarkan, sementara untuk biaya balik nama, pajak, dan biaya notaris ditanggung berdua (saya dan pemilik rumah). Akhirnya deal. Setelah melalui proses di  notaris selama sebulan, rumah tersebut akhirnya menjadi milik saya. Saya seperti hampir tidak percaya bisa memiliki rumah sendiri. Uang yang saya tabung selama bertahun-tahun sejak saya belum menikah, sedikit demi sedikit, akhirnya membuahkan sebuah rumah.

Rumah itu memiliki nomor yang bagus, yaitu nomor sembilan, meskipun saya tidak  percaya soal angka keberuntungan. Airnya dari PDAM, selalu lancar dan bersih. Rumah-rumah yang terletak di jalan lain di seberang lapangan seringkali kekurangan air, maka air di rumah saya selalu mengalir. Kami tidak pernah kekurangan air.  Alhamdulillah. Saya ingat pesan orangtua jika membeli rumah: perhatikan apakah airnya lancar. Itu nomor satu. Nomor dua adalah lingkungan. Lingkungan di sekitar rumah saya yang asri, sejuk, segar, lapang, hijau, dan tetangga yang baik adalah nilai tambah lainnya, sebagaimana yang saya ceritakan di atas.

Setelah merenung-renung kembali, makasaya pun mulai mengerti, inilah rumah yang dipilihkan Allah SWT untuk kami. Rahasia Allah kita tidak pernah tahu.


Written by rinaldimunir

April 3rd, 2017 at 5:16 pm

Posted in Pengalamanku

I would consider this as a full breakfast, but many others say…

without comments

I would consider this as a full breakfast, but many others say this is snack. Kerak telor: egg-rice pancake served with coconut shred. #food #tangerang #jakarta (at Kuliner pasar lama Tangerang) via http://ift.tt/2ntcz6R

Written by Veriyanta Kusuma

April 2nd, 2017 at 5:30 pm

Posted in Uncategorized

Almost sunset. Thanks to window cleaners, this picture was taken…

without comments

Almost sunset. Thanks to window cleaners, this picture was taken behind a clear glass. #sunset #jakarta #cloudy (at Indosat Ooredoo Head Office) via http://ift.tt/2nv8ZN2

Written by Veriyanta Kusuma

March 24th, 2017 at 8:05 pm

Posted in Uncategorized

Membuat file dengan SHA1 collision

without comments

Sejumlah ilmuwan dengan didukung kekuatan komputasi Google berhasil melakukan serangan SHA1 collision terhadap dokumen PDF. Mereka menciptakan dua file PDF dengan nilai SHA1 hash yang identik walaupun isi filenya berbeda.

shattered-1.pdf dan shattered-2.pdf memiliki SHA1 yang sama

Lalu kenapa kalau ada 2 file SHA1-nya sama?

Hash seperti MD5 atau SHA1 sering digunakan sebagai fingerprint untuk mengidentifikasi sebuah file. Mirip seperti sidik jari kita yang karena keunikannya bisa digunakan untuk mengidentifikasi seseorang dengan tepat. Bayangkan bila ada 2 orang yang sidik jarinya sama, tentu akan berbahaya dampaknya kalau sampai tertukar identitasnya. Masih banyak bahaya lain dari hash collision, silakan baca tulisan saya sebelumnya tentang bahaya memakai MD5.

Salah satu bahaya dari collision untuk PDF adalah pemalsuan dokumen, dengan kata lain akan mudah memalsukan dokumen PDF walaupun sudah dilindungi dengan tandatangan digital. Dokumen penting seperti perjanjian bisnis, surat kontrak, akta jual beli, sangat rawan untuk dipalsukan.

Bisakah collision SHA1 dilakukan untuk file selain PDF? Tentu bisa, dalam tulisan ini saya akan menunjukkan cara membuat SHA1 collision untuk file PHP dan HTML/Javascript. Mari kita mulai dengan memahami cara kerja SHA1.

Cara kerja SHA1

SHA1 mengubah input data sepanjang berapapun, menjadi string singkat dan padat sebesar 20 bytes (40 byte dalam hexstring). Bagaimana caranya?

Seperti kita makan, kalau makanannya sangat besar tentu sulit untuk menelan sekaligus semuanya, makanya biasanya kita memotong-motong makanan jadi potongan kecil-kecil yang cukup untuk masuk ke mulut. Begitu pula dengan SHA1, dia bekerja dengan memotong input dalam blok-blok berukuran 64 byte dan memprosesnya satu per satu dari blok pertama sampai blok terakhir.

contoh sha1 memproses 3 blok input

SHA1 menggunakan compression function, yang menerima 2 input yaitu 20 byte hash awal (input hash) dan 64 byte blok data untuk menghasilkan 20 byte hash keluaran (output hash). Karena fungsi ini menerima hash dan menghasilkan hash juga, maka hash keluaran dari fungsi ini bisa dipakai sebagai hash masukan untuk memanggil fungsi ini lagi untuk blok berikutnya.

Khusus untuk blok pertama, karena tidak ada blok sebelumnya, maka perlu ada nilai hash awal (initial hash) yang sudah ditetapkan yaitu 0x67452301EFCDAB8998BADCFE10325476C3D2E1F0. Jadi semua SHA1 untuk input data apapun selalu berawal dari nilai hash yang sama, kemudian untuk setiap blok, hash awal ini berevolusi menjadi hash yang berbeda. Hash yang dikeluarkan dari blok terakhir menjadi nilai hash final dari keseluruhan input data.

Analisa shattered-1.pdf dan shattered-2.pdf

Mari kita bandingkan shattered-1.pdf dan shattered-2.pdf. Ternyata perbedaannya hanya dari offset 192 ke 320 (128 bytes), sedangkan di luar range tersebut isinya sama.

vimdiff shattered PDF

Karena SHA1 bekerja menggunakan block berukuran 64 byte, maka bisa kita lihat 2 file tersebut diawali dengan prefix yang sama sebesar 3 blok (common prefix), diikuti dengan 2 blok yang berbeda ( collision block), kemudian setelah itu diikuti dengan byte yang sama sampai akhir file.

shattered PDF structure

Kalau dilihat lebih detil lagi sebenarnya dalam collision block tidak semua byte berbeda, hanya 62 byte saja yang benar-benar berbeda. Perbedaan byte-byte pada posisi tertentu tersebut, terkait dengan format PDF dan sudah diatur sedemikian rupa sehingga bisa menghasilkan gambar yang berbeda ketika dilihat dengan PDF viewer.

byte differences

Dengan implementasi sha-1 yang dimodifikasi, kita bisa melihat intermediate hash yang dihasilkan setiap blok. Mari kita lihat hash yang dihasilkan oleh 5 blok pertama dari shattered-1.pdf dan shattered-2.pdf pada gambar di bawah ini.

intermediate hashes

Dari 5 blok pertama shattered-1 dan shattered-2, perbedaan hanya ada pada blok ke-4 dan blok ke-5, blok ke-1 hingga ke-3 sama persis (common prefix) sehingga bisa kita lihat 3 hash pertama yang dihasilkan juga sama. Hash yang dihasilkan dari 3 blok common prefix ini adalah 0x4ea9…bf45. Kita bisa melanjutkan rangkaian rantai compression function ini dengan blok ke-4 dan ke-5 (collision block).

first 3 hashes

Selanjutnya hash dari common prefix, 0x4ea9…bf45, akan menjadi input untuk memproses blok-4. Karena isi blok-4 berbeda, maka kedua file menghasilkan 2 hash yang berbeda. Menariknya perbedaan tersebut hanya 6 byte saja.

Selanjutnya, 2 hash yang berbeda (keluaran dari blok-4) menjadi input untuk memproses blok-5. Ada yang ajaib disini, kedua file menghasilkan hash yang sama walaupun input hash dan isi blok ke-5 kedua file tersebut tidak sama. Perhatikan ilustrasi di bawah ini, perbedaan dimulai dari blok-4 namun blok-5 menyatukan perbedaan itu seolah tidak ada yang berbeda dari kedua file karena hash untuk 5 blok pertama keduanya sama, 1eac…8ac5.

collision blocks

Membuat collision SHA1 untuk file PHP

Mari kita mulai membuat 2 file PHP yang isinya berbeda dan melakukan hal yang berbeda (good.php dan evil.php), namun SHA1 dari kedua file tersebut sama. Bagaimana caranya? Apakah perlu super komputer? Tidak perlu, kita hanya perlu mengeksploitasi cara kerja SHA1 yang memproses hash blok demi blok.

Ingat bahwa hash keluaran dari blok ke-5 kedua file tersebut sama. Karena output hash dari blok ke-5 akan menjadi input hash untuk memproses blok ke-6, maka bila isi blok ke-6 kedua file tersebut sama, maka bisa dipastikan hash keluaran blok ke-6 keduanya juga sama. Dengan kata lain, selama kedua file memiliki common suffix (isi yang sama untuk blok ke-6 dan seterusnya), maka hash akhir keduanya akan sama.

Bila diketahui M1 dan M2 adalah dua blok yang berbeda, namun memenuhi

SHA1(common prefix+M1) = SHA1(common prefix+M2)

maka menambahkan common suffix setelahnya akan membuat SHA1 keduanya tetap sama.

SHA1(common prefix+M1+common suffix) = SHA1(common prefix+M2+common suffix)

Eksploitasi ini biasa disebut dengan hash length extension, yang ada pada fungsi hash yang menggunakan struktur Merkle-Damgard seperti MD5 dan SHA. Silakan baca tulisan saya sebelumnya tentang serangan ini hash length extension attack

Common suffix, payload PHP

Pada gambar di bawah ini, terlihat bahwa 320 byte (5 blok) pertama good.php berasal dari 5 blok pertama shattered-1, sedangkan 320 byte pertama evil.php berasal dari 5 blok pertama shattered-2. Selanjutnya diikuti dengan common suffix berupa payload php yang sama pada kedua file.

structure evil and good php

Walaupun code php pada payload sama, namun code tersebut harus melakukan hal yang jahat dalam evil.php dan tidak melakukan apa-apa pada good.php, bagaimanakah caranya? Tentu tidak bisa hanya sekedar melihat filename apakah evil/good, karena filename bisa diubah-ubah.

Caranya adalah payload code tersebut perlu membaca 320 byte pertama dirinya sendiri, kemudian menentukan bila 320 byte tersebut berasal dari shattered-1, maka itu artinya good.php, sebaliknya bila berasal dari shattered-2, maka itu artinya evil.php.

shattered-2 unique string

Pada shattered-2 terdapat string “x0Z!Vd” yang tidak ada di shattered-1, sehingga string ini bisa dijadikan indikator untuk shattered-2. Bila ditemukan string “x0Z!Vd” dalam 320 byte pertama, maka itu artinya adalah evil.php karena 320 byte pertama dari evil.php berasal dari shattered-2. Kurang lebih payload code yang menjadi common suffix seperti di bawah ini.

<?php 
$body = mb_strcut(file_get_contents(__FILE__), 0, 320);
$position = strpos($body, "x0Z!Vd");
if ($position > -1) {
    // evil.php, do something bad, rm -rf /
} else {
    // good.php, do nothing
}
?>

Berikut ini adalah contoh evil.php dan good.php dengan payload seperti contoh di atas. Dengan diff terlihat dua file tersebut sebenarnya berbeda, namun shasum menghasilkan SHA1 yang sama persis.

$ diff -q good.php evil.php
Files good.php and evil.php differ
$ shasum good.php evil.php
9f98b1abdb660db00ce4b0d06576bca8988565e0  good.php
9f98b1abdb660db00ce4b0d06576bca8988565e0  evil.php

Ini artinya kita sukses membuat SHA1 collision untuk file php. Namun bagaimana dengan eksekusinya? Apakah script php ini bisa dieksekusi?

evil.php execution

good.php execution

Kita telah berhasil mengeksekusi evil.php dan good.php, namun apa yang sebenarnya terjadi disini, kenapa ada karakter-karakter yang merupakan bagian dari header PDF terlihat di awal, sebelum kode payload dieksekusi? Mari kita lihat isi file good.php berikut ini.

good.php hexdump

Dari hexdump tersebut kita melihat bahwa 320 byte pertama file good.php berasal dari 320 byte pertama shattered-1.pdf, kemudian diikuti dengan kode php sebagai common suffix.

PHP memiliki keistimewaan yang memungkinkan SHA1 collision ini bisa dilakukan. PHP interpreter hanya akan mengeksekusi kode php di antara tag “<?php” dan “?>”. Dengan begini, maka header PDF di atas kode PHP tidak akan menjadi masalah, kode php dalam payload akan tetap bisa dieksekusi dengan sukses. Kita tidak bisa melakukan ini untuk python file misalkan, karena interpreter python akan komplain syntax error akibat adanya header PDF di awal file.

Membuat collision SHA1 untuk file HTML

Dengan cara yang sama kita juga bisa membuat SHA1 collision untuk jenis file html yang mengandung javascript di dalamnya. Kita bisa membuat evil.html dan good.html yang berbeda, namun memiliki SHA1 yang sama. Berikut ini adalah payload yang menjadi common suffix. Disini kita menggunakan javascript untuk mendeteksi apakah terdapat string “x0z!vd” yang menandakan ini adalah file evil.html yang berasal dari shattered-2.pdf.

<html> <body>
<script>
var text = window.document.body.innerHTML.substr(0,320); 
var pos= text.toLowerCase().indexOf("x0z!vd");
if (pos > -1) {
    document.body.innerHTML = "<h1>I AM so evil, doing evil things...</h1>";
} else {
    document.body.innerHTML = "<h1>I AM GOOD!</h1>";
}
</script>
</body></html>

Berikut ini adalah setelah kita tambahkan common suffix setelah 5 blok pertama shattered file. File good.html dan evil.html memiliki nilai hash yang sama, namun isi filenya berbeda.

$ shasum good.html evil.html
4487d29d4ce7262c3cdb10edf4172ca7a3f2bf30  good.html
4487d29d4ce7262c3cdb10edf4172ca7a3f2bf30  evil.html
$ diff -q good.html evil.html
Files good.html and evil.html differ

Gambar di bawah ini menunjukkan tampilan di browser untuk good.html dan evil.html.

evil.html and good.html

Written by Rizki Wicaksono

March 21st, 2017 at 1:32 pm

Posted in Cryptography