Просьба помочь с тестированием!

Discussion in 'Криптография, расшифровка хешей' started by KIR@PRO, 21 Oct 2013.

  1. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    Тестируем. Нужна помощь.

    Приветствую всех!

    Предлагаю всем желающим протестировать брутер MD5 под linux
    http://rnsd.ru/md5 файл удален! Внось заинтересовавшимся, в ЛС.

    компилируем так:
    Запуск:
    Теперь подробнее о параметрах:
    После запуска некоторое время ни чего не отображается, так как идет обработка параметров и файла. После этого будет произведен запуск потоков и появится надпись:
    которая будет обновляться раз в 3 секунды, первое значение: "активные потоки", второе значение: "изначально запущенные потоки".
    При нахождении пароля, рядом с этой надписью появится сообщение:
    Не обращайте внимание на последний символ "" Это потому, что вывод еще не доработан, идет тестирование основных функций.

    По окончанию работы появится красная надпись:
    Ну тут все понятно, сколько проверено паролей и сколько паролей найдено. Такая надпись появится для каждого из потоков.

    Ну и чуть ниже появится:
    Последнее сообщение отладочное =) не пугайтесь. 0x3e это нормальный код завершения.

    Теоретически должен поглощать файлы, размер которых меньше (кол-ва оперативки)*2 и не превышает 4Гб.
    Так что пробуйте.

    Ах да чуть не забыл, прошу еще запускать между двух вызовов date, как то так:
    эдакий счетчик производительности.
    Отписывайтесь здесь, копируя вывод программы, и характеристики железа.

    Заранее благодарю за помощь!



    ADD: версия для i386
     
    _________________________
    #1 KIR@PRO, 21 Oct 2013
    Last edited: 8 Jan 2014
    1 person likes this.
  2. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    Куда подевались все бутеры? Или все на форточках?
     
    _________________________
  3. Sum.cogitans

    Sum.cogitans Elder - Старейшина

    Joined:
    7 Sep 2013
    Messages:
    173
    Likes Received:
    32
    Reputations:
    19
    Рабочие сервера жалко, вот под OSx брут нормальный, я пищал бы от радости.

    Если совсем уж никто не откликнется, моякни в личку, есть 20+ площадок с разной конфигурацией FreeBSD\CentOS. Можно будет попробовать погонять на выходные.
     
  4. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    Ок. двух площадок будет достаточно...
     
    _________________________
  5. Leopard_

    Leopard_ Elder - Старейшина

    Joined:
    24 Jul 2012
    Messages:
    69
    Likes Received:
    15
    Reputations:
    21
    И какая же главная цель этого брутера ?
     
  6. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    хм... и вправду... а зачем нужны брутеры?

    p.s. брутер в дальнейшем планируется интегрировать в сервис, аналогичный hashcracking.ru и прочее. А вообще писался в рамках освоения asm в linux.
     
    _________________________
  7. КрепЁж

    КрепЁж Banned

    Joined:
    12 Apr 2013
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    Дашь исходники посмотреть?
     
  8. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    Может быть позже, если доделаю... Пока что, жду помощи в тестировании.

    p.s. по сути это и есть исходники, только в не совсем удобочитаемом виде.
     
    _________________________
  9. Leopard_

    Leopard_ Elder - Старейшина

    Joined:
    24 Jul 2012
    Messages:
    69
    Likes Received:
    15
    Reputations:
    21
    Я смог поглядеть на кусок кода , отвечающий за генерацию хеша md5 и там все очень далеко от идеала , если говорить про скорость работы .

    Компилируется нормально , но вот при запуске пишет
    ./brute -f ./md5.txt -c a -l 5:10
    Error, need check the source code! (Code 00000008)
     
    #9 Leopard_, 25 Oct 2013
    Last edited: 25 Oct 2013
  10. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    Ошибка из-за размера файла, он мал... мне надо на огромных файлах проверить...

    Что именно в годе излишне? хотя б один фрагмент...
     
    _________________________
  11. Leopard_

    Leopard_ Elder - Старейшина

    Joined:
    24 Jul 2012
    Messages:
    69
    Likes Received:
    15
    Reputations:
    21
    А какой минимальный размер файла ? мне надо узнать максимальную скорость , которая разумеется получится только при одном хеше ...


    Ну это очень долго объяснять , но у тебя сейчас скорость примерно в 2 раза меньше , чем это все возможно написать , если конечно не брать во внимание схему генерации очередного пароля и проверки хешей на валидность . Думаю что даже СИ компилятор сможет прооптимизировать лучше , чем сделано в данный момент ...
     
  12. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    после хеша на новую строку переведи дважды, это если хеш один.



    А вот теперь складывается впечатление, что ты "пустослов". И кода ты не смотрел.

    Всегда когда пишете о подобном, конкретизируйте иначе ваши слова пусты!
    Си лучше? но но... интересно как


    add: он по сути своей ориентирован на работу с большими Файлами. И к тому же, конечная оптимизация еще не проводилась, но основная её часть уже проведена.
     
    _________________________
    #12 KIR@PRO, 25 Oct 2013
    Last edited: 25 Oct 2013
  13. Leopard_

    Leopard_ Elder - Старейшина

    Joined:
    24 Jul 2012
    Messages:
    69
    Likes Received:
    15
    Reputations:
    21
    Вот кусок из твоей программы :
    mov eax, [esi+4]
    mov ebx, [esi+8]
    and ebx, eax
    not eax
    and eax, [esi+0Ch]
    or eax, ebx
    add eax, [esi]
    add eax, [edi]
    add eax, 0D76AA478h
    rol eax, 7
    add eax, [esi+4]
    mov [esi], eax



    А вот как это надо было сделать :
    mov eax, ecx
    xor eax, edx
    and eax, ebx
    xor eax, edx
    lea ebp, [ eax + 0D76AA478h + ebp ]
    add ebp, [edi]
    rol ebp, 7
    add ebp, ebx


    Как говорится , почуствуйте разницу , а заодно всю мощь и красоту ассемблера ;)
     
  14. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    Что, что это за ересь?
    Ты бы для начала обусловил где, что у тебя находится, на начало этого кода.


    Ну предположим, что на начало кода, в ecx находится "B".
    Что находится в edx и ebx?


    Безусловно радует, что вы прочли некоторые статьи по оптимизации и предложили использовать
    вместо пары Add
    Однако не пойму почему вместо приемника используется ebp, а не eax, вероятный копипаст из статьи???
    Прошу заметить, что такая оптимизация проводится на последнем этапе разработки, так сказать "финальная оптимизация".
     
    _________________________
    #14 KIR@PRO, 25 Oct 2013
    Last edited: 25 Oct 2013
  15. Leopard_

    Leopard_ Elder - Старейшина

    Joined:
    24 Jul 2012
    Messages:
    69
    Likes Received:
    15
    Reputations:
    21
    Это самые первые строчки вычисления хеша в твоем коде , такие вещи надо бы знать ...
     
  16. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    Я в курсе, что это первый проход блока FF, я спрашивал про твой "аналог".

    Прочитай сообщение предыдущее, я его дописывал в то время, когда ты ответил.
     
    _________________________
  17. Leopard_

    Leopard_ Elder - Старейшина

    Joined:
    24 Jul 2012
    Messages:
    69
    Likes Received:
    15
    Reputations:
    21
    На начало кода, в ecx как и положено находится "С"


    mov esi, 67452301h
    mov ebx, 0EFCDAB89h
    mov ecx, 98BADCFEh
    mov edx, 10325476h


    mov eax, ecx
    xor eax, edx
    and eax, ebx
    xor eax, edx
    lea esi, [ eax + 0D76AA478h + esi ]
    add esi, dword [ edi + 00h ]
    rol esi, 7
    add esi, ebx
     
  18. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    Вынужден согласиться такой вариант, более оптимален, правда чуть с другими регистрами, но это уже не суть важно.

    p.s. ну как удалось запустить с одним хешем?
     
    _________________________
  19. Leopard_

    Leopard_ Elder - Старейшина

    Joined:
    24 Jul 2012
    Messages:
    69
    Likes Received:
    15
    Reputations:
    21
    Конечно работает ;) , но скорость перебора паролей не показывается , найденые пароли в консоли затираются , а в файл не сохраняются .


    /brute -f ./hashs.txt -l 5 -c a -t 1
    Work thread: 1/1 ...Thread checked 11881376 passwords, found 1 password.
    Work thread: 0/1 ...
    In file 2 uniq hash, and 0 duplicate
    Program was finished. Return code: [00000038]





    Никаких статей я не читаю , а только сам иногда их пишу ...
    В качестве приемника тут можно использовать все что угода , например ebp , это все от кодера зависит как ему надо сделать . А элементарные знания основых команд процессора и принциа их работы , а также практика и опыт позволяют писать такие как ты выразился "оптимизированные куски" , хотя это далеко не оптимизированный код и
    конструкции такого типа ( lea ebp, [ eax + 0D76AA478h + ebp ] ) должны писаться сразу , потому что дальше там все намного сложней и серьезней идет .


    И еще один момент - строчки в коде такие как "/var/www/Coding/md5/v1/pass_gen.txt'" говорят , что если на линус тачках стоит и запущен к примеру веб-сервак Апач с дефолтным путем установки , то с такой машины будут утекать все найденные пароли из этого файла ...
     
    #19 Leopard_, 26 Oct 2013
    Last edited: 26 Oct 2013
  20. Leopard_

    Leopard_ Elder - Старейшина

    Joined:
    24 Jul 2012
    Messages:
    69
    Likes Received:
    15
    Reputations:
    21
    КрепЁж , вот ссылка ( http://leopard.500mb.net/1.asm ) на дисассмеблированный текст , причем даже с человаческим названием ссылок , считай что это исходники , если прога полностью на асме написана . И еще отдельно ссылка ( http://leopard.500mb.net/md5.asm ) на сам код для генерации md5 хеша ;)
     
    1 person likes this.