Sebuah temuan mengejutkan mengungkap kelemahan serius di balik aplikasi-aplikasi ponsel populer di platform iOS dan Android. Beberapa aplikasi ini ternyata menyimpan kredensial untuk layanan cloud seperti Amazon Web Services (AWS) dan Microsoft Azure Blob Storage dalam kode mereka secara langsung, tanpa enkripsi. Ini berarti data pengguna dan kode sumber aplikasi tersebut rentan terhadap serangan keamanan.
Kredensial yang terpapar seperti ini dapat dengan mudah dimanfaatkan oleh penyerang untuk mengakses secara ilegal penyimpanan data dan database yang berisi data sensitif pengguna. Lebih buruk lagi, mereka dapat memanipulasi atau mencuri data pengguna tanpa izin.
Laporan dari Symantec, sebuah perusahaan Broadcom, mengungkap bahwa kesalahan dan praktik buruk dalam pengembangan aplikasi menjadi penyebab utama terungkapnya kredensial ini.
"Analisis terbaru kami menemukan sebuah tren yang mengkhawatirkan: beberapa aplikasi yang banyak digunakan ditemukan menyimpan kredensial layanan cloud secara langsung dan tanpa enkripsi dalam kode mereka," jelas Symantec.
"Praktik berbahaya ini berarti bahwa siapa pun yang memiliki akses ke kode biner atau sumber aplikasi berpotensi untuk mengekstrak kredensial ini dan menyalahgunakannya untuk memanipulasi atau mencuri data, yang menyebabkan pelanggaran keamanan yang serius," ungkap para peneliti.
Symantec menemukan sejumlah aplikasi di Google Play yang menyimpan kredensial layanan cloud di kode mereka, termasuk:
- Pic Stitch (lebih dari 5 juta unduhan) – Kredensial Amazon disimpan secara langsung
- Meru Cabs (lebih dari 5 juta unduhan) – Kredensial Microsoft Azure Blob Storage disimpan secara langsung
- Sulekha Business (lebih dari 500 ribu unduhan) – Kredensial Microsoft Azure Blob Storage disimpan secara langsung
- ReSound Tinnitus Relief (lebih dari 500 ribu unduhan) – Kredensial Microsoft Azure Blob Storage disimpan secara langsung
- Saludsa (lebih dari 100 ribu unduhan) – Kredensial Microsoft Azure Blob Storage disimpan secara langsung
- Chola Ms Break In (lebih dari 100 ribu unduhan) – Kredensial Microsoft Azure Blob Storage disimpan secara langsung
- EatSleepRIDE Motorcycle GPS (lebih dari 100 ribu unduhan) – Kredensial Twilio disimpan secara langsung
- Beltone Tinnitus Calmer (lebih dari 100 ribu unduhan) – Kredensial Microsoft Azure Blob Storage disimpan secara langsung
Temuan serupa juga ditemukan di Apple App Store:
- Crumbl (lebih dari 3,9 juta peringkat) – Kredensial Amazon disimpan secara langsung
- Eureka: Earn money for surveys (lebih dari 402,1 ribu peringkat) – Kredensial Amazon disimpan secara langsung
- Videoshop – Video Editor (lebih dari 357,9 ribu peringkat) – Kredensial Amazon disimpan secara langsung
- Solitaire Clash: Win Real Cash (lebih dari 244,8 ribu peringkat) – Kredensial Amazon disimpan secara langsung
- Zap Surveys – Earn Easy Money (lebih dari 235 ribu peringkat) – Kredensial Amazon disimpan secara langsung
Meskipun App Store tidak menampilkan jumlah unduhan secara langsung, jumlah unduhan aplikasi biasanya jauh lebih tinggi daripada jumlah peringkat yang ditampilkan. Penting untuk dicatat bahwa Google Play menampilkan jumlah total unduhan untuk seluruh masa hidup aplikasi, bukan jumlah instalasi aktif.
Meskipun aplikasi-aplikasi di atas terpasang di perangkat Anda, tidak berarti bahwa data pribadi Anda telah dicuri. Namun, data Anda tetap rentan dan dapat dicuri oleh peretas jika pengembang aplikasi tidak segera mengambil tindakan untuk menghilangkan risiko ini.
Pada September 2022, Symantec telah memperingatkan tentang risiko ini, dengan penelitian mereka menemukan lebih dari 1.800 aplikasi iOS dan Android yang mengandung kredensial AWS, 77% di antaranya memiliki token akses yang valid di kode aplikasi.
Peneliti merekomendasikan pengembang untuk menerapkan praktik terbaik dalam melindungi informasi sensitif di aplikasi mobile.
Berikut beberapa langkah penting yang dapat diambil pengembang:
- Gunakan variabel lingkungan untuk menyimpan kredensial.
- Gunakan alat manajemen rahasia (seperti AWS Secrets Manager, Azure Key Vault).
- Enkripsi data.
- Lakukan tinjauan dan audit kode secara berkala.
- Integrasikan pemindaian keamanan otomatis sejak awal proses pengembangan untuk mendeteksi data sensitif atau masalah keamanan.
Dengan mengabaikan praktik terbaik ini, pengembang secara tidak sengaja membuka pintu bagi peretas untuk mengakses data pengguna yang sangat sensitif. Penting bagi pengembang untuk memprioritaskan keamanan dan melindungi data pengguna dengan mengambil langkah-langkah yang diperlukan untuk mengamankan aplikasi mereka.