Tes

Tes

Senin, 04 April 2016

Web Security

Pengertian Website


       Website atau situs dapat diartikan sebagai kumpulan halaman yang menampilkan informasi data teks, data gambar diam atau gerak, data animasi, suara, video dan atau gabungan dari semuanya, baik yang bersifat statis maupun dinamis yang membentuk satu rangkaian bangunan yang saling terkait dimana masing-masing dihubungkan dengan jaringan-jaringan halaman (hyperlink). Bersifat statis apabila isi informasi website tetap, jarang berubah, dan isi informasinya searah hanya dari pemilik website. Bersifat dinamis apabila isi informasi website selalu berubah-ubah, dan isi informasinya interaktif dua arah berasal dari pemilik serta pengguna website. 

Web security


       Web Security adalah tata cara mengamankan aplikasi web yg dikelola, biasanya yg bertanggung jawab melakukannya adalah pengelola aplikasi web tersebut. Saat ini, internet telah menjadi bagian dari kehidupan kita sehari-hari sebagai salah satu wahana komunikasi dalam bisnis maupun untuk privat. Berbicara mengenai masalah yang berkaitan dengan keamanan di dalam era digital tidak lepas dari 3 prinsip utama yaitu : Confidentiality, Integrity, dan Availability atau lebih dikenal dengan nama CIA. Sama halnya ketika bergelut dengan keamanan (security) sebuah website, princip CIA sudah selayaknya dijadikan pedoman yang harus dipahami apabila ingin website kita lebih aman dan sulit untuk diserang.
  1. CONFIDENTIALITY memiliki makna bahwa data-data ataupun informasi-informasi yang berada di dalam sebuah website hanya dapat di baca atau di akses oleh orang-orang yang memang memiliki kewenangan untuk mengaksesnya. Dalam era konsep Web 2.0 yang sedang berkembang beberapa tahun belakangan ini, sangat memungkinkan sebuah website untuk dapat memiliki lebih dari satu administrator. Contohnya adalah WordPress engine.Idealisme Web 2.0 yang dapat mengajak siapa pun menjadi kontributor artikel-artikel di dalam sebuah website, membuat siapa pun dapat mengakses halaman administrator untuk memberikan kontribusinya baik dalam bentuk artikel maupun manajemen. Hal ini sangat berbahaya mengingat pada halaman administrator kita dapat mengedit file-file yang menjadi theme dari website yang bersangkutan.
  2. INTEGRITY memiliki pengertian data-data yang berada didalam server atau website hanya dapat diubah ataupun di delete oleh orang yang memiliki kewenangan untuk melakukan hal itu. Sebagai contoh proses transfer dari server ke client atau sebaliknya (dapat berupa upload maupun download), ternyata mengubah file yang sedang di transfer tersebut, hal ini mengindikasikan bahwa sebuah aplikasi website yang sedang digunakan tidak aman (insecure). Untuk membuat website menjadi lebih aman, hal ini tentunya harus dihindari. Salah satunya adalah dengan mengaplikasikan salah satu proses yang wajib ada dalam sebuah proses software engineering yaitu proses testing. Proses testing ini dibagi menjadi dua yaitu: – Black box testing – White box testing Secara sederhana black box testing adalah mengetes aplikasi yang diperuntukkan oleh user yang memang mengakses website tersebut (act like enduser -bertindaklah sebagai seorang user/pemakai). Sedangkan untuk whitebox testing mengkhususkan diri kepada testing fungsi-fungsi yang telah ditulis dalam bahasa pemrograman tertentu (PHP, Perl, ASP, Javascript, dan lain sebagainya). 
  3. AVAILABILITY jika confidentiality bermakna hanya user yang memiliki kewenangan yang dapat melihat data tertentu yang tersimpan didalam sebuah server atau website, availability memiliki makna bahwa website harus dapat diakses jika user ingin menggunakannya. 
       Tetapi di balik itu masih banyak lubang kelemahan sistem, jika seorang webmaster mengabaikan keamanan suatu website, maka seorang hacker dapat mengambil data-data penting pada suatu website dan bahkan pula dapat mengacak-acak tampilan website (deface) tersebut. Banyak sekali kasus website yang di-hack, di–deface, dan isi databasenya hilang sebagian. Bahkan blog gratisan sekalipun bisa jadi sasaran, diserang juga dengan efek yang sama, para hacker atau cracker tidak memandang sasarannya. Website milik pemrintahan juga tidak lepas untuk jadi sasaran. Ada beberapa tipe penggila komputer, yaitu :
  1. Hacker adalah sekumpulan orang/team yang tugasnya membangun serta menjaga sebuah sistem sehingga dapat berguna bagi kehidupan dunia teknologi informasi, serta penggunanya. hacker disini lingkupnya luas bisa bekerja pada field offline maupun online, seperti Software builder(pembuat/perancang aplikasi), database administrator, dan administrator. Namun dalam tingkatan yang diatas rata-rata dan tidak mengklaim dirinya sendiri, namun diklaim oleh kelompoknya, maka dari itu hacker terkenal akan kerendahan hati dan kemurahan memberikan segenap ilmunya.
  2. Cracker adalah seorang/sekumpulan orang yang memiliki kemampuan lebih dalam merusak sebuah sistem sehingga fungsinya tidak berjalan seperti normalnya, atau malah kebalikannya, sesuai keinginan mereka. Biasanya cracker ini belum dikategorikan kejahatan didunia maya, karena mereka lebih sering merubah aplikasi, seperti membuat keygen, crack, patch(untuk menjadi full version).
  3. Defacer adalah seorang/sekumpulan orang yang mencoba untuk mengubah halaman dari suatu website atau profile pada social network(friendster, facebook, myspace), namun yang tingkatan lebih, dapat mencuri semua informasi dari profil seseorang, cara mendeface tergolong mudah karena banyaknya tutorial diinternet.
  4. Carder adalah seorang/sekumpulan lamers yang mencoba segala cara untuk mendapatkan nomor kartu kredit seseorang dan cvv2nya dengan cara menipu, menggenerate sekumpulan kartu kredit untuk kepentingan dirinya sendiri. Namun pada tingkatan tertentu carder dapat mencuri semua informasi valid dari sebuah online shopping.
  5. Frauder adalah seorang/sekumpulan orang yang mencoba melakukan penipuan didunia pelelangan online, belum ada deskripsi jelas tentang orang ini, mereka sering juga dikategorikan sebagai carder.
  6. Spammer adalah seorang/sekumpulan orang yang mencoba mengirimkan informasi palsu melalui media online seperti internet, biasanya berupa email, orang-orang ini mencoba segala cara agar orang yang dikirimi informasi percaya terhadap mereka sehingga next step untuk mendapatkan kemauan si spammer ini berjalan dengan baik.
Berikut adalah beberapa metode yang biasa sering digunakan para penggila komputer, hacker atau cracker dan lain-lain untuk menyerang suatu website:

  • Remote File Inclusion (RFI). Metode yang memanfaatkan kelemahan script PHP include(), include_once(), require(), require_once() yang variabel nya tidak dideklarasikan dengan sempurna. Dengan RFI seorang attacker dapat menginclude kan file yang berada di luar server yang bersangkutan.
  • Local File Inclusion (LFI). Metode yang memanfaatkan kelemahan script PHP include(), include_once(), require(), require_once() yang variabel nya tidak dideklarasikan dengan sempurna. Dengan LFI seorang attacker dapat menginclude kan file yang berada di dalam server yang bersangkutan.
  • SQL injection adalah teknik yang memanfaatkan kesalahan penulisan query SQL pada suatu website sehingga seorang hacker bisa menginsert beberapa SQL statement ke ‘query’ dengan cara memanipulasi data input ke aplikasi tersebut.
  • Cross Site Scripting (XSS) dikenal juga dengan CSS adalah singkatan dari Cross Site Scripting. XSS adalah suatu metode memasukan code atau script HTML kedalam suatu website yang dijalankan melalui browser di client.
  • Insecure Direct Object Reference adalah suatu celah yang terjadi saat pembuat aplikasi web merekspos referensi internal penggunaan objek, seperti file, direktori, database record, dll
  • Cross Site Request Forgery (CSRF). Celah ini akan memaksa browser target yang sudah log-in untuk mengirimkan “pre-authenticated request” terhadap aplikasi web yang diketahui memiliki celah, dan memaksa browser target untuk melakukan hal yang menguntungkan penyerang.
  • Information Leakage and Improper Error Handling. Penyerang menggunakan informasi yang didapatkan dari celah yang di akibatkan oleh informasi yang diberikan oleh web aplikasi seperti pesan kesalahan (error) serta konfigurasi yang bisa di lihat.
  • Broken Authentication and Session Management. Celah ini merupakan akibat buruknya penanganan proses otentikasi dan manajemen sesi, sehingga penyerang bisa mendapatkan password, atau key yang di gunakan untuk otentikasi.
  • Insecure Cryptographic Storage. Aplikasi web umumnya jarang menggunakan fungsi kriptografi untuk melindungi data penting yang dimiliki, atau menggunakan fungsi kriptografi yang di ketahui memiliki kelemahan.
  • Insecure Communications. Sedikit sekali aplikasi web yang mengamankan jalur komunikasinya, hal inilah yang dimanfaatkan oleh penyerang sebagai celah untuk mendapatkan informasi berharga.
  • Failure to Restrict URL Access. Seringkali, aplikasi web hanya menghilangkan tampilan link (URL) dari pengguna yang tidak berhak, tetapi hal ini dengan sangat mudah dilewati dengan mengakses URL tersebut secara langsung.
Pengamanan secara umum yang dapat dilakukan :
  1. Pemilihan Sistem Operasi (OS), Setting Server, dan Desain Aplikasi
  2. Instalasi Patch
  3. Kontrol Akses
  4. Audit dan Log File
  5. Menerapkan Kriptografi
  6. Sekuritas Jaringan = Network firewall, Sentralisasi Log, Network monitoring, Pendeteksian gangguan serangan
  7. Penggunaan Proxy (front door) = Semua akses http melalui proxy, Sentralisasi akses
  8. Penggunaan Proxy (Integration reserve proxy) = Kombinasikan multi web server menjadi satu
  9. Penggunaan Proxy (protection reserve proxy) = Awasi akses masuk dan keluar, Block akses yg mencurigakan
  10. Penggunaan Proxy (performance reserve proxy) = Transparan caching, Transparan respon, SSL




Referensi :
  • https://djavanese.wordpress.com/2011/01/08/makalah-website-security-systems/
  • https://blog.estuwebdesign.com/2015/11/pengertian-web-security/
  • http://gumilanghanif.blogspot.co.id/2012/04/apa-itu-web-security.html
  • http://dimasmapanjielang.blogspot.co.id/2014/06/web-security-dan-web-terpopuler.html

Tidak ada komentar :

Posting Komentar