Monday, September 24, 2012

Keselamatan dalam Pengaturcaraan PHP




1. Pengenalan

Penulisan aplikasi PHP adalah mudah. Kebanyakan pengaturcara memahami sintaks dengan cepat dan dalam masa yang singkat dapat menghasilkan skrip berdasarkan tutorial, rujukan, buku, dan forum-forum bantuan seperti yang terdapat di sini. Walaubagaimanapun, kebanyakan orang terlupa tentang aspek keselamatan apabila menulis aplikasi PHP.

Secara umumnya, pengguna aplikasi anda akan menuruti arahan mengisi borang web sebagaimana yang diberitahu. Akan tetapi, terdapat sebahagian pengguna yang bersikap sebaliknya. Sesetengah pengguna berniat jahat dan cuba mencari peluang untuk melakukan kerosakan di laman web anda. Mereka akan meneliti aplikasi anda untuk mencari kelemahan keselamatan dan mengeksploitasi kelemahan tersebut. Seringkali pengaturcara peringkat awalan terlepas pandang hal ini dan akhirnya menemui masalah apabila kelemahan aplikasinya dieksploitasi oleh orang lain.

Terdapat beberapa isu yang mustahak dipelajari oleh anda supaya ianya dapat diurus dengan baik, dan lebih baik lagi, jika dapat dihalang dari terjadi. Kemahiran mengendalikan isu ini sudah tentunya belum memberi jaminan perlindungan selamanya kerana serangan keselamatan akan terus datang dan berubah dari masa ke semasa. Namun setidak-tidaknya ia membantu menjauhkan aplikasi anda dari cubaan pihak penceroboh.

2. Error Reporting (Laporan Ralat)
Laporan Ralat memberikan anda maklumat mengapa aplikasi anda gagal seperti apa yang berlaku dan di mana ia berlaku. Maklumat ini adalah penting untuk proses nyahpijat (debug). Walau bagaimanapun, mungkin bukan anda seorang sahaja yang berminat untuk mengetahui mengapa aplikasi anda gagal. Barangkali ada orang lain yang turut ingin tahu tentangnya. Mereka mungkin akan mengkaji dan merancang bagaimana mengambil kesempatan ke atasnya.

Oleh itu, anda tidak perlu output ralat skrin apabila aplikasi anda berjalan di persekitaran pengeluaran. Sebaliknya keluarkan Laporan Ralat dalam persekitaran pembangunan anda sahaja. Jejaki punca ralat dan selesaikannya di peringkat dalaman tanpa perlu diketahui umum.

Bagaimana pula sekiranya aplikasi telah dilancarkan tetapi anda masih bimbang akan kewujudan ralat di dalamnya? Anda boleh menulis ralat ini ke dalam fail log. Fail log, pada
asalnya, tidak ditetapkan oleh PHP untuk menyimpan maklumat ini. Maka anda perlu mengubahsuai ketetapan ini. Akses ke fail log adalah bergantung kepada kebenaran dari pihak penyedia perkhidmatan hosting. Jika akses tidak dibenarkan, maka anda perlu menyediakan fail sendiri untuk menyimpan maklumat ralat tadi.

Beberapa arahan php.ini yang relevan dangan hal ini
display_errors - arahan ini mengawal sama ada kesilapan PHP perlu dihantar ke skrin atau tidak. Dalam persekitaran pengeluaran ini perlu sentiasa dimatikan.

error_reporting - ini adalah arahan yang menentukan samada ralat perlu dilaporkan. Anda perlu menetapkan ini kepada E_ALL .

log_errors - ini adalah kawalan yang menentukan sama ada kesilapan perlu dilog ke fail. Adalah disyorkan kawalan ini dihidupkan.

error_log - ini adalah nama laluan fail di mana laporan ralat akan ditulis. Ia berfungsi jika log_errors dihidupkan.

Cadangan penetapan konfigurasi laporan ralat
Nama Arahan Pengeluaran Pembangunan
Display_erros off on
Error_reporting e_all e_all
Log_errors on on
Error_log bergantung bergantung

Bagaimana error_log sepatutnya dikonfigurasi jelas bergantung kepada bagaimana struktur direktori anda (yang akan dibincang kemudian dalam tutorial ini).

2.1. Menetapkan arahan

Terdapat beberapa cara yang berbeza di mana anda boleh menetapkan arahan pengaturcaraan yang selamat. Jika anda sudah tahu bagaimana untuk berbuat demikian maka anda boleh melangkau bahagian ini.

Cara pertama:
Mengubahsuai pembolehubah dalam fail tetapan php.ini. Perubahan ini boleh mendatangkan ancaman keselamatan. Walau bagaimanapun, ini hanya boleh dilakukan oleh pentadbir komputer pelayan. Penggodam tidak akan dapat melakukannya.

Cara kedua:
Sistem Pelayan Apache mempunyai beberapa fail konfigurasi yang dipanggil “.htaccess” di mana anda boleh memberi arahan Apache untuk folder tertentu (dan sub-folder nya). Sesetengah penyedia perkhidmatan hosting tidak membenarkan pengubahsuaian fail ini. Sekiranya mereka membenarkannya, anda boleh menggunakan arahan “php_flag” seperti ini:
php_flag directive_name directive_value

Perhatikan bahawa anda tidak boleh menggunakan pemalar seperti E_ALL sebaliknya gunakan nilai angka 8191. Angka ini mungkin berubah pada masa hadapan maka anda perlu semak dari masa ke semasa. Senarai nilai pemalar pada Laporan Ralat boleh disemak di URL berikut: http://php.net/manual/en/errorfunc.constants.php.

Untuk persekitaran pengeluaran anda boleh lakukan seperti berikut:
php_flag display_errors off
php_flag error_reporting 8191
php_flag log_errors on
php_flag error_log /home/someone/logs/php_errors.log

Cara ketiga: Menggunakan fungsi PHP ini_set (). Fungsi ini menerima dua parameter iaitu nama arahan dan nilai yang mahu diberikan padanya. Anda boleh menggunakan pemalar di sini. Terdapat fungsi dipanggil error_reporting () yang mana anda boleh gunakannya untuk menetapkan Laporan Ralat secara terus.

3. Suntikan SQL (SQL Injection)

Salah satu masalah kebiasaan dalam aplikasi web adalah suntikan SQL. Komik di bawah menggambarkan kesan kes Suntikan SQL. Perenggan seterusnya akan menghuraikan maksud yang tersirat di dalam komik tersebut.

(http://xkcd.com/327/)

Suntikan SQL adalah merujuk kepada proses memasukkan arahan SQL ke dalam pernyataan query yang terdapat dalam skrip anda. Adakalanya skrip anda memerlukan input dari pengguna untuk proses berikutnya. Nilai ini sepatutnya membantu proses berjalan seperti yang dirancangkan. Walaubagaimanapun ia boleh bertindak sebaliknya jika kandungannya mengelirukan aplikasi anda.


Dalam contoh di atas, kita andaikan pihak sekolah mempunyai pernyataan query seperti berikut:
$Sql = "INSERT INTO Pelajar (nama) VALUE ('{$ _POST [' student_name ']}')";

Dalam pernyataan tersebut aplikasi sepatutnya akan menyimpan nilai student_name ke dalam field nama pada table Pelajar. Selagi pengguna mematuhi format yang ditetapkan, sistem akan berfungsi seperti yang dijangka. Seandainya pengguna memasukkan nilai yang ganjil (si ibu memasukkan potongan arahan SQL kononnya sebagai sebahagian dari nama anaknya), maka aplikasi mungkin bertindak di luar jangkaan.


Mari kita lihat bagaimana pertanyaan kelihatan apabila kita memasuki rentetan yang diberikan oleh ibu:
INSERT INTO students (name) VALUES ('Robert'); DROP TABLE Students;--')
Seperti yang anda mungkin tahu, semicolon (;) adalah tanda henti bagi satu baris arahan manakala tanda hyphens (--) bermaksud bahawa teks sesudahnya adalah komen dan bukan skrip arahan. Dalam kes di atas, nilai input telah mengubahsuai pernyataan query asal dengan mencipta pernyataan query tambahan “DROP TABLE Students;”. Seterusnya, hyphens mengakibatkan skrip aplikasi mengabaikan baki kod di dalam peryataan query asal. Kesudahannya, pernyataan query tambahan ini telah mengakibatkan skrip aplikasi memadam table student dari database aplikasi tersebut.

Percubaan di atas tidak memerlukan kuasa minda yang tinggi untuk menjayakannya. Penggodam hanya perlu meneka arahan query aplikasi dan seterusnya menyusun arahan SQL Injection yang sesuai. Akibatnya, data boleh dicuri atau dihapuskan.

Tuesday, September 18, 2012

SHAREPOINT SERVER 2010 - LANGKAH MULA

 

Jika anda masuk ke laman portal SharePoint2010 sebagai Pentadbir (Admin), anda dapat perhatikan di sudut kanan bawah laman portal ruangan bertajuk Getting Started (Langkah Mula).


SHARE THIS SITE


  1. Klik “Share this site”. Lihat laman di bawah.
  2. Anda dapat lihat Tab Permission Tools.
    Perhatikan Sub Group berikut:

  1. Grant

  1. Grant Permissions,
  2. Create Group,

  1. Modify

  1. Edit User Permissions (tidak aktif),
  2. Remove User Permissions (tidak aktif),

  1. Check

  1. Check Permissions,

  1. Manage

  1. Anonymous Access,
  2. Permission Level,
  3. Manage Access Requests
  4. Site Collection Administrators.

  1. Perhatikan Panel Kiri. Ia dinamakan sebagai Quick Launch. Dalam latihan di bawah anda akan mengubahsuai susunannya.
  2. Perhatikan Ruang Utama Tetingkap.
  3. Bawa Mouse Pointer ke butang Navigate Up.

    Klik butang Navigate Up. Klik pautan teratas sekali untuk kembali semula ke Laman Rumah.
  4. Tamat. Anda seharusnya melihat Laman Rumah pada ketika ini.

CHANGE SITE THEME


  1. Klik “Change Site Theme”. Lihat laman di bawah.
  2. Anda sekarang berada di Laman Tema Tapak (Site Theme). Gunakan laman ini untuk menukar skima fonts dan warna tapak. Pilih tema yang tersedia atau muatnaik tema baru ke Galeri Tema (Theme Gallery). Pertukaran tema tidak akan mengganggu rekaletak tapak dan tidak akan menukar laman yang telah ditetapkan temanya yang tersendiri.
  3. Klik butang Navigate Up>>Klik Laman Rumah.
  4. Tamat. Anda seharusnya melihat Laman Rumah pada ketika ini.



SET A SITE ICON


  1. Klik “Set a Site Icon”. Anda akan lihat paparan di bawah.
  2. Masukkan maklumat seperti di bawah. Klik OK setelah selesai. Teks untuk Title akan dipaparkan pada setiap laman di dalam tapak ini manakala teks untuk Description akan dipaparkan pada Laman Rumah. Imej Logo sebaik-baiknya berukuran 60 x 60 pixels. Masukkan juga penerangan untuk imej logo.

  1. Title : <Nama Tapak Anda>
  2. Description : This is a Test Site
  3. URL : http://imageshack.us/a/img600/6568/testlogosmall.jpg

  1. Klik “Click here to test” untuk menguji kewujudan imej terbabit.

  1. Alternative text for the picture: This is a Test Logo

  1. Anda seharusnya dapat melihat laman seperti di bawah.
  2. Klik butang Navigate Up>>Klik Laman Rumah. Anda seharusnya melihat Laman Rumah seperti di bawah.

    Bandingkan dengan skrin terdahulu. Perhatikan logo dan teks untuk description telah ditukar.

  3. Tamat.

CUSTOMIZE THE QUICK LAUNCH


  1. Klik “Customize the Quick Launch”. Anda akan lihat paparan di bawah.
  2. Anda boleh mengubah Pautan sedia ada.
  3. Anda juga boleh memasukkan Pautan baru.
  4. Masukkan Heading baru untuk memisahkan pautan mengikut kumpulan tertentu.
  5. Kita akan menukar susunan pautan sedia ada. Klik Change Order.
  6. Tukar susunan seperti imej di bawah.
  7. Perhatikan Panel Kiri telah berubah susunan pautannya.
  8. Gunakan butang Navigate Up untuk kembali ke Laman Rumah.
  9. Latihan tambahan - Tukarkan semula pautan pada Quick Launch kepada susunan asal.

Daftar Akaun Sharepoint Server 2010 percuma di Internet



Sehingga saat blog ini ditulis, sebuah syarikat penyedia perkhidmatan hosting bagi sistem SharePoint 2010, http://www.portalfronthosting.com/, telah menawarkan perkhidmatan percubaan percuma selama 30 hari. Ia satu laluan pantas bagi mereka yang mahu mencuba sistem SharePoint. Bagi sesiapa yang sudah biasa dengan SharePoint Server 2010, tentu sahaja mereka tahu bahawa bukan mudah hendak memasang sistem SharePoint 2010. Keperluan perkakasannya adalah tinggi manakala pra-syarat perisian pula mengambil masa dan memerlukan sambungan Internet. Maka, ini adalah cara mudah untuk membuat pandu uji terhadap SharePoint Server 2010.

Layari alamat http://www.portalfronthosting.com/ dan isi borang seperti di atas. Tunggu email susulan dan klik pautan yang diberikan di dalam email tersebut. Gunakan nama pengguna dan kata laluan sepertimana yang telah diisi dalam borang tadi untuk mengakses laman pentadbir. Hasilnya, anda akan melihat laman seperti di bawah.

Laman Login
Laman Utama


LAWATAN KE PUSAT PENTADBIRAN (ADMIN CENTER)
  1. Manage User. Klik pada Tab Manage User. Anda dapat lihat senarai pentadbir bagi tapak ini. Anda boleh tambah dan buang nama yang dikehendaki.
  2. Manage Organization. Klik pada Tab Manage Organization. Anda dapat lihat nama organisasi sebagaimana yang telah didaftarkan. Sunting jika perlu.
  3. Manage Sites. Klik pada tab Manage Sites. Anda dapat lihat nama domain sebagaimana yang telah didaftarkan.

    Klik pautan Launch untuk melayari Laman Utama Portal SharePoint anda.
  4. Kembali semula ke laman terdahulu. Klik pada Tab My Services. Anda dapat lihat status “Trial” seperti di bawah.
  5. Klik pada pautan WSS 3.0 Hosted Sites. Anda dapat lihat tempoh percubaan berbaki 29 hari lagi.
  6. Lawatan tamat.


Pemasangan SharePoint Server 2010

Pemasangan SharePoint Server 2010


Sebelum SharePoint Server 2010 di pasang pada sesebuah komputer server, komputer server tersebut perlu terlebih dahulu di pasang dengan perisian pra-syarat yang diperlukan (baca di sini).


Sekiranya perisian pra-syarat telah tersedia, teruskan dengan langkah-langkah berikut.



  1. Pergi ke Install>>Klik Install SharePoint Server


  1. Skrin Pemasangan SharePoint 2010 akan meminta Kunci Produk. Dapatkan kunci beta daripada sini atau boleh cuba yang berikut (Trial Product key: VK7BD-VBKWR-6FHD9-Q3HM9-6PKMX)
  2. Baca terma Lesen anda dan klik “I accept the terms of this agreement” dan mula proses pemasangan.
  3. Pilih pilihan Standalone, jika anda memasang dengan SQL server 2008 Express atau anda menggunakan system maya seperti VirtualBox. Jika anda mahu memasang pada sistem Ladang Server Farm, pilih Ladang Server.

Sistem akan memulakan proses Pemasangan ...
Sistem akan mengambil beberapa minit untuk melengkapkan pemasangan dan seterusnya tetingkap Run Configuration Wizard dipaparkan.
Jalankan Configuration Wizard dengan mengklik butang Next.
Seterusnya klik Yes untuk menghidupkan semula IIS.
Configuration Wizard perlu melengkapkan 10 tugas. (Sila ambil perhatian bahawa ia akan mengambil beberapa minit untuk disiapkan. Ia tidak secepat SharePoint 2007) (
Tahniah ... anda berjaya memasang SharePoint 2010.
Sistem akan melancarkan SharePoint 2010 skrin Pusat Pentadbiran ...
Terjemahan dari: http://www.codeproject.com/Articles/44219/Step-by-Step-SharePoint-Server-2010-Installation-G

Pemasangan Pra-Syarat SharePoint 2010

Pemasangan Pra-Syarat SharePoint 2010

Sebelum SharePoint Server 2010 di pasang pada sesebuah komputer server, komputer server tersebut perlu terlebih dahulu di pasang dengan perisian pra-syarat yang diperlukan.



  1. Run fail pemasangan SharePoint Server 2010
  2. Sistem akan mengekstrak fail dan menunjukkan skrin di atas.
  3. Pergi ke Install>> klik “Install software prerequisites”.
  4. Sistem akan berjalan untuk beberapa minit dan mungkin memaparkan mesej ralat berikut:
  5. Pasang perisian prasyarat seperti dikehendaki. Lakukan satu persatu hingga semua pra-syarat di penuhi.
  6. Sebaik sahaja anda mendapat skrin di atas “Installation Complete” ("Pemasangan Lengkap"), kembali ke tetingkap Pemasangan Sharepoint, pergi ke Install>>klik “Install SharePoint Server”.
Seterusnya, Pemasangan SharePoint Server

Monday, August 20, 2012

CISCO Webex Panduan Daftar dan Kenali Antaramuka Perisian




  1. Pergi ke http://mytrial.webex.com/ untuk daftar khidmat percuma selama 14 hari. LANGKAH 1: Isi maklumat diri.
  2. LANGKAH 2: Masukkan maklumat syarikat.
  1. Pendaftaran selesai. Klik “Launch WebEx”.
  1. Tunggu aplikasi dilancarkan.
  1. Amaran Digital Signature Java. Boleh abaikan. Tekan Run.
  1. Masih dalam proses melancarkan aplikasi.
  1. Aplikasi siap dilancarkan.
  2. Menu.
  1. Tab.
  1. Panel Sembang.
  1. Tetingkap utama.
  1. Panel Aplikasi.
  1. Tetingkap About.
  1. Share Control Bar terselindung.
  1. Share Control Bar melungsur ke bawah.
  1. Share Control Bar; Menu Share.
  1. Share Control Bar; Assign Menu.
  1. Share Control Bar; Participant.
  2. Share Control Bar; Chat.
  1. Share Control Bar; Annotate.
  2. Share Control Bar; Note.
  3. Share Control Bar; Others.