No Kad Kredit Dicuri

Assalamualaikum dan selamat sejahtera pembaca budiman,

Sewaktu sedang seronok-seronok menonton TV3, Buletin Utama yang penuh dengan kontroversi 30 minit pertama politik sahaja, Dekan menerima satu SMS daripada Bank AAAA (AAAA tu bukan nama sebenar). SMS itu berbunyi,

“RM0.00 AAAA: GBP2.00 was charged on your card num XXXX at XXXX on XX/03.”

Terkejut dengan SMS itu, Dekan berfikir sama ada ia betul daripada bank tersebut atau bukan. Kemudian Dekan berasa sedikit seram sejuk slightly selepas itu, kerana menjangkakan akan ada satu lagi SMS dengan nilai yang lebih tinggi. Dan tak lama selepas itu, “RM0.00 AAAA: GBP 10XX.20 was charged on your card num XXXX at XXXX on XX/03.



SHOOT!!

GBP siap. GBP tu Great Britain Pound mak aih! GBP1k x 5 = MYR5k!

Terus. “Hello AAAA, just now I received 2 SMSes bla bla bla. I need to verify bla bla bla… WTF.. bla bla bla. Blocked.. bla bla bla.. Thank you.” Skipping londang siap padahal boleh je cakap Melayu. ;P

Rupa-rupanya memang no kad kredit Dekan dicuri dan disalahgunakan. Trace kembali, tempat digunakan ialah daripada laman web booking flight dan hotel. Maka cuma satu cara sahaja penjenahat itu memperoleh, iaitu daripada laman web yang Dekan dah masukkan data kad kredit tersebut. Dekan ada menggunakan transaksi online menggunakan kad kredit untuk book tiket seperti tiket kapal terbang dan juga hotel. Selebihnya memang bayar tunai. Tunai tu maksudnya direct debit dari bank. Mungkin salah satu daripada laman web tersebut sudah dikompromis dan data Dekan telah digunakan tanpa pengetahuan. Takut juga jika komputer Dekan mempunyai malware, dan scanning telah dilakukan, Alhamdulillah ok. InsyaAllah.

Oleh itu, kepada semua pembaca harap berhati-hati jika mahu menggunakan transaksi secara online. Simpan no bank just in case. Jangan masukkan kad kredit jika anda rasa laman web itu meragukan. Oh ya, Dekan suspek laman web yang Dekan kena itu mempunyai https yang tidak di’trust’.

Sekian.

Assalamualaikum w.b.t.,

Pernahkah anda mendengar terminologi seperti berikut: (Blind) SQL Injection, Local File Inclusion (LFI), Remote File Inclusion(RFI), Cross Site Scripting (XSS), Cross Site Request Forgery (XSRF atau CSRF), dan Shell Script? Kebanyakannya ialah berkenaan dengan sekuriti website dan berkait rapat dengan pengujian kelemahan atau pencerobohan dan juga penggodaman.

Semakin hari sudah semakin sibuk dengan kerja yang ke arah pengurusan menyebabkan Dekan ingin mengepos berkenaan di atas supaya pengetahuan tersebut dapat disimpan dan boleh dirujuk oleh diri sendiri nanti. Local File Inclusion (LFI) ialah satu teknik *untuk menggunakan sesuatu file di dalam web server tersebut. Dengan menggunakan teknik ini, sesuatu server tersebut boleh dikompromis dengan mengeluarkan output fail yang menyimpan username admin dan password dan mengeksploitasikan server tersebut dan sebagainya.

*selalunya ia disalah faham dengan teknik memasukkan fail ke dalam web tersebut. terdapat pelbagai cara untuk memasukkan fail, sebagai contoh yang senang ialah menggunakan register dan ‘file upload’ sendiri selain menggunakan teknik LFI (yang juga boleh).

Local File Inclusion (LFI)

Teknik ini adalah web-based dan menggunakan kelemahan coding dalam laman web itu sendiri untuk melakukannya. Contohnya, katakan laman web tersebut mempunyai link seperti berikut:

http://www.formatkomputer.net/ref.php?nama=dekan.php

atau

http://www.formatkomputer.net/?nama=dekan.php

Output yang mungkin ialah:


Salam, Dekan.

Terima kasih kerana melayari laman web ini. Berikut ialah kredit yang anda ada: RM100.50
Berikut ialah rekod transaksi terakhir anda: bla bla bla…

Dalam kes ini dekan.php ialah nama fail yang terdapat di dalam server formatkomputer.net. Jika Dekan tukarkan nama “dekan.php” di alamat di browser kepada “fazira.php” atau “fairuz.php“, mungkin Dekan akan mendapat page atau portfolio mereka. Jadi secara tidak langsung, link tersebut akan membuka fail tersebut.

Bagaimana pula jika Dekan meletakkan link seperti berikut:

http://www.formatkomputer.net/?nama=../../etc/passwd atau
http://www.formatkomputer.net/?nama=../../../etc/passwd atau
http://www.formatkomputer.net/?nama=../../../../etc/passwd

Berkemungkinan, jika berjaya, Dekan akan dapat output seperti berikut:

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
dekan:x:2:2:usr:/sbin:/sbin/nologin

Hal ini adalah kerana Dekan merujuk kepada fail passwd di dalam server laman web tersebut. Maka kandungan dalam fail passwd itu akan terpapar seperti di atas.

Penjelasan ../../etc/passwd:

1. Dalam linux, tempat untuk simpan password terletak dalam fail /etc/passwd
2. Output di atas yang dipaparkan menunjukkan nama akaun untuk server tersebut dan juga attribute lain seperti user id, group id, info dan juga password.
3. Jika anda mendapat seperti di atas: root:x:….. kolum ‘x’ adalah kolum untuk password hash. Namun ‘x’ menunjukkan password tersebut diletakkan di dalam /etc/shadow yang mana ia lebih dienkrip
4. tanda ../ menunjukkan lokasi asal folder tersebut diupkan one level.

Bagaimana ia boleh terjadi?

Ia terhasil disebabkan kelemahan dalam koding laman tersebut yang memberikan kemudahan meng’include’ (memasukkan) fail seperti dalam bahasa pengaturcaraan PHP. Contoh kod PHP tersebut ialah seperti berikut:

require_once($LANG_PATH . ‘/’ . $_GET[‘lang’] . ‘.php’);

Kod tersebut menunjukkan variable ‘lang’ (untuk language) dimasukkan ke fail tersebut mungkin kerana pengguna diberi kebenaran untuk memilih bahasa. Kod itu juga menambah .php untuk setiap input yang dimasukkan. Untuk di atas, jika parameter ‘malay’ atau ‘eng’ dihantar, kemungkinan laman web tersebut akan memaparkan kandungan dalam Bahasa Melayu dan Bahasa Inggeris masing-masing. Contohnya:

http://www.formatkomputer.net/index.php?lang=malay

http://www.formatkomputer.net/index.php?lang=eng

Dalam kes ini, tiada .php sekali dengan parameter, dan ia menyukarkan proses file inclusion untuk yang bukan fail php. Tidak benar. Terdapat pelbagai cara lain untuk melakukannya. Antaranya ialah penggunaan Null Byte. Jadi apa yang boleh dilakukan ialah dengan cubaan menghantar parameter lain seperti berikut sebagai contoh:

http://www.formatkomputer.net/index.php?lang=../../etc/passwd%00

Jika bernasib baik, kandungan fail passwd akan terpapar sama seperti di atas. Hal ini adalah kerana “%00” yang dikenali dengan nama NULL byte ditafsir oleh PHP interpreter untuk mengakhiri sesuatu line. Ia seperti noktah di situ. Jadi sebarang perkataan atau coding selepas %00 tidak akan dilayan. Maka ia ditafsirkan sebagai satu fail yang sah dan wujud dan kemudian dipaparkan.

Bersambung.

  • 4 Comments
  • Filed under: Sekuriti
  • Salam semua,

    Cara ni bukan cara advanced nak hack hp member anda, cuma cara poyo-poyo saja bagaimana HP anda boleh dimasuki tanpa kemahuan anda. Berikut ialah situasi yang menunjukkan ke’best’an HP anda dihack kununnya.

    Waktu melawat semula UTM dahulu, Dekan duduk sebilik dengan seorang rakan lama yang mempunyai nama panggilan unik yakni Ciboy. Malam tu kitorang pun bukak la cerita tentang kisah-kisah lama. Biasela time ni la pun nak bukak cerita-cerita lama. Tak lama selepas itu, terpacul la soklan bab-bab cinta. Ciboy ni agak pemalu sikit nak cerita tentang ni, dia pun menafikannya.

    Hehe. Tapi yang anehnya, tangan beliau tidak lekang dengan HP Sony Ericssonnya (sorry tentang model Dekan fail sket). Nak ditakdirkan pula, ketika beliau mahu ke tandas, Dekan mengambil HP tersebut untuk membaca mesej. Ciboy nampak tindakan Dekan itu dan tersenyum lebar, kerana beliau telah menetapkan password untuk membuka kotak mesej beliau.

    Dekan: Ciboy, aku nak baca mesej ko boleh x?

    Ciboy: Boleh-boleh. Bacerla. Kalau hang hebat. Hahaha. (Gelak-gelak kecil beliau.)

    Begitulah sinisnya cabaran si Ciboy ini. Hehe. Yang sebenarnya, ayat pertanyaan Dekan di atas cuma untuk membenarkan tindakan seterusnya sahaja. Jeng3.

    Tanpa berlengah lagi, Dekan pun meng’ON’ mode Bluetooth di HP Ciboy (bluetooth tak lock pulak ek) dan mengconnect dari HP Dekan menggunakan tools yang tidak seberapa (sebut kang korang gelak, xmau), kemudian paired @ allow acces dari HP Ciboy, membolehkan semua yang terkandung dalam HP Ciboy diakses. Hehe.

    Bluetooth hack
    Contoh menu/feature yang terkandung dalam tools tersebut

    Dari Last Called, Phonebook, Mesej, dan juga Setting-setting lain semua boleh diubah. Apakan daya ini menahan…Terpaksalah Dekan membaca satu, dua mesej dari atas dan boleh meneka keseluruhan kandungan mesej2 yang lain (sebab orang bercinta ni asik pakai mesej template yang sama kot. Ayat2 mesti pattern yang mempunyai variasi atau keluarga yang sama je. Mak aih macam malware heuristic/generic detection la plak.)

    Habis Ciboy nganga lah beliau kerana rahsia beliau sudah ku tahu. Hehe. Ampun… Jangan marah tau.

    Bluetoothhack
    PoC (dilakonkan semula) dan imej courtesy of Amir Ramzani. Kelihatan log Last Dialled Call nya terpapar.

    Kesimpulannya, berhati2 dengan Bluetooth anda. Pastikan selalu off. Sekian sahaja. 🙂

  • 8 Comments
  • Filed under: Telefon
  • Sajer-sajer.. LAlala

    Nilai Blog Saya~


    My blog is worth RM57593.28.

    How much is your blog worth?

    Listed In