Допомога - Пошук - Користувачі - Календар
Distributed Rainbow Table Generator
Розподілені обчислення в Україні > Завершені проекти > Мікс - Інші завершені проекти
Panda


Проект "Distributed Rainbow Table Generator"

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ТОП-20 участников:
----------------------------------------------------------------------------------------------------------
Дата основания команды - Дата Капитан - Капитан
----------------------------------------------------------------------------------------------------------
Полезная информация:
Для идентификации пользователя в BOINC могут служить 2 вещи:
1) пара e-mail/пароль
2) межпроектный идентификационный ID (Cross-project ID) - 32значное шестнадцатиричное число.

Если Вы пожелаете подключится ещё и к другому BOINC-проекту, то помните: чтобы не плодить новых аккаунтов при подключении к новому проекту или команде, нужно обязательно везде регистрироваться с одним и тем же e-mail/паролем либо CPID. если при регистрации в проекте указать другие e-mail или пароль, BOINC создаст новый аккаунт с тем же именем!
----------------------------------------------------------------------------------------------------------


О проекте: (взято с дистрибутед.ру)
(Show/Hide)


Цели
Тогда как некоторые хорошо известные нам проекты тратят миллионы компьютерных лет на взлом одного пароля,
проект RainbowCrack предлагает за такое же время (полный перебор) создать таблицы, в которые записать все
возможные пароли и соответствующие им хэши по всем распространённым в мире алгоритмам хэширования.
Обычно, хэшированный вариант пароля хранится в открытом доступе и известно, по какому алгоритму получен этот хэш
(например MD5), но обратное преобразование считается слишком сложной операцией, требующей в общем случае
перебор всех возможных комбинаций - это ставится в основу безопасности многих современных систем. Если же
иметь сортированные таблицы хэшей и соответствующие им пароли - получим систему, которая с помощью быстрого
бинарного поиска по таблице может получать обратное преобразование хэша в пароль для любого существующего
алгоритма хэширования.

Основная проблема: таблицы всех возможных паролей занимают слишком большой объём на дисках. Поэтому
используется оригинальный формат таблиц: хэши собираются в цепочки по несколько тысяч комбинаций - каждая
следующая комбинация получается из предыдущей очередным применением той же функции хэширования. В таблицы
записывается только начало и конец каждой такой цепочки. Для того, чтобы найти пароль по такой таблице, нужно
применить к заданному хэшу точно так же функцию хэширования несколько тысяч раз (в зависимости от используемой
длины цепочек) и на очередной итерации получим хэш, который является концом одной из цепочек в наших таблицах.
После чего прогоняем эту цепочку заново от начального хэша до нужного нам и находим комбинацию, предшествующую
нашему хэшу - это и есть искомый пароль.

Такие таблицы называются Rainbow Tables (отсюда и название проекта). Их ценность в том, что они с одной стороны
имеют объём в тысячи раз меньше обычных таблиц, содержащих все возможные пароли, с другой - позволяют найти
за несколько минут обратное преобразование любого алгоритма хэширования, если искомый пароль был просчитан
заранее в этих таблицах.


Результаты

Сейчас в проекте уже создано 900 ГБ таблиц, которые позволяют с вероятностью порядка 99% найти за несколько
минут обратное преобразование из хэша в любой пароль длиной до 7 символов (не только из букв, но также цифр
и многих спец-символов), зашифрованных по алгоритмам LanMan (авторизация в Windows), NT LanMan (авторизация
в Windows NT, в том числе сетевых доменах), MD2, MD4, MD5, SHA1, RIPEMD-160, Cisco PIX (большинство
маршрутизаторов), MySQL 3.23, MySQL SHA1 (базы данных).

Всем участникам проекта предоставляется возможность уже сейчас пользоваться полученной системой расшифровки
паролей в виде онлайн-сервиса - частота использования сервиса одним участником неограничена, но ограничено
время действия каждого аккаунта. Для продления времени доступа участникам предлагается рассчитывать новые
таблицы, увеличивающие количество поддерживаемых алгоритмов и комбинаций паролей. Обычно на расчёт таблицы
уходит от нескольких дней до недели процессорного времени (2 ГГц) - за каждую таблицу время доступа продляется
на 2 недели. Естественно, можно использовать любое количество компьютеров под одним аккаунтом - я обеспечил
себе доступ на 3 года вперёд за 3 месяца - впрочем, мой вклад составляет около 10% всего проекта.


Особенности

Pro
  • Доступ к мощной системе расшифровки паролей, которую можно использовать в своих целях.
  • Консольный клиент с открытыми исходниками, которые компилируются под большинством О/С. На сайте
    выложены готовые бинарники под Windows, MacOS и OpenBSD. Можно считать и под FreeBSD, собрав клиент
    из исходников самостоятельно.
  • Может продолжать расчёт таблицы после зависания машины или некорректного прерывания процесса.
  • Почти не требует памяти при расчётах (2 МБ).
  • Почти не требует входящего трафика (задание для 1 таблицы занимает несколько байт).
  • В комплект клиента кроме генератора таблиц включена программа, которая может расшифровывать
    конкретные пароли по полученным таблицам. Кроме того, в них легко добавляются новые алгоритмы хэширования
    и наборы перебираемых символов. Таким образом, есть всё что нужно для создания собственного распределённого
    проекта, аналогичного RainbowCrack. wink.gif
Con
  • Рассчитанные таблицы занимают 640 МБ или около 300 МБ в архивированном виде (лучше всего жмёт 7-Zip).
    В результате сжатый трафик с одной машины, считающей таблицы круглосуточно, может быть до 3 ГБ в месяц.
    Хотя это лишь исходящий трафик, который для многих пользователей бесплатен.
  • В готовых нынче таблицах нет паролей из символов кириллицы, и пока нет из букв смешанного регистра - только
    прописные, либо только строчные. В будущем вероятно доберутся и до смешанных. С другой стороны, самый
    интересный вид паролей - LanMan (Windows) - вообще не различает строчные/прописные символы. Более того,
    из-за Microsoft'овской специфики, по таблицам до 7 символов оказалось возможно расшифровывать Windows-пароли
    длиной до 14 символов!
  • Система получения и отправки заданий не автоматизирована. Таблицы для обсчёта резервируются на сайте
    самостоятельно и скармливаются клиенту (можно набрать любой объём заданий). Результаты заливаются на сервер
    по FTP (поддерживается докачка smile.gif или HTTP.
  • Нет ни командной, ни личной статистики участников - каждый видит только суммарные результаты проекта и
    собственный объём посчитанных таблиц, пропорциональный своему времени доступа к сервису по расшифровке
    паролей. Таким образом участвуют те, кто лично заинтересован в использовании результатов проекта.
Русский аналог проекта

Не так давно у этого проекта был и русский аналог - http://passcracking.ru, предоставлявший всем желающим
свободный доступ к системе расшифровки паролей по принципу всё тех же Rainbow Tables, но у него меньше
готовых таблиц - только по алгоритму MD5. Все таблицы рассчитываются создателем проекта самостоятельно,
работает он на базе Московского Авиационного Института.

После переписки с ним выяснил (AlexeyPetrov), что он тоже заинтересован в распределённых вычислениях
таблиц, но лень было организовать их хотя бы на уровне проекта RainbowCrack. smile.gif

Сейчас русский проект почему-то недоступен. Возможно откроется снова чуть позже, т.к. планы у создателя
были просто наполеоновские! smile.gif


Ссылки по теме:Project statistics


Name of ProjectDistributed Rainbow Table
Total credit granted:4,503,676 cobblestones
Total Recent Avg Credit:0 cobblestones
Total users: 931 users
Total teams: 222 teams
Total hosts: 2,357 host(s)
Total Countries: 58 different countries


----------------------------------------------------------------------------------------------------------
Статус сервера выдачи заданий:



http://wiki.bc-team.org/index.php?title=TMRL_(DRTG)/en
Rilian
(nikelong @ Dec 23 2006, 04:25 PM) *

Кому интересно об Rainbow tables читаем здесь:

https://distributed.ru/?pro.rc

ТЮ... они бы еще МД1 таблицу сделали. сейчас любой уважающий себя шифровальщик модифицирует код алгоритмов шифрования. например, примитивным образом md5(md5(x)+super_cool_own_function(x)) и все. Юх что rainbow найдет. Тем более у спецслужб правительств такие таблицы уже давно сделаны. А взламывать пароли "простого народа" нет смысла вообще.
Freak_Python
там сказано що за допомогою цих таблиць можуть розшифрувати 7-значний пароль з вірогідністю 99%, яким чином вони підбирають паролі? починаючи з паролів по 1,2,3-символів і т.д. ? тобто пароль в 8 знаків вони вже не можуть взнати, чи просто вірогідність буде менша?
Rilian
нет. они просто записывают таблицу, типа

для алгоритма Х

a ~ хэш=asdfa6sd5f8a7s65df
b ~ asdf8t69as8df76t9a8sd7ft

и т д. (до того знака до которого они досчитали)

то есть, при ЛЮБОМ изменении исходного алгоритма шифрования, вся их "работа" становится полностью бесполезной. Примерно как РЦ5 проект smile.gif (сорри)
Freak_Python
так вони не розуміють це? чи просто хочуть мати свої власні таблиці для розповсюдженого алгоритму? blush.gif
Rilian
они очевидно этого не понимают и надеются на медленное обновление софта у пользователей. примитивное md5(md5(X)) обязывает их построить хэш таблицу до 32х символов включительно. Но если встроить любую промежуточную функцию среди тех же мд5, например которая заменияет "а" на "@" и т д то создание таблицы сразу становится бесполезным. или очень ресурсоемким, буквально до создания таблицы для каждого софт продукта отдельно.
nikelong
вообщем дал пищу для размышлений ;-)
Burzum
(Rilian @ Dec 23 2006, 05:25 PM) *

(nikelong @ Dec 23 2006, 04:25 PM) *

Кому интересно об Rainbow tables читаем здесь:

https://distributed.ru/?pro.rc

ТЮ... они бы еще МД1 таблицу сделали. сейчас любой уважающий себя шифровальщик модифицирует код алгоритмов шифрования. например, примитивным образом md5(md5(x)+super_cool_own_function(x)) и все. Юх что rainbow найдет. Тем более у спецслужб правительств такие таблицы уже давно сделаны. А взламывать пароли "простого народа" нет смысла вообще.

По-перше, ти не зрозумів, що рейнбоу шукає. Те, що треба, знайде. А md5(md5(x)+super_cool_own_function(x)) (т. зв. юх) - це не те, що рейнбоу шукає. Ти правий, таблиці у спецслужб є давно, для їх розрахунку треба не так вже й багато потужностей (в порівнянні, наприклад, з РЦ5-72). Щодо простого народу: мені самому у зв"язку з моєю роботою кілька разів метод був згодився, ДУЖЕ. Простий народ не здогадався зробити чотири рази хешування паролю перед тим, як встановити його на віндовс (базу даних). Просто... тут не стоїть глобальне питання (як, наприклад, порятунок всесвіту від усіх хвороб і назавжди smile.gif bleh.gif )

(Freak_Python @ Dec 23 2006, 07:32 PM) *

там сказано що за допомогою цих таблиць можуть розшифрувати 7-значний пароль з вірогідністю 99%, яким чином вони підбирають паролі? починаючи з паролів по 1,2,3-символів і т.д. ? тобто пароль в 8 знаків вони вже не можуть взнати, чи просто вірогідність буде менша?

В базі даних зберігається хеш - зашифрований (і, можливо, скорочений) пароль. Знайти хеш з паролю - просто, навпаки - ДУЖЕ важко. Але різні (зовсім несхожі) паролі можуть мати однакові хеші. рейнбоу тейблс - записані особливим чином хеші великої купи паролів. коли потрібно, з таблиці дістають хеш і дивляться, який пароль йому відповідає. Все, можна вводити цей пароль - він пройде перевірку. Це так, в кількох словах.
Розмір таблиць становить десятки гігабайт (упаковані звичайним архіватором і методом компактного запису - т. зв. рейнбоу) і чим довший пароль, тим більша таблиця для нього потрібна. В цьому обмеження РТ.

(Rilian @ Dec 23 2006, 07:38 PM) *

нет. они просто записывают таблицу, типа

для алгоритма Х

a ~ хэш=asdfa6sd5f8a7s65df
b ~ asdf8t69as8df76t9a8sd7ft

и т д. (до того знака до которого они досчитали)

то есть, при ЛЮБОМ изменении исходного алгоритма шифрования, вся их "работа" становится полностью бесполезной. Примерно как РЦ5 проект smile.gif (сорри)

робота не стає "бесполєзною" (сорі, не перекладу слово)! Над таблицею написано "таблиця хешів для алгоритму ікс, довжина паролю - ігрек байт". Над нею не написано "супер-пупер-мега-таблиця для всіх алгоритмів" smile.gif

(Freak_Python @ Dec 23 2006, 08:24 PM) *

так вони не розуміють це? чи просто хочуть мати свої власні таблиці для розповсюдженого алгоритму? blush.gif

Ніхто нічого не розповсюджує. Просто це дає змогу заходити у віндовс (в найпростішому випадку) на чужій машині. Скільки існує вінХР? а скільки разів ви чули про зміну методу шифрування паролів для ХР? порахуй кілька місяців - користуйся кілька років.

(Rilian @ Dec 23 2006, 08:33 PM) *

они очевидно этого не понимают и надеются на медленное обновление софта у пользователей. примитивное md5(md5(X)) обязывает их построить хэш таблицу до 32х символов включительно. Но если встроить любую промежуточную функцию среди тех же мд5, например которая заменияет "а" на "@" и т д то создание таблицы сразу становится бесполезным. или очень ресурсоемким, буквально до создания таблицы для каждого софт продукта отдельно.


Найближче до істини з усіх попередніх твоїх постів!

(nikelong @ Dec 24 2006, 01:13 AM) *

вообщем дал пищу для размышлений ;-)

wink2.gif

Читайте книги - в них все написано!
Rilian
Насколько я знаю, проще зайти "в виндовс" с "загрузочного диска" и сбросить пароль администратора. Дальше делаешь что хочешь. Сам недавно так делал когда потерял свой пароль.

А зачем они делают таблицы для MD2 и MD4 которые уже ни один разработчик не использует, я не понимаю
Burzum
(Rilian @ Dec 24 2006, 04:23 PM) *

Насколько я знаю, проще зайти "в виндовс" с "загрузочного диска" и сбросить пароль администратора.

а якщо все потрібно зробити все безслідно? wink2.gif

Взагалі-то, недавно знайшли діри й в MD5, тому...
Тому треба перевіряти криптоалгоритми. В тому числі й засобами розподілених обчислень))
nikelong
Поскольку проект числится завершенным, переношу его в архив.
Death
http://plain-text.info/ есть у вас есть хеш и вы хотите вспомнить пароль )))
.
Invision Power Board © 2001-2024 Invision Power Services, Inc.