Print This Post Пишем на русском в Native Mode

Среда, 26. Январь 2011
Раздел: C/C++, Windows, автор:

Недавно у меня возникла необходимость писать на русском в нативном приложении, но, как оказалось, добиться этого не так-то просто.
Для того, чтобы получить возможность вывода русских букв, нужно разобраться, где и в каком формате хранятся глифы символов, которые отображаются на экране. Если подробнее рассмотреть функцию winx_printf (в своем проекте я использовал ZenWINX и NDK для упрощения разработки приложения), то мы увидим, что она в свою очередь вызывает winx_print, далее вызывается NtDisplayString, которая преобразует входящую строку с помощью RtlUnicodeStringToOemString, далее идет вызов функции InbvDisplayString, которая обращается к VGA Boot Driver (bootvid.dll).
Читать дальше »

Print This Post База ВКонтакте

Пятница, 21. Январь 2011
Раздел: Социальные сети, автор:

На одном закрытом форуме давно ещё набрел на базу пользователей ВКонтакте. Естественно, в ней нет какой-либо конфиденциальной информации, просто некоторые данные, собранные с открытых страниц пользователей.
База от 28.07.10, содержит информацию о всех или почти всех пользователях примерно до 76391587 id, экспортирована из MySQL, содержит поля id (порядковый номер в бд), userid (ид в вконтакте), name (имя), familyname (фамилия), gender (пол), familystatus (семейное положение), birthdate (дата рождения), birthcity (город рождения), country (страна), city (город проживания), mobile (номер мобильного), institute (институт), interests (интересы), groupslist (группы, в которых состоит пользователь).

Вес в распакованном виде: 9,23 Гб
Вес в архиве: 1,47 Гб
Архив разбит на части, добавлена информация для восстановления.
Ссылки:
Часть 1 | Часть 2 | Часть 3 | Часть 4 | Часть 5 | Часть 6 | Часть 7 | Часть 8

Print This Post SSH Bruteforce

Воскресенье, 26. Декабрь 2010
Раздел: C/C++, автор:

Написал небольшой брутфорс учетных записей SSH.

Возможности:
[+] Многопоточность
[+] Три режима перебора: по списку логинов, по списку паролей, по списку логин;пароль
[+] Перебор IP по диапазону или по списку из файла
[+] Возможность установки таймаута соединения при проверке порта

Подобранные данные сохраняются в файл brute_good.txt. Распараллеливание идет по IP-адресам, т.е. если в диапазоне 1 IP и в настройках стоит 100 потоков, то фактически перебор идет в 1 поток.

Скачать: sshb.zip (пароль на архив: kaimi-ru)
Говноисходники: sshb_src.zip

Update (22.01.14): Немного поправил код, устранил утечку памяти, добавил дополнительную проверку на успешную авторизацию, сделал сборку с libssh 0.6.0 и OpenSSL 1.0.1f.
Собранная версия
Проект для MSVC 2010+
GitHub: ssh-bruteforce

Print This Post HTML5 пианино

Суббота, 11. Декабрь 2010
Раздел: HTML/JS, автор:

Недавно пересматривал старый фильм Amadeus и захотелось тоже что-нибудь сыграть на фортепиано, но так уж сложилось, что мой синтезатор позаимствовал dx, а другого инструмента у меня не имеется. Поэтому решил поизвращаться и сделать свое "фортепиано" с использованием HTML5.
Реализация довольно простая. Клавиши рисуются в элементе canvas, создается элемент audio для каждой ноты и, соответственно, при нажатии клавиши определяются координаты курсора, высчитывается, в область какой клавиши было совершено нажатие и играется сэмпл (каждая нота хранится в отдельном ogg-файле).
Живой пример можно посмотреть здесь.
Все файлы одним архивом: скачать.

P.S.

Print This Post All Your Base Are Belong To Us

Вторник, 7. Декабрь 2010
Раздел: Социальные сети, автор:

P.S.

Print This Post Simple Mail.ru Regger

Понедельник, 29. Ноябрь 2010
Раздел: Софт, автор:

Простой автоматический регистратор почтовых ящиков в сервисе mail.ru. Написан на Perl.

[+] Многопоточность
[+] Генерация логинов/паролей произвольно или из файла
[+] Имя и фамилия берутся из файлов, остальные поля заполняются случайным образом
[+] Поддержка antigate
[+] Возможность выбора используемых при регистрации поддоменов (mail.ru, bk.ru, inbox.ru, list.ru)
[+] Поддержка SOCKS5/HTTP прокси

Настройка производится путем редактирования файла config.txt.
Для работы необходим ActivePerl и модули GD, GD::Tiler (GD::Tiler есть в комплекте).

Скачать: reg_mail.

Print This Post Капча с использованием HTML5

Пятница, 19. Ноябрь 2010
Раздел: HTML/JS, PHP, автор:

На большинстве сайтов в качестве капчи используется картинка, подгружаемая в бинарном виде при обращении к некоему скрипту-обработчику. Реже встречаются капчи, отображаемые с использованием технологий Flash или Java. Плюс в использовании таких капч безусловно есть, но некоторые пользователи любят отключать подобные расширения, с целью обеспечения дополнительной безопасности при серфинге в интернете. Однако пятая версия основного языка разметки веб-страниц принесла с собой множество полезных нововведений. Одно из них - элемент canvas, который предназначен для создания растровых изображений с помощью JavaScript.
Соответственно, с помощью этого элемента и JS можно выводить изображения капчи в браузер, например, в виде массива точек, которые будут собраны в изображение с помощью JS. В чем смысл? Смысл в том, чтобы затруднить автоматизированное распознавание изображений.

Во-первых, можно придумать специфический формат хранения данных, который будет впоследствии декодироваться скриптом.
Во-вторых, можно упаковать и обфусцировать данные изображения, чтобы затруднить парсинг и навязать использование JS-интерпретаторов.
В-третьих, можно использовать специфичные для браузеров JS-«фичи», которые затруднят работу интерпретаторов.
В общем, есть, где развернуться.

И, наконец, вот простой пример подобной капчи (без маджонга и гейш). По идее должен нормально работать в FireFox, Opera, Chrome и IE9.
Исходный код: скачать

Print This Post Патчинг софта, накрытого .NET Reactor’ом, на примере ActualSpamPro

Воскресенье, 7. Ноябрь 2010
Раздел: C#, Социальные сети, автор:

В последнее время всё большее количество авторов “рекламного соц. софта” используют платформу .NET для разработки. Причем для того, чтобы защитить свой софт, они не гнушаются использовать платные протекторы (двойные стандарты в области интеллектуальной собственности так и прут), в том числе довольно известный .NET Reactor. Не знаю, с чем связан частый выбор данного протектора, но особой сложности для анализа внутренностей защищенной программы он не добавляет, так как существует множество вспомогательных инструментов для разбора такого софта, да и ручками всё или почти всё не так уж сложно сделать.
Читать дальше »

Print This Post Socks5 Server

Суббота, 6. Ноябрь 2010
Раздел: Perl, автор:

Решил сделать небольшую поделку на основе двух существующих socks-серверов на perl'e. За основу были взяты sss и rdss.
Отличия:
[~] Вместо форка использованы треды
[~] Предварительно формируется пул потоков для обработки запросов
[~] Модуль MD5 выкинут, соответственно, пароль вводится в открытом виде
[~] Использует модуль IO::Select (эдакое мультиплексирование)
[~] Более читабельный код

В общем, надеюсь, кому-нибудь пригодится.
Скачать: serv.pl
GitHub: socks5-proxy-server

Print This Post OCR нахаляву

Суббота, 23. Октябрь 2010
Раздел: C#, автор:

В последнее время всеми любимый сервис antigate.com работал не очень стабильно, поэтому многие стали временно использовать известную альтернативу - captchabot.com.
И я решил, так сказать, "заценить", что из себя представляет этот сервис. Не знаю, как с качеством и скоростью распознавания, но меня очень порадовала реализация системы пополнения счета с помощью WebMoney.
Если попытаться пополнить счет, скажем, на 5$, то произойдет переход на промежуточную страницу, в исходном коде которой можно наблюдать стандартную для WebMoney форму запроса проведения платежа.

Однако, довольно интересно себя ведет скрипт, указанный в параметре LMI_RESULT_URL. При простом обращении к нему, во-первых, мы видим раскрытие путей, во-вторых, теоретическую возможность проведения SQL-инъекции (параметры, передаваемые скрипту, можно посмотреть тут). И, как оказалось, скрипт не проводит аутентификацию запроса, что позволяет пополнить счет на любую сумму, используя параметр LMI_PAYMENT_NO со страницы платежа. То есть мы просто передаем скрипту параметры LMI_PAYMENT_AMOUNT и LMI_PAYMENT_NO и деньги зачисляются на счет.

Чтобы не тыкать все это дело ручками, написал программку, которая все сделает за вас. Потребуется ввести только логин, пароль и сумму. Пользуйтесь, хотя быстро прикроют, скорее всего.
Скачать: zip

P.S. На антикапче несколько месяцев назад тоже был замечательный баг, позволяющий делать переводы и выводить средства, превышая доступный баланс.