Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];

Вниз

Нас опять взломали, извините.   Найти похожие ветки 

 
Prohodil Mimo ©   (2004-08-31 11:39) [80]


> более 80% взломов совершается через скрипты.


тогда надо убрать все скрипты :о)


 
Reindeer Moss Eater ©   (2004-08-31 11:39) [81]

pasha_golub ©

Это для реализации MD5 на чем именно приведены цифры?
Какова будет производительность реализации на движке исполняющем скрипт?
Или какова она будет если в скрипте MD5 недоступно и потребуется подключение внешних библиотек?

Вопрос-то не такой очевидный как кажется.


 
Knight ©   (2004-08-31 11:41) [82]

А может проще анкеты в базу загнать?


 
pasha_golub ©   (2004-08-31 11:43) [83]

Reindeer Moss Eater ©   (31.08.04 11:39) [81]

Это для реализации MD5 на чем именно приведены цифры?
Больше чем в пдф сказано сказать не могу, ибо не знаю.

Какова будет производительность реализации на движке исполняющем скрипт?
Если реализовать хеш-функцию в теле скрипта я думаю больших различий не увидим.

Или какова она будет если в скрипте MD5 недоступно и потребуется подключение внешних библиотек?
Доступно оно всегда, ибо можно просто реализовать алгоритм. А можно и подключить. Но про время реакции ничего сказать не могу - не знаю.


 
Карелин Артем ©   (2004-08-31 11:44) [84]

Я делал генератор хэшей. MD5 генерация из 16-байтового ключа и запись в базу FB идет порядка 2000 хэшей/сек.


 
Карелин Артем ©   (2004-08-31 11:44) [85]

На целероне 900


 
Reindeer Moss Eater ©   (2004-08-31 11:45) [86]

Карелин Артем ©

Сайт - это не win32 Delphi приложение.


 
QuestionX   (2004-08-31 11:46) [87]


> Reindeer Moss Eater ©   (31.08.04 11:39) [81]
> pasha_golub ©
>
> Это для реализации MD5 на чем именно приведены цифры?
> Какова будет производительность реализации на движке исполняющем
> скрипт?
> Или какова она будет если в скрипте MD5 недоступно и потребуется
> подключение внешних библиотек?
>
> Вопрос-то не такой очевидный как кажется.

А вопрос-то очевиднее чем кажется. Поднимаем глаза наверх и внимательно смотрим на строку адрес. видим forum.pl. Вспоминаем perl, если знаем его конечно, и вспоминаем, что там есть встроенная функция md5(), еще раз вспоминаем perl, поле чего напрягая серое вещество, если таковое имеется, отвечаем на свои вопросы.


 
Romkin ©   (2004-08-31 11:49) [88]

Алгоритм:
1. Пароль шифруется md5 и не подлежит восстановлению.
2. Смена пароля: вводится адрес почты. Форма уже есть.
а. Происходит поиск анкеты с данным адресом почты.
б. В найденной анкете проверяется дата и время предыдущего запроса на смену пароля. Если с прошлого запроса истекло N часов (3, например), то следующий пункт, иначе - вежливый посыл
в. В анкете устанавливается текущие дата и время запроса пароля.
г. Генерируется случайное число (rid)
д. В файл смены записывается номер анкеты, текущая дата и rid.
е. На указанный адрес отправляется письмо с инструкциями и ссылкой на скрипт с rid в качестве параметра.
ж. При заходе на сайт по данной ссылке требуется подтверждение о смене. Если ответ положительный, пароль из файла смены хешируется, записывается в анкету, возможно, сразу показывается пользователю. И отсылается письмо с новым паролем.
з. Запись в файле смены пароля для данной анкеты удаляется
Примечание: очистка файла смены (сборка мусора).
1. при вводе нового топика, проверяется, первый ли он на сегодня. Если да, то производится сканирование файла смены с удалением всех записей с датами, меньше нынешней.
2. При запросе о смене пароля удаляется запись о предыдущей смене пароля для этой же анкеты.

Нормально? Вопрос: каковы уязвимости?


 
Reindeer Moss Eater ©   (2004-08-31 11:49) [89]

QuestionX  

Perl - всего лишь язык.
И есть множество движков его выполняющих.
И производительность от них зависит, а не от перла.


 
pasha_golub ©   (2004-08-31 11:51) [90]

Romkin ©   (31.08.04 11:49) [88]
Проверка пустого пароля.


 
QuestionX   (2004-08-31 11:55) [91]


> Reindeer Moss Eater ©   (31.08.04 11:49) [89]
> QuestionX  
>
> Perl - всего лишь язык.
> И есть множество движков его выполняющих.
> И производительность от них зависит, а не от перла.

Реализаций перла, которые широко используются очень мало, и я сильно сомневаюсь, что в каждой из них по-разному выполняется функция md5(). А так как я могу с уверенностью говорить за скорость win и nix версий perl"a выпущенных еще в 2001, то с уверенность предположу, что и в новых версиях md5() не выполняется настолько дольше, чтобы смазать картину.


 
Romkin ©   (2004-08-31 11:56) [92]

pasha_golub ©  (31.08.04 11:51) [90] Ну эт само собой. Там еще много проверок делать надо :))
Усиление: В файл смены пароля пишется уже хешированный пароль, а не хешированный посылается сразу в письме, при подтверждении по ссылке пароль просто перемещается в анкету.
Здесь уже пароль в раскрытом виде идет только в письме :))


 
Reindeer Moss Eater ©   (2004-08-31 11:58) [93]

QuestionX

Еще раз:
Реализации перла и его диалекты здесь совершенно не при чем.


 
QuestionX   (2004-08-31 12:05) [94]


> Reindeer Moss Eater ©   (31.08.04 11:58) [93]
> Еще раз:
> Реализации перла и его диалекты здесь совершенно не при
> чем.

Еще раз. Функция встроенная она написана Си, на котором был написан интерпретатор perl"a и скорость ее исполнения зависит только от бинарника. И поскольку в бинарниках она вряд ли претерпевает изменения от версии к версии, то скорость ее выполнения можно считать постоянной практически для всех perl"ов. Она быстро работала и работает.


 
VMcL ©   (2004-08-31 12:16) [95]

>>pasha_golub ©  (31.08.04 11:39) [79]

>Скоко? Месяц? Я вот имею инфу, что 10^62 лет.

Я дома когда-то написал подборщик паролей, захешированных по MD5 (собственно алгоритм MD5 написан на Object Pascal"е). AFAIR, пароль из 5-ти англ. букв подбирается за несколько минут (Athlon XP 1800+ @ 1533 MHz). Могу дома специально замерять ради интереса.


 
Reindeer Moss Eater ©   (2004-08-31 12:18) [96]

Функция встроенная она написана Си,

И она компилируется разными компиляторами для разных платформ.

И по разному импортируется из разных библиотек.
На разных опять же платформах.
Неужели так трудно понять о чем я?


 
VMcL ©   (2004-08-31 12:19) [97]

>>Reindeer Moss Eater

AFAIK & ИМХО, по сравнению с записью постов в БД и другими сопровождающими операциями время вычисления MD5 для строки пароля из нескольких (пускай даже 20) символов ничтожно мало.


 
Reindeer Moss Eater ©   (2004-08-31 12:22) [98]

VMcL ©

Я нигде и не утверждал, что оно будет неприемлимо большим.
Я говорил про оценку этого времени. И интенсивность постов.


 
pasha_golub ©   (2004-08-31 12:36) [99]

VMcL ©   (31.08.04 12:16) [95]
Не знаю, я ссылался на документ из моего поста:
http://re.mipt.ru/infsec/2004/essay/2004_MD5_Message-Digest_Algorithm__Strelnikov.pdf


 
QuestionX   (2004-08-31 12:39) [100]


> Reindeer Moss Eater ©   (31.08.04 12:18) [96]
> Функция встроенная она написана Си,
>
> И она компилируется разными компиляторами для разных платформ.
>
> И по разному импортируется из разных библиотек.
> На разных опять же платформах.
> Неужели так трудно понять о чем я?

Понять тебя не трудно - видимо не помнишь сам алгоритм md5 :) В том-то все и дело, что компиляция различными компиляторами (коих не так и много под freebsd) не сильно влияет на скорость выполнения алгоритма MD5 - не веришь, проверь профайлером. Скорость алгоритма может сильно варьироваться от его реализации (коих не менее трех, отличающихся в основном оптимизацией функций f,g,h,i и методом обработки промежуточных блоков) но вот в perl"e используется от версии к версии только одна и та же.


 
Piter ©   (2004-08-31 12:40) [101]

Думаю, стоит сменить пароли. Я это уже сделал...

Хотя, если дыру еще не залатали - то это пока не нужно...


 
pasha_golub ©   (2004-08-31 12:41) [102]

VMcL ©   (31.08.04 12:16) [95]
К тому же ограничена область поиска: 26 букв, в итоге имеем около 11 миллионов различных вариантов, а это действительно не так много.


 
pasha_golub ©   (2004-08-31 12:46) [103]

И в догонку к моему посту 102.

Если известно кол-во символов в пароле и множество символов использованных, то можно грубой силой. А если не известно кол-во символов, то врядли. Если я ошибаюсь, поправте меня.


 
wisekaa ©   (2004-08-31 12:51) [104]

> [88] Romkin ©   (31.08.04 11:49)
Надо предусмотреть контроль за дублированием почтовых ящиков


 
McSimm ©   (2004-08-31 12:52) [105]


> Думаю, стоит сменить пароли. Я это уже сделал...
>
> Хотя, если дыру еще не залатали - то это пока не нужно...


Нет, не залатали. Мне пока не удалось найти дыру, через которую это юное дарование влезло на этот раз.

В прошлый раз он стащил мой пароль на постороннем давно забытом сайте.


 
Reindeer Moss Eater ©   (2004-08-31 13:03) [106]

QuestionX
Ты знаком с местной достопримечательностью по имени "интернал сервер еррор" и иже с ним?

Она (достопримечательность), по твоему, появляется от избытка ресурсов на хосте, или может по мановению волшебной палочки?


 
QuestionX   (2004-08-31 13:30) [107]


> Reindeer Moss Eater ©   (31.08.04 13:03) [106]
> QuestionX
> Ты знаком с местной достопримечательностью по имени "интернал
> сервер еррор" и иже с ним?
>
> Она (достопримечательность), по твоему, появляется от избытка
> ресурсов на хосте, или может по мановению волшебной палочки?

А ты замерь профайлером md5() и поймешь , что "интернал сервер еррор" чаще являться народу не станет, и палочки тут не причем


 
VMcL ©   (2004-08-31 13:33) [108]

>>pasha_golub ©  (31.08.04 12:41) [102]

>К тому же ограничена область поиска: 26 букв

Даже если не использовать символы  с кодами >127 в пароле, то:
52 англ. заглавные и строчные буквы, 10 цифр, знаки препинания, скобки, пробел (даже пробел:), кавычки, и т. п.

Итого где-то 80..90 символов. Количество вариантов считается по ф-ле: (к-во вариантов символа) в степени (длина пароля).

То есть, если подбирать конкретно, например, 5-символный пароль из только англ. букв, то в худшем случае нужно перебрать 52^5 = ~3,8 млрд. вариантов. Опять же, у меня, например, паролей меньше восьми разнорегистровых англ. символов обычно нет. Тогда "всего лишь": 52^8 = ~ 53,5 * 10<sup>12</sup> вариантов.

P.S. Надо будет дома всё-таки замерять скорость подбора.

>>pasha_golub ©  (31.08.04 12:46) [103]

>А если не известно кол-во символов, то врядли.

Почему это? Можно. Начинаем с 1-символьных паролей. Потом 2-х, потом 3-х, ... и так до тех пор, пока либо не найдём пароль, либо не сработает программное ограничение на длину пароля.

P.S. Забыл. Перед односимольными паролями проверяем еще 0-символьные, то бишь пустую строку :-)


 
VMcL ©   (2004-08-31 13:33) [109]

>>pasha_golub ©  (31.08.04 12:41) [102]

>К тому же ограничена область поиска: 26 букв

Даже если не использовать символы  с кодами >127 в пароле, то:
52 англ. заглавные и строчные буквы, 10 цифр, знаки препинания, скобки, пробел (даже пробел:), кавычки, и т. п.

Итого где-то 80..90 символов. Количество вариантов считается по ф-ле: (к-во вариантов символа) в степени (длина пароля).

То есть, если подбирать конкретно, например, 5-символный пароль из только англ. букв, то в худшем случае нужно перебрать 52^5 = ~3,8 млрд. вариантов. Опять же, у меня, например, паролей меньше восьми разнорегистровых англ. символов обычно нет. Тогда "всего лишь": 52^8 = ~ 53,5 * 10<sup>12</sup> вариантов.

P.S. Надо будет дома всё-таки замерять скорость подбора.

>>pasha_golub ©  (31.08.04 12:46) [103]

>А если не известно кол-во символов, то врядли.

Почему это? Можно. Начинаем с 1-символьных паролей. Потом 2-х, потом 3-х, ... и так до тех пор, пока либо не найдём пароль, либо не сработает программное ограничение на длину пароля.

P.S. Забыл. Перед односимольными паролями проверяем еще 0-символьные, то бишь пустую строку :-)


 
pasha_golub ©   (2004-08-31 13:39) [110]

VMcL ©   (31.08.04 13:33) [109]
Да, было бы интересно узнать скорость грубого подбора.

Тогда у меня есть утяжеление. Хранить 2 суммы: первую сумму пароля, а вторую - перестановку букв пароля, например, четные буквы с нечетными. Будет две проверки, но сложность подбора (при условии, что атакующий не знает, каким образом совершенна перестановка) возрастает на порядок.


 
olookin ©   (2004-08-31 13:46) [111]

А может дать Нику черный значек или просто попросить вежливо. Думаю он сам все расскажет.


 
olookin ©   (2004-08-31 13:48) [112]

Имхо, лучше привлечь хакера на свою сторону, чем бороться с ним.


 
VMcL ©   (2004-08-31 13:53) [113]

>>pasha_golub ©  (31.08.04 13:39) [110]

>Хранить 2 суммы...

Тогда он подберет пароль только по первой сумме. AFAIK, очень высока вероятность того, что он будет верный (для MD5). А если даже и нет, то он может продолжить перебор по той же первой сумме.

>(при условии, что атакующий не знает, каким образом совершенна перестановка)

Если полагаться на это, то можно вообше пароли не хешировать :-)

P.S.
У меня тоже есть утяжеление, только очень уж смешное:
<?php
 $hash_for_db = md5(md5($password));
?>


Теперь взломщику придётся двойной подбор производить, а это ого-го )))


 
VMcL ©   (2004-08-31 13:55) [114]

>>olookin ©  (31.08.04 13:48) [112]

ИМХО, тоже "лучше привлечь", только не на сторону, а к уголовной ответственности.


 
esu   (2004-08-31 14:00) [115]

pasha_golub ©   (31.08.04 13:39) [110]
Так что пользователю вводить и пароль и перестановку ? :)


 
Danilka ©   (2004-08-31 14:00) [116]

А все-таки, чем спасет этот МД5, если есть полный доступ ко всем файлам?


 
default ©   (2004-08-31 14:02) [117]

"Вот почему в некоторых странах можно чемодан на улице оставить, а позже прийти и найти его на том же самом месте? Ведь у людей даже мысли не возникнет, что его можно взять... или, что можно обокрасть незапертую квартиру... а тут...  "
вот здесь ключ...я думаю дело не в гениальности этого Nik8 а в том что написано в кавычках
надо кому-то(лучше группе)серьёзно заняться безопасностью...бесплатно не знаю кто правда будет этим заниматься...


 
VMcL ©   (2004-08-31 14:06) [118]

>>Danilka ©  (31.08.04 14:00) [116]

Если есть полный доступ (т.е. и на запись), то ничем. А если только чтение, то значительно усложнит задачу взлома паролей.


 
olookin ©   (2004-08-31 14:10) [119]

VMcL ©   (31.08.04 13:55) [114]
Его не "привлечешь" к уголовной ответственности. Он гражданин другого государства :( Даже если бы был русский, то это было бы сложно. А если просто вежливо попросить показать где дыра, сказать спасибо, что он дыру нашел, он сам ее покажет (надеюсь).
И у меня складывается такое впечатление, что администаторам этого сайта легче принести извинения нам за потерю нашей персональной информации, чем поступится своей тщеславностью и самолюбием.


 
Piter ©   (2004-08-31 14:10) [120]

Gero ©   (31.08.04 10:13) [18]
Думаю человека два, хорошо владеющих Perl"ом очень не помешали бы.


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

Reindeer Moss Eater ©   (31.08.04 10:13) [19]
Ломают не скрипты, а хосты на которых лежат эти скрипты


плохо ты понимаешь. Ты думаешь взломали апач хостера? Нет, ломанули именно через скрипты...

cyborg ©   (31.08.04 10:29) [34]
ввёл в браузере delphimaster/password.txt и уаля!


ты что, правда думаешь, что Максим такой тупой? Что прямо в браузере ввел и получил пароль? :)

Reindeer Moss Eater ©   (31.08.04 11:58) [93]

странная у тебя тяга. Ну вот не хочешь ты, чтобы парои шифровали и все тут. Прямо уперся аки бык.
Тебе то что? Или может ты сначала попробуешь, засечешь время вместо того, чтобы знаниями сверкать?

Ты попробуй, засеки время - вот и посмотрим сколько на это будет тратится...

Athlon XP 1800+ @ 1533 MHz

о! У меня тоже самое - Athlon 1800+.
У тебя случаем не 256 Mb оперативы и 80 Gb жесткий диск Seagate?



Страницы: 1 2 3 4 5 6 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.69 MB
Время: 0.045 c
1-1095352041
panov
2004-09-16 20:27
2004.10.03
Ошибка в потоке


4-1093637559
dRake
2004-08-28 00:12
2004.10.03
Вывод текста с прозрачностью


14-1094835390
Логистик
2004-09-10 20:56
2004.10.03
Куда пропал mbo с пятничными задачами?


11-1081321098
Delphi5.01
2004-04-07 10:58
2004.10.03
[Error] Never-build package CoolForm_D6 requires always-build p


14-1094899675
Иванушка-Программист
2004-09-11 14:47
2004.10.03
Самые перспективные?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский