Oleh: Albert Verasius Dian Sano, S.T, M.Kom

 

Model pengemasan app Android berpotensi menyingkap cukup peluang bagi para pembuat malware untuk menyuntikkan kode malicious ke dalam app normal, dengan cara membuat app malicious baru yang dengan mudah bisa di sebarkan ke para pengguna. Dengan adanya berbagai macam tool reverse engineering, app Android bisa domidifikasi dengan mudah oleh pihak ketiga. Atau, yang lebih efektif adalah dengan mengubah suatu app yang populer. Jadi app normal ditunggangi oleh suatu kode malicious. Proses ini disebut dengan piggybacking (menunggangi). App asli yang sudah diubah disebut dengan piggybacked app (app yang sudah ditunggangi). App asli biasa disebut dengan Carrier (pembawa) dan kode malicious yang disuntikkan disebut dengan Rider (penunggang

Ilustrasi Piggybacking

Dari temuan yang dipublikasikan dalam suatu jurnal IEEE Transaction on Information Forensics & Security (Li et al., 2017)  , berikut adalah ringkasa tentang 20 temuan menarik tentang piggybacking app di Android:

  1. Perilaku malicious code seringkali disertai dengan proses manipulasi, misalkan menambahkan, menghapus, mengganti file-file resources dari app asli.
  2. Piggybacking memodifikasi perilaku app asli kebanyakan dengan merusak/mngintervensi kode app yang asli.
  3. App yang mengandung piggybacking umumnya dibuat dalam bentuk batch.
  4. Piggybacking sering meminta permission baru untuk menjalankan malicious code.
  5. Beberapa permission muncul lebih sering pada app yang mengandung piggybacking dibanding dengan app normal.
  6. Piggybacking sebagian besar mungkin sudag terotomatisasi
  7. App yang mengandung piggybacking meminta permission yang berlebihan dengan memanfaatkan permission yang diminta oleh app yang asli
  8. Sebagian besar app yang mengandung piggybacking saat ini menyertakan user interface baru dan mengimplementasikan receivers dan services di Android, tetapi tidak menambahkan struktur database yang baru.
  9. Piggybacking seringkali memasukkan suatu komponen yang memberikan kemampuan yang sama seperti kemampuan dalam app yang asli.
  10. App yang mengandung piggybacking bisa dengan mudah mengelabui pengguna dengan mengubah komponen launcher app untuk mengeksekusi kode penunggangnya (piggybacking).
  11. Piggybacking seringkali bisa dicirikan dengan ketidakcocokan penamaan antara komponen-komponen yang sudah ada (asli) dan yang dimasukkan (piggybacked).
  12. Kode malicous pada piggybacking umumnya terhubung dengan kode app asli (pembawa) melalui pemanggilan method tunggal, yang memungkinkannya untuk menemukan secara otomatis kode malicious dari app piggybacking.
  13. Piggybacking umumnya disangkutkan melalui kode library dibandingkan dengan di dalam kode inti app.
  14. Kode yang sudah di masukkan seringkali digunakan lagi di beberapa app yang sudah ditunggangi.
  15. Piggybacking menambahkan kode yang melakukan tindakan sensitif dan seringkali tidak mengacu ke pengguna perangkat.
  16. Eksploitasi piggybacking menyebarkan jenis-jenis perilaku malicious yang sudah terkenal.
  17. App yang sudah ditunggangi semakin menyembunyikan tindakan malicious melalui penggunaan class dinamis.
  18. Kode piggybacking memadatkan grafik panggilan app secara keseluruhan dan kode penunggang bahkan bisa melebihi ukuran kode app yang ditunggangi (kode app asli).
  19. Para penulis kode piggybacking seringkali bukanlah penulis app yang asli (app yang baik/bukan app yang berbahaya).
  20. Kode piggybacking mencatumkan jalur eksekusi yang lebih banyak dimana data sensitive bisa dibocorkan/dicuri.

Referensi:

Li, L., Li, D., Bissyande, T. F., Klein, J., Le Traon, Y., Lo, D., & Cavallaro, L. (2017). Understanding Android App Piggybacking: A Systematic Study of Malicious Code Grafting. IEEE Transactions on Information Forensics and Security, 12(6), 1269–1284. http://doi.org/10.1109/TIFS.2017.2656460