Archive for October, 2011

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
  • Assalamualaikum w.b.t.

    Siapa di sini yang pernah dengar istilah Knowledge Management? Semestinya ramai yang tidak pernah dengar, ia adalah istilah yang majorly digunapakai dalam bidang pengurusan, minorly dalam IT.Ada sesetengah orang berpendapat Knowledge Management (Pengurusan Pengetahuan) ini tidak pernah wujud atau boleh dicapai kerana kita tidak boleh ‘menguruskan pengetahuan’. Betul. Namun untuk pengetahuan pembaca yang masih setia semua, itulah kerja Dekan pada tahun ini dari awal tahun sampai sekarang.

    Walaupun ‘menguruskan pengetahuan’ untuk syarikat, namun blog sendiri tidak terurus. Baiklah, Dekan cerita sedikit tentang Knowledge Management (KM). KM ini banyak dipraktikkan oleh organisasi-organisasi supaya pengetahuan itu dapat direkod, dijaga dan dikongsi boleh berlaku dengan efisyennya. Mungkin antara sedar dengan tidak, organisasi anda mempraktikkannya tapi tidak menakannya sebagai KM. Walau bagaimanapun, istilah KM lebih meluas merangkumi keseluruhan organisasi misalnya dan lebih teratur berbanding apa yang mungkin ada praktikkan sekarang.

    Antara unsur yang perlu ada dalam KM ialah Pengetahuan (Knowledge), Orang (People) dan Proses (Process). Jika terdapatnya tiga unsur ini, maka KM boleh dipraktikkan dengan efisyennya. Berkenaan bidang IT pula, KM melihat IT sebagai ‘tools’ terbaik untuk meng’enhanced’kan dalam proses perkongsian, preserved dan sharing maklumat yang penting. Jadi, penglibatan IT adalah terbaik pada masa kini sebagai teknologi bagi mempercepatkan (drive) proses KM.

    -imej KM

    – imej IT in KM

    Jadi untuk projek Dekan sekarang, setiap orang dalam organisasi mempunyai pengetahuannya tersendiri dalam bidang-bidang yang mereka mahir. Dan mereka tidak akan mengongsikannya sebarangan kerana “Knowledge is Power’. Maka, apa yang boleh dilakukan ialah memberi ganjaran kepada mereka jika berlaku proses sharing tersebut. Namun, antara cara lain yang difikirkan sesuai oleh Dekan ialah menggunakan elemen Proses dalam KM untuk mempercepatkan proses perkongsian.

    Kiranya semua proses sedia ada akan di’tune-in’ kepada proses perkongsian maklumat secara langsung, pengetahuan itu dapat direkodkan dan digunakan sebaiknya. Jadi, projek ini dinamakan Process Oriented Knowledge Management.

    – imej kedudukan POKM.

    Baiklah, jika ada di antara pembaca yang ingin berkongsi pendapat atau telah mempraktikkan KM, boleh sama-sama berdiskusi dengan Dekan dengan menghubungi admin /at/ mywindowsxp.info

    😉

    Sekian, terima kasih.

  • 11 Comments
  • Filed under: Zon Maklumat
  • Sajer-sajer.. LAlala

    Nilai Blog Saya~


    My blog is worth RM57593.28.

    How much is your blog worth?

    Listed In