Генератор аккаунтов

Пару дней назад в асю стукнул человек с просьбой написать программку для генерации списков невалидных аккаунтов, составляя их из паролей, логинов и доменов, которые он предоставит. Узнав, что дальнейшая судьба софта его не интересует, я решил выложить исходники в блог и немного прокомментировать их.
Для начала, возможности софта:
[+] Генерация заданного количества login@domain:password из заданных списков логинов, доменов и паролей.
[+] Возможность задать файл с префиксами и постфиксами для логинов и паролей и указать вероятности их использования в логине и пароле.
[+] Возможность задать разделитель логина и пароля.
[+] Фильтрация списков логинов и паролей по заданным регулярным выражениям.
[+] Возможность переводить логины в нижний регистр.
[+] Возможность включить проверку, чтобы повторные логины@домены не генерировались.

Все это написано на C++ с использованием замечательной бесплатной библиотеки boost.

Чтобы фанаты таких языков, как C# или VB, не сильно зазнавались, я привожу код этого софта с комментариями - всего 260 строчек. Он, к тому же, является переносимым и может быть скомпилирован под практически любую операционную систему.

Сначала подключаем необходимые файлы:

Теперь немного вспомогательных функций:

Создадим собственный класс исключений, чтобы кидать их в случае какой-либо ошибки:

Главная функция программы:

Переходим к загрузке опций программы и списков логинов, паролей, префиксов, постфиксов и доменов:

Обработка исключений:

Теперь непосредственно подготовка к генерированию аккаунтов:

Основной цикл генерации:

Вот и всё. Осталось лишь разобрать формат конфигурационного файла. Вот пример:

Замечу, что префиксы и постфиксы не проверяются.

Скачать программу (exe, код, примеры списков и конфига): ZIP

Upd: Несколько дней назад были обновлены библиотека для работы с http на masm32, универсальный конвертер и People search.

Генератор аккаунтов: 10 комментариев

  1. Мдя, фанаты C# и VB негодуют(впрочем как и фанаты С++) - такое они делают за пол часика, зачем сей кусок... мастерства выкладывать непонятно, все одно что Hello World написать использую для этого 3рд пати либы.

    1. буст это уже не 3рд пати либа, много чего из него включено в stl c++0x. Продолжайте негодовать, наркоманы .нетов)

  2. =)
    FaS тут как-то купил 1кк невалида из которого было нереально ничего выжать.
    Я до этого также натыкался на 10к такого, взятого на пробу.
    не удивлюсь, если знаю, кто заказчик.

Добавить комментарий для Origina1 Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *