in

3 Alasan Berdasarkan Forensik Digital, Mengapa Tuduhan Opposite6890 kepada Polri itu Lemah

Setelah membaca tulisan ini, pembaca akan tahu, akun Opposite6890 di Twitter, hanya melakukan tuduhan tanpa alasan kepada Polri. Ia sedang menelanjangi dirinya, menunjukkan kalau tidak mengerti forensik digital.

Tentang Perubahan Akun, Penghapusan Akun, dan Kesamaan Pola

Jangan terlalu percaya pada bios (biografi singkat, data diri pada akun Twitter, dan medsos pada umumnya).

Kalau ada akun dengan bios atau foto insyinyur, belum tentu ia insyinyur. Mau ada 1000 foto dan akun polisi, bahkan jika terbukti itu berasal dari koneksi ip markas polisi, belum tentu dibuat dari sana. Termasuk akun yang ganti nama atau dihapus. Kesamaan pola, bukan berarti mengarah ke pola itu.

Ingatlah pesan Sun Tzu, “Semua peperangan berdasarkan pada tipuan (mengelabui)”.

Pesan ini untuk akun Opposite6890 yang mengingatkan agar publik tidak tertipu, sekaligus pesan saya untuk tweep agar tidak tertipu juga pada apa kata Opposite6890.

Lebih baik, menunda kesimpulan, sebelum melakukan tuduhan. Saya akan membuktikan, dengan cara lain, bahwa Polri #belumtentu melakukan kampanye untuk capres Jokowi. Saya bilang belum tentu artinya akan saya buktikan bahwa kita perlu meragukan tuduhan Opposite6890.

Untuk melakukan forensik digital, tunda dulu dugaan bahwa ada “cerita meyakinkan”, yang dibumbui kecurigaan, tuduhan, dll. Adanya kesamaan pola, dalam hal ini: sama-sama pakai baju, sama-sama ada penghapusan akun, dll., bukan berarti memang terjadi seperti itu. Sekali lagi, belum tentu seperti tuduhan Oppsite6890.

Saya harus mengabaikan kesamaan pola yang ada pada akun Opposite6890 dengan akun pendukung capres Prabowo-Sandi, karena kesamaan pola itu bisa jadi juga rekayasa. Saya tetap optimis, ini pembelajaran. Yang terpenting, saya ngasih pembelajaran kepada publik, bukan kepada Opposite6890.

Saya tahu alasan akun Opposite6890 tidak menampilkan data dirinya. Itu hak siapapun untuk bikin bios di Twitter. Itu sebabnya saya juga mengabaikan content do’a Opposite6890 di Timeline, karena itu urusan dia dengan Tuhannya. Bagi saya, “belum tentu” dia suka berdoa.

Kalau mau membuktikan, ya masalahnya di pembuktian.

Bagi yang nggak ngerti forensik digital, mudah saja percaya seolah-olah apa kata Opposite6890 itu sepertinya ilmiah.

Benarkah Aplikasi .apk ini Bikinan Polri?

Belum tentu. Kalau saya bikin “penanda” dan “tanda tangan” di aplikasi sebagai Grace Natalie, belum tentu aplikasi itu buatan Grace Natalie. Kalau orang yang nggak ngerti, menuduhnya demikian, itu wajar. Lebih baik bertanya, jangan langsung menebar kabar seolah-olah itu nyata.

Dasar pemikiran Opposite6890 itu pada kesamaan signature pada 2 file .apk, namun ternyata ini bukan bukti kuat.

Saya tahu, file .apk bisa di-decompile, diubah, kemudian dikasih signature sama.

Kalau mau lihat sign di file .apk, bisa dengan jalankan command ini di Terminal Linux:

unzip -p sambhar-1.5.apk META-INF/CERT.RSA | keytool -printcert

Hasilnya:

Owner: CN=Lucgu, OU=Elofaruc, O=Elofaruc, L=Yogyakarta, ST=DIY Yogyakarta, C=IDN
Issuer: CN=Lucgu, OU=Elofaruc, O=Elofaruc, L=Yogyakarta, ST=DIY Yogyakarta, C=IDN
Serial number: d89e83f
Valid from: Sun Jan 25 02:12:43 UTC 2015 until: Thu Jan 19 02:12:43 UTC 2040
Certificate fingerprints:
SHA1: 75:69:1F:23:ED:38:B5:29:CC:8D:4C:45:DD:3B:C4:1E:D8:53:82:A5
SHA256: 84:B9:C9:59:9B:11:16:A6:71:AD:DE:87:80:DE:D7:DD:BA:5F:F2:B5:64:4E:A6:5D:05:D4:50:D1:BC:22:EF:D3
Signature algorithm name: SHA256withRSA
Subject Public Key Algorithm: 2048-bit RSA key
Version: 3

Extensions:

#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 98 E4 57 59 0B 03 BB 55 21 11 07 D3 84 80 58 BF ..WY...U!.....X.
0010: 36 FB F4 96 6...
]
]
unzip -p sambhar-1.5.apk META-INF/CERT.RSA | openssl pkcs7 -inform DER -noout -print_certs -text

Hasilnya:

Certificate:
Data:
Version: 3 (0x2)
Serial Number: 227141695 (0xd89e83f)
Signature Algorithm: sha256WithRSAEncryption
Issuer: C=IDN, ST=DIY Yogyakarta, L=Yogyakarta, O=Elofaruc, OU=Elofaruc, CN=Lucgu
Validity
Not Before: Jan 25 02:12:43 2015 GMT
Not After : Jan 19 02:12:43 2040 GMT
Subject: C=IDN, ST=DIY Yogyakarta, L=Yogyakarta, O=Elofaruc, OU=Elofaruc, CN=Lucgu
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
Modulus:
00:90:19:71:18:3f:5d:ee:4a:28:51:5d:2d:49:d6:
a0:7d:36:80:d6:7e:86:2c:43:a4:90:be:ea:1d:46:
43:22:b2:7c:24:d6:ac:8a:fd:e9:f2:42:70:30:cd:
33:78:11:c7:92:dd:c9:46:c0:9e:22:50:84:f5:9a:
ac:76:c1:56:c2:f6:ad:84:f2:e6:11:93:ba:ae:91:
db:54:1b:bb:d0:56:95:ec:8c:9c:a3:13:36:f9:83:
51:f5:57:9f:7f:ee:35:4e:17:56:ef:63:66:b2:f7:
93:b2:2d:45:bb:72:0a:43:e2:4f:e3:f6:af:c3:5b:
bf:da:64:71:a5:88:ae:ec:18:c2:7e:ed:19:07:5c:
51:49:ee:7f:61:f5:cf:a8:62:ce:4e:04:4e:ee:2f:
6c:02:1a:cc:a0:39:44:28:2b:b3:4b:57:a7:fe:ff:
18:bf:7b:9e:69:a9:6a:ac:82:f6:4a:87:39:18:ae:
e3:5a:1f:6b:ec:55:7e:71:5d:99:97:50:a1:12:3f:
16:fb:76:6c:c6:3c:99:86:25:99:78:d3:d2:ed:90:
b2:20:02:85:6f:54:43:29:dc:c0:75:9f:83:97:ab:
98:93:ce:e3:08:11:57:5a:8d:ae:9d:dc:7e:9f:53:
a6:98:1b:28:8c:1f:68:70:43:93:6c:08:a4:0e:8c:
97:29
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Key Identifier:
98:E4:57:59:0B:03:BB:55:21:11:07:D3:84:80:58:BF:36:FB:F4:96
Signature Algorithm: sha256WithRSAEncryption
0a:b4:08:49:a6:8a:b5:51:be:f9:2d:ca:f9:0e:58:36:76:ca:
a5:d1:e6:1f:24:02:6d:e0:e6:11:cb:7e:af:8e:55:38:73:63:
e7:2d:71:49:65:54:cf:fe:6c:09:ec:86:e8:f5:76:dd:0e:2c:
46:02:a9:fe:41:26:a9:f4:95:3c:f1:d5:d2:0a:0a:29:3b:3a:
f6:a8:f9:a1:3a:ab:bd:f0:65:02:1f:79:c3:9a:92:b4:02:ec:
d5:9a:67:cf:eb:2f:cc:43:ff:14:cc:0f:08:b1:3e:b8:7f:aa:
34:0e:24:28:bf:a5:70:59:f4:56:17:57:bf:3e:7d:82:d4:0b:
5a:d8:cd:05:13:57:61:dd:eb:48:af:66:08:46:6e:0d:06:9a:
01:01:c2:09:8e:f8:b0:da:fb:82:07:b6:55:82:82:62:db:23:
21:2d:4d:1e:4f:cc:44:03:b1:72:e9:67:49:7e:e5:8b:36:3f:
4d:c9:f6:3c:41:ef:ba:ae:fd:60:28:1e:43:0e:04:cb:4b:fa:
b4:68:10:7b:67:71:66:30:4c:ff:1b:e8:f4:57:f8:65:2b:d4:
9b:7d:f0:f6:35:b0:2c:01:54:2b:dd:6d:4a:89:22:db:5d:4b:
c0:96:a5:52:6c:f2:24:a8:b9:8b:6e:c9:e2:30:6c:7f:74:36:
6f:ae:1c:d2

Semudah itu melihat signature. Sama sekali nggak “wow”, kan?

Opposite6890 bisa mengurai .apk ini, berarti aplikasi ini nggak diproteksi (mau proteksi, bisa pakai DexGuard).

Saya nggak percaya kalau seandainya Polri bikin .apk untuk kampanye dukung capres Jokowi (ini seandainya lho ya) tanpa melindungi aplikasinya dari decompile. Sungguh bukan standar keamanan Polri. Mana ada operasi rahasia yang dilakukan Polri dibiarkan terbuka seperti itu?

File .apk yang sudah jadi, terus di-decompile, dimodifikasi, kemudian dikasih signature sama, itu kan kerjaan playgroup di Kali Linux. Ini kan reverse engineering.

Misalnya orang menjalankan .apk bernama betmen.apk seperti ini:

adb install betmen.apk

Lalu dapat error:

[INSTALL_PARSE_FAILED_NO_CERTIFICATES]

Sambil merem juga bisa dibikin sama. Tinggal buat “key” kemudian “sign” file .apk, kelar urusan!

# bikin key
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

# sign apk
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name

Artinya, .apk asli bisa dimodifikasi dan kemudian di-compile dengan sign yang sama. Tepatnya, seolah-olah sama dengan aslinya.

Google pada tahun 2016 sudah menyediakan apksigner dan sampai 2018 Google PlayStore nggak bisa bebaskan toko aplikasinya dari malware.

Pelajaran playgroup berikutnya, reverse-engineering pakai dex2jar. Ini peralatan dasar banget. Termasuk bikin aplikasi beriklan dan berbayar menjadi tanpa iklan dan tanpa bayar, bisa pakai ini. Kalau mau lho ya..

Di dalam tool Kali, bukan hanya bisa convert dari jar ke dex. Rename package/class/method/field, bisa. Convert dex ke jar, bisa. Assemble file .j ke .class, bisa. Termasuk verify, nge-dump, init config, dan nge-sign file apk memakai certificate, juga bisa. Nah, ini yang berbahaya. Ini sering dipakai di metasploit, bahkan bisa dirancang agar lolos dari deteksi antivirus.

Jadi, proses singkatnya begini: bikin .apk (aplikasi Android), pasang apktool (mau pakai apa saja, tinggal pilih dan sesuaikan), decompile apk, modifikasi file, compile-ulang (payload bisa di-embed), beri sign. Kalau mau jahat, bagian ini harus lolos dari scanning.

Selanjutnya, kalau mau lebih jahat lagi, tinggal listing koneksi dan tembakkan pakai metasploit atau social engineering.

Sekali lagi, itu kerjaan anak playgroup. Bukan hacker yang ampuh. Dan saya nggak percaya, orang-orang di Polri akan seceroboh itu.

Dasar saya bukan insting apalagi sekadar percaya. Buktikan saja. Semua yang saya sampaikan di atas, sama sekali bukan aplikasi rahasia. Modal flashdisk 8GB dan laptop RAM 4GB, bisa dipraktekkan.

Register IP Website dan Aplikasi, Tertanda IP Kepolisian?

Bagaimana kalau skenarionya dibalik? Ada orang memakai jaringan Polri secara sengaja agar bisa meninggalkan jejak seolah-olah dilakukan sebagai orang Polri?

Kalau saya register web, tidak harus pakai data-diri. Dan itu juga bukan rahasia di dunia hosting. Bikin domain .co atau .id bisa melewati proses registrasi regular, dalam waktu singkat bisa jadi. Kalau misalnya seseorang jadi webmaster dan punya layanan hosting, minimal sebagai reseller, kemudian selalu memakai data dirinya, apakah itu berarti dia pemiliknya? Belum tentu. Kalau nama saya diregister untuk website, senang sekali rasanya. Malah ngehit.

Kalau tahu sedikit networking, apalagi pada metode MiTM (Man in the Middle, si pelaku berada di tengah jaringan), itu soal mudah. Komputer saya di jaringan tersebut, mau dikasih ip publik, juga bisa.

Kalau saya (yang bukan pegawai Pos Indonesia), mampir parkir dan pakai koneksi Kantor Pos Rembang, lalu melakukan kejahatan digital, apakah berarti pegawai Kantor Pos Rembang yang melakukan? Tentu tidak.
Kalau saya memakai exit node TOR yang pernah dipakai untuk melakukan kejahatan, apakah berarti saya melakukan kejahatan? Tidak. Itu bukan kelakuan saya, tetapi secara hukum saya bisa kena karena itu ada jejaknya.

Beruntunglah akun Opposite6890 tidak diminta membuktikan, Semoga saya hanya satu-satunya orang yang peduli dengan tuduhannya kepada insitusi Polri, agar Opposite6890 melakukan forensik dengan benar. Pemilu 2019 kan harus menjadi ajang pembelajaran juga, bukan ajang pembodohan publik. Kalau tim capres Jokowi tahu kualitas twit akun Opposite6890, paling hanya bilang, “Kalau kampanye itu yang kreatif..”. : )

Day Milovich,,
Webmaster, artworker, penulis, tinggal di Rembang dan Semarang.