Sabtu, 23 November 2013

Cara Mengatasi/Melindungi Website dari Serangan Hacking

Cara Mengatasi/Melindungi Website dari Serangan Hacking :
1) Login ke cPanel, pastikan ’Last Login From’ tercantum IP publik anda
Langkah pertama adalah mengecek pada bagian “Last login from” melalui panel kontrol anda.  Pastikan harus selalu tercantum alamat IP publik dari mana terakhir kali anda melakukan login. Bagaimana cara menemukan IP publik kita? Cara termudah adalah dengan membuka situs domain checker semacam http://who.is. Biasanya tepat pada portalnya akan muncul tulisan Your IP is 183.7.xxx.xxx. Itulah alamat IP publik anda. Kembali lagi jika pada “Last login from” tercantum alamat IP lain yang tidak anda ketahui, catat. Hal ini berbahaya sebab logikanya jika alamat IP lain bisa login ke kontrol panel kita, berarti mereka memiliki username, password, dan semua akses ke situs kita. Dan inilah indikasi awal bahwa website kita mendapat serangan.

2) Menyalakan fitur Log Archiving
Website akses log menyimpan rekaman mendetail tentang siapa yang melakukan koneksi ke situs kita, baik melalui HTTP (pengunjung normal) maupun melalui FTP (transfer file). Umumnya, log tersebut dihapus setiap harinya. Padahal peranan akses log sangatlah penting. Agar akses log tidak terhapus, lakukan langkah berikut:
1. Login ke cPanel > Raw Log Manager
2. Cek pada kotak “Archive Logs”.
3. Uncek pada kotak “Remove the previous month’s archived logs”
4. Klik Save
Dengan demikian Archive Log akan memaksa setiap log agar disimpan. Jika Archive Log dinyalakan maka setiap traffic akses akan terekam, termasuk serangan. Dan percayalah, dengan mempelajarinya akan berguna bagi anda untuk melakukan evaluasi sekuriti website anda.

3) Langkah darurat; segera offline kan website anda
Jika halaman anda terinfeksi virus yang memiliki kemungkinan virus tersebut bisa menyerang pengunjung situs anda, maka segera lindungi pengunjung anda dan juga reputasi anda. Yaitu dengan membuat website anda berstatus offline. Bisa dengan menambahkan beberapa baris kode pada .htaccess, maupun mengupload tampilan halaman under construction. Jika anda melakukannya dengan segera, anda memiliki kemungkinan untuk menghindarkan situs anda mendapat predikat “This site may harm your computer” dari Google. Selain itu, penyerang biasanya telah menginstal backdoor script pada halaman index anda yang memungkinkan mereka untuk kembali ke server anda. Menetapkan status offline pada situs anda sementara, sedikitnya memiliki kemungkinan untuk mengunci dan membuat penyerang tidak bisa masuk melalui backdoor yang telah diinstal.

4) Semua administrators situs melakukan scan pada PC masing-masing
Fakta bahwa di tahun 2009, penyebab nomor satu dari hacking website adalah PC webmaster yang terinfeksi oleh malware. Malware semacam gumblar, dan martuz (yang telah kita bahas pada edisi sebelumnya, red.) bertindak sebagai jembatan dalam mencuri informasi login FTP dan mengirimkannya ke komputer remote. Komputer remote inilah yang kemudian menyuntik halaman website korban dengan JavaScript atau iframes tersembunyi yang mengarahkan pengunjung website korban ke website berbahaya yang menyimpan gumblar dan martuz lainnya. Untuk menghindarinya, pastikan setiap orang yang memiliki akses password ke website anda melakukan setidaknya dua kali scan antivirus dan antispyware pada local komputer masing-masing dengan scanner yang bervariasi. Karena selama PC webmaster terinfeksi, mengubah password situs tidak akan berpengaruh sama sekali. Bukankah password baru dengan mudah dapat dicuri lagi?

5) Ganti semua password anda
Setelah PC administrator bebas dari virus dan spyware, gantilah semua password yang berhubungan dengan situs anda. Panel kontrol, FTP, koneksi database, email akun, dan halaman administrator anda. Pergunakan kombinasi password yang kuat. Yaitu password yang tidak mudah ditembus karena mengandung kombinasi kata, angka, dan karakter yang rumit.

6) Upgrade semua third party script ke versi terbaru
Sesuai yang pernah kita bahas pada edisi sebelumnya bahwa serangan semacam Remote File Inclusion (RFI) memanfaatkan vulnerability pada script versi lama dari script third party kita untuk menyusup ke dalam situs kita. Dan satu-satunya cara untuk menangkal serangan RFI ini adalah menggunakan versi terbaru dari script third party yang telah memiliki kekebalan terhadap RFI. Baik plugin, addon website hingga Content Management System (CMS) anda, segera upgrade ke versi terbaru. Jika anda menggunakan CMS semacam Joomla maupun WordPress, anda bisa mengikuti perkembangan rilis terbaru melalui situs resmi masing-masing CMS yang anda pakai. Update versi WordPress bisa dicek melalui wordpress.org, Joomla pada joomla.org, dan sebagainya. Cek juga situs secunia.com, sebuah situs yang berisi laporan sekuriti setiap third party script. Halaman situs secunia.com mendaftar kerentanan yang ditemukan pada plugin atau addon. Dengan mengecek di halaman tersebut, anda mengetahui apakah third party script yang anda pergunakan aman atau terdapat vulnerability di dalamnya.

7) Cek kode PHP anda untuk menemukan lubang sekuriti
Jika anda mencurigai bahwa script yang anda tulis sendiri mungkin saja memiliki kerentanan sekuriti, cara teraman adalah dengan berhenti mempergunakan script tersebut hingga anda telah memeriksanya dengan sangat teliti. Setelah membuat kopian lokal untuk anda sendiri, hapus scriptnya dari server. Karena selama script masih ada di dalamnya, setiap orang yang telah mengetahui letak lubang sekuritinya tetap bisa mengakses dan mengeksploitasinya.

8 ) Temukan dan perbaiki semua script berbahaya yang anda temukan
Anda bisa mengidentifikasi file apa yang dihack dengan mengecek setiap file mencurigakan melalui File Manager di cPanel anda. File yang mencurigakan memiliki kriteria sebagai berikut:

Halaman dengan tanggal modifikasi lebih baru dari terakhir kali anda menyimpannya.

File baru dengan nama dan lokasi yang mencurigakan. Beberapa hack menginstal file dengan nama seperti hacked.html atau vulnerable.php, dan sebagainya. Nama lainnya mungkin hanya tersusun secara acak. Beberapa file terinstal di lokasi yang membuatnya tampak mencurigakan, misal sebuah file .php di dalam folder /images. Jika anda menemukan file-file tersebut, cek tanggalnya dan cari file lain dengan tanggal yang sama untuk menemukan file apa saja yang mungkin terinfeksi. Sayangnya, anda tidak bisa begitu saja menghapus semua file yang bukan milik anda. Beberapa adalah file sistem yang belum pernah anda ketahui sebelumnya. Jika anda ragu, lakukan pencarian Google dengan nama file tersebut, atau post sebuah pertanyaan pada forum tertentu.

Cek direktori root anda (“/”) dan subdirektorinya untuk menemukan file yang berbahaya. Bahkan jika anda menghapus semua konten di public_html anda dan mempublish ulang situs anda, hal tersebut tidak akan menulis ulang direktori diatas dan setara public_html. Untuk itulah anda perlu melakukan pengecekan manual pada area root direktori juga.

Ada lagi cara termudah untuk memperbaiki situs kita jika kita tidak memiliki kemampuan koding yang mumpuni. Yaitu dengan mereplace website kita dengan backup segar yang kita ketahui bersih. Tetapi dengan melakukannya sama saja dengan menghancurkan bukti yang mungkin kita perlukan untuk menemukan bagaimana serangan terjadi dan bagaimana cara mencegahnya terjadi lagi. Untuk itu sebelumnya anda bisa membuat kopian dari situs yang dihack, sehingga bisa anda pelajari kemudian.

9) Cek bahwa file atau permission folder anda sudah secure
Melalui File Manager, pastikan permission dari folder dan file anda sudah sebagaimana mestinya. 755 untuk folder, dan 644 untuk file. Permission seperti 777 dan 666 yang identik dengan world-writable harus dicurigai. Jika anda menemukan permission world-writable pada sebuah file atau folder, segera lakukan pengecekan karena di sanalah area dimana penyerang bisa mengoprek halaman tersebut dengan mudah. Jika anda tidak menemukan alasan yang sangat kuat mengapa harus melonggarkan permission pada suatu file atau folder, maka rapatkan kembali permissionnya menjadi 755 atau 644.

10) Ganti lagi semua password anda
Untuk menghindari seseorang “mengintip” ke dalam situs kita ketika kita melakukan penggantian password sebelumnya, maka setelah memastikan situs kita bersih, lakukan penggantian password kembali. Tentunya tetap dengan mempergunakan kombinasi serumit mungkin.

11) Blok akses IP yang menyerang anda
Setelah anda mengetahui IP yang melakukan login tanpa izin seperti pada langkah pertama dan kedua pada artikel ini, blok akses terhadap IP tersebut melalui salah satu fitur IP Deny Manager di cPanel.

12) Pentingkah untuk melaporkan penyerang secara legal?
Hacking adalah pelanggaran terhadap aturan dan layanan semua webhosting ataupun ISP. Jika anda bisa membuktikan secara akurat bahwa seseorang menggunakan sebuah IP address tertentu untuk melakukan hacking, anda dapat melaporkan insiden ini kepada webhosting atau ISP dengan harapan bahwa mereka akan menutup akun pelaku. Tetapi biar bagaimanapun, bahkan jika anda berhasil, sama saja seperti membunuh seekor semut. Karena faktanya bahwa  perharinya terdapat jutaan request berbahaya yang diluncurkan kepada jutaan website oleh ribuan server berbahaya. Jika satu server dimatikan, tidak berpengaruh apapun terhadap penyerang. Toh mereka masih memiliki ribuan server lainnya. Daripada menghabiskan waktu untuk membalas dengan melaporkan penyerang kepada pihak berwajib, ada baiknya kita meluangkan waktu kita untuk terus meningkatkan pendalaman mengenai ilmu sekuriti website kita. Dan meningkatkan kesadaran bahwa setiap saat pasti akan ada gelombang besar serangan terhadap website kita.

sumber

cara mengatasi website yang terkena hack dan badware

Cara mengatasi website yang terkena hack dan badware yang bisa kita lakukan adalah sebagai berikut:
1. Pada saat disusupi oleh hacker

Karena pengalaman saya pada saat itu hackernya hanya mengubah salah satu artikel di blog (WordPress.org) tanpa menyerang database serta menghapus file-file di server hosting, maka kita cukup:
  • Mengubah password akun (account) untuk masuk ke cPanel hosting.
  • Mengubah password akun (account) untuk masuk ke dashboard WordPress.
  • Mengembalikan artikel yang telah diubah oleh hacker tersebut kepada keadaan semula.
  • Menginstal beberapa plugin “pengaman” wordpress.
2. Pada saat terinfeksi HTML Script InjectionPHP Script Injection dan Java Script Injection
HTML Script Injection, sesuai dengan namanya maka tentu saja menyerang pada file-file hosting yang berekstensi .html. Kode script yang  telah diinjeksikan ke banyak file .html adalah seperti ini:
<scrxpt>src=http://jeremyjacksonevents.com/celebs/rumble66.php></scrxpt>
PHP Script Injection, sesuai dengan namanya maka tentu  saja menyerang pada file-file hosting yang berekstensi PHP. Kode script yang telah diinjeksikan ke beberapa file .php adalah menggunakan kode Eval seperti berikut:
eval(base64_decode(‘aWYoxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
PuAnJangBangedddddddddKodenyaaaaaaaaaaaaaaaaaaaaaaaA
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxJ10pKTs=’)); ?><?php
Java Script Injection, sesuai dengan namanya juga, maka tentu saja menyerang file hosting yang berekstensi JS. Kode script yang telah menginfeksi file .js menggunakan kode Eval yang sama/mirip seperti yang menyerang pada file-file berektensi PHP.
*Catatan: x = sengaja kode-kode tersebut saya ganti dengan huruf “x” ini, karena kalau tidak, maka halaman blog saya ini akan dicuriga sebagai halaman blog atau website yang mengandung perangkat lunak yang membahayakan bagi pengguna internet (dicurigai mengandung malicious scripts/malware atau secara umum disebut dengan istilah badware)
Injeksi sript tersebut bertujuan untuk menanamkan backlink kepada halaman situs jeremyjacksonevents.com/celebs/rumble66.php secara ilegal. Dan setiap kali kita membuka halaman website/blog kita, maka link ke halaman situs tersebut ikut terbaca pada saat loading.
Cara mengatasinya kasus nomor 2 ini adalah dengan memeriksa satu persatu file-file hosting berektensi .HTML, .PHP, dan .JS di server hosting, lalu kita hapus script beserta kode-kode aneh yang dideteksi sebagai badware pada file-file tersebut.  Misalnya kalau pada kasus yang saya alami badware tersebut menginfeksi file-file seperti index.html, readme.html, googlegooglef130xxxx29ffa9ed.html (kode verifikasi Google), serta file-file berektensi .html dan .htm lainnya, index.php, wp-setting.php, wp-config, sampel.php, wpconfig.php, postinfo.html, functions.php, page-index.php, script.js, dan penambahan file berekstensi .php di folder images yaitu bernama gifimg.php yang bisa langsung dihapus.
Tetapi karena file-file tersebut tentu saja akan banyak jumlahnya, dan kita pun akan kerepotan untuk memeriksa satu persatu, maka cara yang bisa dilakukan adalah dengan:
  • Untuk keamanan, gantilah terlebih dahulu password akun cPanel hostingnya.
  • Untuk blog di WordPress.org, ganti pula password untuk masuk ke dashboarnya.
  • Pastikan di komputer terpasang antivirus yang updated, dan pastikan komputer telah terbebas dari virus.
  • Download semua folder dan file dari server hosting ke komputer (bisa menggunakan FileZilla)
  • Untuk mengetahui file apa saja yang terinfeksi, maka scan semua folder dan file yang telah didowload, dan jangan sampai file-file yang terdeteksi mengandung badware tersebut langsung dihapus/didelete oleh antivirus, tetapi biarkan masuk ke chest/quarantine, supaya nanti kita bisa melihat file-file manakah yang terinfeksi dan harus kita perbaiki.
  • Setelah scanning selesai, maka periksa chest/quarantine. Lihat file-file apa saja yang terinfeksi dan harus diperbaiki atau dihilangkan badwarenya tersebut.
  • Untuk menghilangkan badware di file-file tadi, kita bisa merestore satu persatu file dari chest/quarantine ke folder asalnya untuk kemudian dihilangkan kode-kode badwarenya lalu diupload pada folder yang sama di server. Tetapi kalau takut akan resiko komputer terinfeksi atau antivirus selalu mengembalikannya ke chest/quarantie, maka kita bisa langsung menghapus kode-kode badware di file-file yang sama di server hosting.
  • Jika menemukan file-file asing yang sebelumnya tidak ada di server seperti gifimg.php atau yang lain, maka Anda hapus saja file tadi.
  • Setelah semuanya selesai, maka silahkan akses kembali halaman blog atau website yang kita miliki. Jika antivirus sudah tidak membloknya, maka website kita telah terbebas dari badware. Bila masih membloknya atau masih ada peringatan darinya, berarti masih ada file yang belum bersih dari kode-kode badware.
Bila antivirus sudah tidak membloknya, tetapi beberapa browser atau search engine mungkin masih tetap memblok atau memberikan peringatan kepada pengunjung untuk tidak membuka website kita, maka untuk mengatasinya kita harus meminta review keGoogle Webmaster Tools dan StopBadware.org. Setelah mereka mereviewnya serta memastikan website/blog kita telah terbebas dari badware, maka biasanya hanya dalam beberapa jam saja website/blog kita sudah terbebas dari pemblokan serta tidak dianggap membahayakan lagi oleh browser dan search engine.
3. Pada saat pengunjung blog dialihkan (redirecting) dari mesin pencari ke sebuah situs tertentu.
Cara mengatasi redirecting seperti ini sangat mudah, yaitu:
  • Cek kode-kode pada file HTACCES dan wp-config.php di server hosting menggunakan Filezilla versi terbaru. Dan tidak perlu memeriksanya di melalui cPanel, karena biasanya kode-kode badwarenya disembunyikan (hidden).
  • Bila pada file tersebut terdapat kode-kode badware seperti kode Eval tersebut di atas, maka hapuslah kode tersebut.
  • Kunjungi blog kita melalui search engine. Bila kita benar-benar telah berhasil menghapus kode badwarenya, maka blog kita pun telah terbebas dari redirecting.