Monday, March 22, 2010

Strategi penyalinan

Supaya dapat menyalin diri, virus harus dibenarkan untuk melaksanakan kodnya dan menulis pada ingatan. Atas alasan ini, banyak virus melekat pada fail boleh laku yang merupakan sebahagian atur cara yang sah. Jika seseorang pengguna mencuba melaksanakan atur cara yang terjangkit, kod virus akan dilaksanakan lebih dahulu.
Virus-virus boleh dibahagikan kepada dua jenis, bersandarkan tindakannya apabila dilaksanakan:
Virus bukan huni dengan serta-merta akan mencari-cari perumah yang lain yang boleh dijangkiti dan selepas menjangkitinya, akan memindahkan kawalan kepada atur-atur cara penggunaan yang terjangkit.
Virus huni tidak mencari perumah apabila ia dilaksanakan tetapi sebaliknya, memuat diri ke dalam ingatan dan memindahkan kawalannya kepada atur cara perumah. Virus huni masih tetap aktif di latar belakang dan akan menjangkiti perumah-perumah yang baru apabila fail-fail itu dicapai oleh atur cara yang lain atau oleh sistem pengendalian pada dirinya.
[sunting] Virus bukan huni
Virus bukan huni boleh dianggap sebagai terdiri daripada dua modul, iaitu "modul pencarian" dan "modul penyalinan". Modul pencarian bertanggungjawab untuk mencari fail baru untuk dijangkiti. Bagi setiap fail boleh laku yang baru yang ditemukan, modul pencarian akan memanggil modul penyalinan untuk menjangkiti fail itu.
Untuk virus-virus yang mudah, tugas-tugas penyalin adalah seperti yang berikut:
Menyemak adakah fail boleh laku itu telah dijangkiti (jika ia, kembali ke modul pencarian);
Melampirkan kod virus pada fail boleh laku;
Simpan titik permulaan fail boleh laku;
Tukarkan titik permulaan fail boleh laku supaya ia menunjuk ke lokasi permulaan kod virus yang baru sahaja disalin;
Simpan lokasi permulaan yang lama supaya virus akan menyimpang ke lokasi itu selepas ia dilaksanakan;
Simpan perubahan dalam fail boleh laku;
Tutup fail yang terjangkit; dan
Kembali ke modul pencarian supaya ia boleh mencari fail yang baru untuk dijangkiti oleh penyalin.
[sunting] Virus huni
Virus huni mengandungi modul penyalinan yang serupa dengan modul yang digunakan oleh virus bukan huni, tetapi ia tidak digelar sebagai modul pencarian. Sebaliknya, virus ini memuat modul penyalinan ke dalam ingatan apabila ia dilaksanakan dan memastikan bahawa modul ini akan dilaksanakan setiap kali sistem pengendalian dipanggil untuk melakukan tugas-tugas yang tertentu, umpamanya apabila sistem pengendalian itu melaksanakan sesuatu fail. Dalam kes ini, virus itu akan menjangkiti setiap atur cara yang sesuai yang dilaksanakan oleh komputer.
Virus-virus huni kekadang dibahagikan kepada dua kategori, iaitu penjangkit cepat dan penjangkit lambat. Penjangkit cepat direka untuk menjangkiti sebanyak fail yang mungkin, umpamanya ia boleh menjangkiti setiap fail perumah yang dicapai. Ini akan menimbulkan masalah yang khusus untuk perisian anti-virus kerana pengimbas virus akan mencapai setiap fail perumah yang berpotensi di dalam komputer apabila ia mengimbas seluruh sistem. Jika pengimbas virus gagal mengesan virus sebegitu yang wujud di dalam ingatan, virus itu boleh "menggendong" pengimbas virus dan dengan itu, menjangkiti semua fail yang diimbas. Penjangkit cepat bergantung kepada kadar penjangkitannya yang cepat untuk merebak. Kelemahan kaedah ini adalah bahawa penjangkitan banyak fail akan menyebabkannya mudah dikesan kerana virus itu akan memperlahankan komputer atau melakukan banyak tindakan yang menimbulkan kesangsian yang boleh dikesan oleh perisian anti-virus.
Penjangkit lambat sebaliknya direka untuk menjangkiti perumahnya sekali sekala. Umpamanya, sesetengah penjangkit lambat hanya menjangkiti fail apabila fail itu disalin. Penjangkit lambat direka semata-mata untuk mengelakkan pengesanan dengan membatasi tindakannya. Ia tidak banyak memperlahankan komputer dan jarang mencetuskan perisian anti-virus yang mengesan tindakan atur cara yang menimbulkan kesangsian. Walaupun demikian, pendekatan penjangkit lambat kelihatan tidak begitu berjaya.

Mengapa orang mencipta virus komputer

Berbeza dengan virus biologi, virus komputer:
tidak mengembangkan diri;
tidak wujud secara spontan dan tidak dicipta oleh pepijat atur cara biasa; ia dicipta secara sengaja oleh para pengaturcara atau orang yang menggunakan perisian mencipta virus; dan
hanya boleh membuat apa-apa yang ditetapkan oleh pengaturcara.
Para pencipta virus mempunyai berbagai-bagai alasan untuk mencipta dan menyebarkan perisian jahat. Virus-virus telah dicipta sebagai projek penyelidikan, usikan, dan laku musnah, serta juga untuk menyerang produk syarikat-syarikat tertentu, menyebarkan pesanan politik, dan memperoleh keuntungan daripada pencurian identiti, perisian pengintipan (spyware), dan pemerasan kriptovirus.
Sesetengah penulis virus menganggap ciptaan mereka sebagai seni, dan melihat penulisan atur cara virus sebagai suatu hobi yang kreatif. Tambahan pula, banyak penulis virus menentang rutin-rutin yang ditulis semata-mata untuk melakukan pemusnahan. Selain itu, banyak penulis virus juga menganggap sistem-sistem yang diserang oleh mereka sebagai suatu cabaran intelektual atau satu masalah logik untuk diselesaikan. Ini berganda apabila permainan kucing dengan tikus itu terhadap perisian anti-virus dijangka.
Sesetengah virus bertujuan untuk merupakan "virus baik". Ia menyebarkan perbaikan kepada atur-atur cara yang dijangkitinya, atau menghapuskan virus-virus yang lain. Walaupun demikian, virus-virus sebegini adalah agak jarang. Ia masih menelan sumber sistem, dan mungkin akan menjejaskan sistem yang dijangkitinya tanpa sengaja serta juga kekadangnya dijangkiti oleh virus yang lain dan bertindak pula sebagai vektor untuk virus jahat. Tanpa disengajakan, atur-atur cara "virus baik" yang tidak ditulis dengan teliti juga boleh menjadi virus yang mendatangkan keburukan pada dirinya (umpamanya, 'virus baik' yang sebegini boleh salah mengecam fail sasaran dan dengan itu, salah menghapuskan fail sistem). Tambahan pula, ia biasanya bertindak tanpa meminta sebarang kebenaran daripada pemilik komputer. Oleh sebab kod penyalinan diri menimbulkan banyak kerumitan, adakah sesuatu virus yang bertujuan baik boleh menyelesaikan masalah dengan cara yang lebih baik, berbanding dengan atur cara biasa yang tidak menyalin diri, boleh dipersoalkan.
Dengan pendek kata, tidak adanya satu jawapan yang tunggal yang mungkin merangkumi seluruh demografi penulis virus yang begitu luas. Dalam kebanyakan bidang kuasa, pembebasan virus komputer (serta juga cecacing) merupakan suatu jenayah komputer. Sila lihat juga rencana Berita BBC: Mengapa orang mencipta virus komputer.

virus

Virus komputer adalah nama yang diambil dari virus biologi, merupakan program komputer yang berupaya menyalin dirinya sendiri dan menjangkiti komputer tanpa kebenaran ataupun pengetahuan pengguna. Bagaimanapun perkataan virus biasanya digunakan bagi merujuk kepada pelbagai jenis perisian perosak yang berlainan. Virus yang asal mungkin mengubah suai salinannya atau salinan itu sendiri yang mengubah suai dirinya, seperti dalam virus metamorf. Virus hanya boleh tersebar apabila hosnya sampai ke komputer lain, contohnya melalui rangkaian atau perantara mudah alih seperti cakera liut, cakera padat atau pemacu kilat USB. Selain itu, virus juga boleh merebak dengan menjangkiti fail pada sistem fail rangkaian atau mana-mana sistem fail yang dicapai komputer lain.
Sesetengah virus direka untuk menjejaskan komputer dengan merosakkan atur cara, menghapuskan fail, atau memformat semula cakera keras, manakala virus-virus yang lain direka bukan untuk merosakkan apa-apa, tetapi hanya untuk menyalin diri dan mungkin untuk menonjolkan kewujudannya melalui pemaparan teks, video, atau pesanan audio. Walaupun virus yang kedua ini tidak berbahaya, ia juga boleh menimbulkan masalah kepada pengguna komputer kerana ia menelan ingatan komputer yang digunakan oleh atur cara yang sah. Oleh yang demikian, ia seringnya mengakibatkan tindakan yang tidak menentu dan boleh mengakibatkan kerosakan sistem. Selain itu, banyak virus juga mengandungi pepijat yang boleh mengakibatkan kerosakan sistem dan kehilangan data.
Virus komputer kekadangnya dikelirukan dengan cecacing komputer dan kuda Trojan. Kedua-dua ini berbeza dari segi bahawa cecacing boleh merebak ke komputer yang lain tanpa memerlukannya dipindahkan sebagai sebahagian fail perumah, manakala kuda Trojan adalah fail yang kelihatan tidak berbahaya sehingga dilaksanakan. Berbeza dengan virus, kuda Trojan juga tidak memasukkan kodnya ke dalam fail-fail komputer yang lain.
Banyak komputer peribadi kini dihubungkan dengan internet serta rangkaian kawasan setempat dan dengan itu, memudahkan perebakan virus. Ia mengambil kesempatan yang diberikan oleh perkhidmatan rangkaian seperti sistem-sistem Jaringan Sejagat, e-mel, dan pengongsian fail untuk merebak dan dengan itu, mengaburi perbezaan antara virus dengan cecacing komputer. Tambahan pula, sesetengah sumber menggunakan istilah alternatif yang mentakrifkan virus sebagai mana-mana bentuk perisian jahat penyalinan diri.