Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 63901
Модуль Forms 63635
ТЕХНОЛОГИИ ДОСТ... 60479
Пример работы с... 59857
Имитационное мо... 55948
Реклама
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

Пользователей: 13,079
новичок: Openair
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Калькулятор на Delphi с переводом в другую систему исчисления + Блок схемы
Программа тестирования (тест) - вступительные экзамены (математика, физи...
Моделирование работы крупного аэропорта на GPSS + Пояснительная записка

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Как был взломан ALB или HACK-INFO.RU
История началась с посещения сайта hack-info.ru. Сам сайт мне не очень нравится за их "распальцовку" - не уважаю тех, кто кричит направо и налево слово "ламеры", а тут это вообще "идеология", даже свой троян назвали соответственно: Anti-Lamer Backdoor. Ну, захожу таки иногда, чтобы быть в курсе событий в нашем "киберандерграунде" :)
Сегодня зашел и обнаружил преинтересную статью "Ламосы онлайн", в которой главный идеолог сайта, Crypt, распространялся, насколько успешна его компания с трояном ALB, естественно, в своем стиле, не скупясь на слово "ламер" во все стороны света. Сам Крипт, правда, к созданию трояна отношения не имеет, впрочем, это детали, кому интересна их мышиная возня, сходите на сайт и проникнитесь атмосферой.
Для управления компьютером, зараженным троянцем, нужно знать пароль его создателя. Однако, в комментариях к статье Крипт проболтался, что существует и второй пароль - "инженерный", подходящий к любому троянцу, и предлагает купить его за 100 баксов. Не знаю, откликнулся ли кто-то на его предложение, … надеюсь, нет, потому что… дарю: "r00tXSteam". Его нахождение заняло 10 минут, не жалко. Все, дальше можете не читать, тут будет скучное описание, как он был получен и как следовало защититься создателям программы.
Запускаем Win98 с Soft-Ice, конфигурируем сервер на пароль 'lamaz' (в духе авторов "Заражаем" себя сервером. Запускаем клиент. Коннектимся. Вводим какой-нибудь пароль. Жмем Ctrl+D, вылазит окно универсального драйвера софтайса .
Переходим на виртуальную машину процесса "scandisk" (в конфигурации был задан именно такой): addr scandisk. Ищем в памяти слово "lamaz": s 0 l 1000000 'lamaz'. Найдено, причем в нескольких экземплярах. Хех, хацкеры, хешировать надо! Но об этом позже…
Часть из встреченных "lamaz" отбрасываем, потому что они явно являются частью отчета хозяину троянца. Кроме пароля, отчет содержит такие важные данные, как "папка windows" и проч. Очевидно, человек, подсунувший троян, должен мерзко хихикать при виде этих данных. Ну да ладно, не будем отвлекаться. Мотаем дальше: "s".
В конце-концов находим одиноко стоящую строку "lamaz", а недалеко от нее (какая удача!) - "r00tXSteam", очень похожий на "инженерный пароль". Выходим из софтайса (x), проверяем, подходит. Ура.
Что ж, протянем разработчикам руку помощи, а то они, глядишь, сами не додумаются, в чем их ошибка и как ее исправить. Но это только в обмен на их обещание перестать называть ламерами других. Присмотритесь лучше к себе, уважаемые…
Дело в том, что для авторизации совсем не обязательно хранить пароли в дешифруемом виде, вполне достаточно хранить их хеши, как делают все современные операционные системы.
Хеш - это функция (алгоритм), принимающая на входе любые данные любой длины, а на выходе дающая данные определенной длины.
Вот важное требование, которое криптография предъявляет к хорошим хеш-функциям: должно быть нереально подобрать входные данные, дающие заданный результат. В качестве хороших хешей я советую использовать не какие-нибудь самоделки, а признанные алгоритмы SHA-1 и MD5, реализацию этих алгоритмов нетрудно найти в Интернете, в виде исходников на Си, библиотек и компонентов для Delphi.
А вот как выглядит авторизация с использованием хеширования. На этапе записи пароля, то есть компиляции программы или конфигурирования с помощью утилиты "редактирование сервера", сохраняется не сам пароль, а хеш от него. Сам пароль в чистом виде нигде хранить не надо, а, учитывая предыдущий абзац, я бы никогда, даже обладая исходниками вашего трояна, не смог бы определить "универсальный пароль".
На этапе авторизации от предлагаемого пароля тоже берется хеш, и полученные результаты сравниваются. Естественно, что одинаковые пароли будут иметь одинаковые хеши. А то, что нельзя подобрать никакой другой пароль, опять-таки гарантируется абзацем "важное требование…" Короче, при совпадении хешей мы уверены, что пароль правильный.
К моменту публикации автор программы из трояна универсальный пароль удалил, судя по всему использование хэша для него непосильная задача...
Опубликовал Kest October 26 2008 16:39:48 · 0 Комментариев · 6634 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
SUIPack
CaptionButton
Дарахвелидзе П., ...
Быстрое создание ...
Основы программир...
Delphi 2005 Секре...
32 урока по Delphi
Игра Car [Исходни...
BDEPack
ATComponents
MiniChat
Род Стивенс. Delp...
PDJPack
XPmenu
Простой текстовый...
ScreenSaver [Исхо...
Редактор текста (...
KOL & MCK v1.69
Java 2. Наиболее ...
Архив Апгрейтов с...

Топ загрузок
Приложение Клие... 100449
Delphi 7 Enterp... 85814
Converter AMR<-... 20067
GPSS World Stud... 12518
Borland C++Buil... 11575
Borland Delphi ... 8504
Turbo Pascal fo... 7023
Visual Studio 2... 4989
Калькулятор [Ис... 4739
FreeSMS v1.3.1 3536
Случайные статьи
ПРИЛОЖЕНИЕ В. ПРО...
Раскрутка Вконтакте
Сайты компаний
/С отображает толь...
Increase Quotas (У...
Пользователь может...
Исходная БДдиспетч...
Наслаждайтесь рабо...
емый контроллер), ...
Структура сообщени...
Псевдонимы адресов
Ошибки при передач...
функции-члены
Логическое «НЕ»
Правила большого п...
Этап 9: выполните ...
256 кбит/с, котора...
СGІ-запрос
Управление идентиф...
Отражайте корпорат...
Формальный нейрон ...
Качество – заказчи...
Членам групп не да...
Бабаевский шоколад
Адаптация нашего к...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?