Страница 3 из 4
Re: Безопасность
Добавлено: 02 фев 2017, 14:04
Olej
Olej писал(а):И имя пользователя и его пароль были скопированы из KeePassX - его кнопки на панели.
Это простуйший и очень эффективный путь тиражировать большое количество паролей внутри LAN!
Это делается
проще и
быстрее (меньшим числом действий), чем помнить + вводить с клавиатуры даже простой 8-символьный пароль на латинице!
Безопасность
Добавлено: 13 фев 2017, 13:22
Olej
Olej писал(а):Olej писал(а):в качестве пароля использовать его набранным на русской раскладке, в кодировке UTF-8, которая принята сейчас повсеместно в Linux:
Сложность пароля
Сложность пароля в компьютерной индустрии обычно оценивают в терминах информационной энтропии (понятие из теории информации), измеряемой в битах. Вместо количества попыток, которые необходимо предпринять для угадывания пароля, вычисляется логарифм по основанию 2 от этого числа, и полученное число называется количеством «битов энтропии» в пароле. Пароль со, скажем, 42-битной сложностью, посчитанной таким способом, будет соответствовать случайно сгенерированному паролю длиной в 42 бита. Другими словами, чтобы методом полного перебора найти пароль с 42-битной сложностью, необходимо создать 2^42 паролей и попытаться использовать их; один из 2^42 паролей окажется правильным. Согласно формуле при увеличении длины пароля на один бит количество возможных паролей удвоится, что сделает задачу атакующего в два раза сложнее. В среднем атакующий должен будет проверить половину из всех возможных паролей до того, как найдет правильный.
Если в качестве алфавита для генерации пароля используются все печатные символы ASCII (арабские цифры, строчные и заглавные буквы латинского алфавита: a-z, A-Z, 0-9, спецсимволы и знаки препинания) то число таких символов (алфавит) 95, а энтропия на 1 символ оценивается как 6,5699 бит. Тогда для 6-символьного пароля энтропия ~39 бит, а 8-символьного — 53 бит, а числа полного перебора составят, соответственно, 239 = 550×10⁹ и 253 = 9×10¹⁵. Рост сложности пароля от длины будет, как понятно, экспоненциальный.
Вот такой вот паролец
16 байт в UTF-8 кодировке (я совершенно не представляю что это означает ... может совершенную нецензурщину
![Подмигивает ;-)](./images/smilies/icon_e_wink.gif)
).
Как для такого пароля посчитать
потенциальную сложность этих 16 байт, определить
число попыток подбора такого пароля?
Вот такие вот 16 байт:
Код: Выделить всё
[olej@dell ~]$ echo '者の光預言' | hexdump -C
00000000 e8 80 85 e3 81 ae e5 85 89 e9 a0 90 e8 a8 80 0a |................|
00000010
Re: Безопасность
Добавлено: 13 фев 2017, 13:31
Olej
Olej писал(а):
Вот такие вот 16 байт:
Код: Выделить всё
[olej@dell ~]$ echo '者の光預言' | hexdump -C
00000000 e8 80 85 e3 81 ae e5 85 89 e9 a0 90 e8 a8 80 0a |................|
00000010
При более тщательном рассмотрении - 12 байт, 3 байт на символ
в этом алфавите ... заключительный '\n' (0a) во всех случаях добавляла echo команда:
Код: Выделить всё
[olej@dell ~]$ echo '者' | hexdump -b
0000000 350 200 205 012
0000004
[olej@dell ~]$ echo 'の' | hexdump -b
0000000 343 201 256 012
0000004
[olej@dell ~]$ echo '光' | hexdump -b
0000000 345 205 211 012
0000004
[olej@dell ~]$ echo '預' | hexdump -b
0000000 351 240 220 012
0000004
[olej@dell ~]$ echo '言' | hexdump -b
0000000 350 250 200 012
0000004
Re: Безопасность
Добавлено: 13 фев 2017, 14:52
Olej
Olej писал(а):
16 байт в UTF-8 кодировке (я совершенно не представляю что это означает ... может совершенную нецензурщину
![Подмигивает ;-)](./images/smilies/icon_e_wink.gif)
).
Как для такого пароля посчитать
потенциальную сложность этих 16 байт, определить
число попыток подбора такого пароля?
Вот такие вот 16 байт:
И обратно, опять же, те же 15 байт:
Код: Выделить всё
[olej@dell ~]$ echo -e '\0350\0200\0205\0343\0201\0256\0345\0205\0211\0351\0240\0220\0350\0250\0200'
者の光預言
Которые могут составлять очень даже неплохой пароль
![Смеётся :lol:](./images/smilies/icon_lol.gif)
Re: Безопасность
Добавлено: 13 фев 2017, 15:00
Olej
Olej писал(а):Которые могут составлять очень даже неплохой пароль
![Смеётся :lol:](./images/smilies/icon_lol.gif)
Но подобным образом могут быть сконструированы последовательности
5-ти или 6-ти байтных последовательностей,
допускаемых UTF-8, которые вообще
не имеют эквивалентов символов UNICODE.
См. подробности:
UTF-8 это.
Символы, закодированные в UTF-8, могут быть длиной до шести байт, однако стандарт Unicode не определяет символов выше 0x10ffff, поэтому символы Unicode могут иметь максимальный размер в 4 байта в UTF-8.
У байт не ASCII-символов старший бит всегда установлен в 1. При этом второй с конца бит всегда сброшен у не первых байт (у первых, соответственно, установлен). Поэтому если чтение производится с произвольного байта, то по второму биту можно определять промежуточные байты.
И у не первых байт остальные 6 младших бит содержат фрагмент кода символа (об этом ниже).
Количество байт, которое отводится под символ, всегда равно количеству идущих подряд старших бит со значением 1 в первом байте. Эти биты всегда завершаются битом со значением 0. Оставшиеся младшие биты первого байта составляют код символа. Отсюда обуславливается ограничение в 6 байт на символ — если выше, то в первом байте уже не хватит места под биты данных. Поэтому последовательности бит 111111102 (FE16) и 111111112 (FF16) общепринято считаются не используемыми в UTF-8.
Максимальный потенциал
До этого рассматривалось кодирование в UTF-8 лишь 32-битных целых без отрицательных значений. Следует отметить, что в стандарте Unicode используются символы лишь до кода 001FFFFF16 включительно. Поэтому даже 32-битных значений может вполне хватить, но этот раздел был включён для полноты изложения в случае использования UTF-8 для кодирования несимвольных данных.
В первом байте количество установленных старших бит определяет количество байт на символ. Оставшиеся младшие биты хранят старшие биты значения кода символа. Мы можем сделать допущение о том, что первый байт не обязан содержать данные. При этом допускаем, что все биты за пределами байта равны нулю. Тогда данные будут содержать только 6 бит в последующих байтах. Получается 36 бит для семибайтового символа и 42 бита — для восьмибайтового.
Re: Безопасность
Добавлено: 13 фев 2017, 16:22
Olej
Olej писал(а):
Но подобным образом могут быть сконструированы последовательности
5-ти или 6-ти байтных последовательностей,
допускаемых UTF-8, которые вообще
не имеют эквивалентов символов UNICODE.
См. подробности:
UTF-8 это.
Тем более, что
один и тот же локализованный символ в UTF-8 может иметь несколько
эквивалентных (корректных, 2-х, 3-х, 4-х, 5-ти, 6-ти бит) представлений ... из которых для алфавитных представлений выбирается представление наименьшей длины.
См.
UTF-8 - символ "год" на тамильском языке, эквивалентные представления:
Код: Выделить всё
[olej@dell ~]$ echo -e "\xE0\xAF\xB5"
௵
[olej@dell ~]$ echo -en "\xE0\xAF\xB5" | wc -m -c
1 3
[olej@dell ~]$ echo -en "\xF0\x80\xAF\xB5" | wc -m -c
0 4
[olej@dell ~]$ echo -en "\xF8\x80\x80\xAF\xB5" | wc -m -c
0 5
[olej@dell ~]$ echo -en "\xFC\x80\x80\x80\xAF\xB5" | wc -m -c
0 6
[olej@dell ~]$ echo -e "\xFC\x80\x80\x80\xAF\xB5"
������
(3, 4, 5 и 6 байтные представления)
И вообще, из существующих наборов UNICODE можно подобрать для составления паролей совершенно занятные комбинации символов... особенно если предполагать хранить пароли в программных хранилищах ... см. "таблица символов":
- музыкальные символы
- домино
- слоги канадских аборигенов
...
Их даже сюда редактор форума вставить-показать не позволяет: SQL error...
![Удивлён :-o](./images/smilies/icon_e_surprised.gif)
(и это хороший признак).
Re: Безопасность
Добавлено: 14 фев 2017, 15:23
Olej
Olej писал(а):
И вообще, из существующих наборов UNICODE можно подобрать для составления паролей совершенно занятные комбинации символов... особенно если предполагать хранить пароли в программных хранилищах ... см. "таблица символов":
- музыкальные символы
- домино
- слоги канадских аборигенов
...
Их даже сюда редактор форума вставить-показать не позволяет: SQL error...
![Удивлён :-o](./images/smilies/icon_e_surprised.gif)
(и это хороший признак).
Код: Выделить всё
[olej@dell ~]$ echo '\xf0\x9f\x81\x9a' | wc -mc
17 17
[olej@dell ~]$ echo -e '\xf0\x9f\x81\x9a' | wc -mc
2 5
[olej@dell ~]$ echo -en '\xf0\x9f\x81\x9a' | wc -mc
1 4
[olej@dell ~]$ echo -en '\xf0\x9d\x84\x9e' | wc -mc
1 4
[olej@dell ~]$ echo -en '\xf0\x9d\x86\x91' | wc -mc
1 4
[olej@dell ~]$ echo -en '\xf0\x90\x85\x87' | wc -mc
1 4
И даже
легальные продолжения таких 4-байтовых последовательностей
символа (одиночного!) на 5 или 6 байт:
Код: Выделить всё
[olej@dell ~]$ echo -en '\xf0\x90\x85\x80\x87' | wc -mc
1 5
[olej@dell ~]$ echo -en '\xf0\x90\x85\x80\x80\x87' | wc -mc
1 6
И даже за пределы 6 байт длины, предусмотренных (допускаемых) представлением UTF-8:
Код: Выделить всё
[olej@dell Antihack]$ echo -en '\xf0\x90\x85\x80\x80\x80\x87' | wc -mc
1 7
Re: Безопасность
Добавлено: 14 фев 2017, 16:06
Olej
Olej писал(а):
Генерация
паролей:
Код: Выделить всё
[olej@dell draft-temp]$ openssl rand -base64 6
e6u2P3bw
[olej@dell draft-temp]$ openssl rand -base64 8
aKROQhEBaHw=
Как определить
сложность пароля?
Вот WEB оценивание на ресурсе
https://2ip.ru/passcheck/...
Пароль: e6u2P3bw
Результат: ненадёжный
Ваш пароль может быть взломан за 910 минут
Пароль: aKROQhEBaHw=
Результат: надёжный
Ваш пароль может быть взломан за 109726 лет
Только: кем взломан? как взломан? каким методом? при каком быстродействии подбора?
Re: Безопасность
Добавлено: 14 фев 2017, 16:18
Olej
Olej писал(а):
Вот WEB оценивание на ресурсе
https://2ip.ru/passcheck/...
Пароль: e6u2P3bw
Результат: ненадёжный
Ваш пароль может быть взломан за 910 минут
Тот же пароль для сравнения:
Для подбора вашего пароля
на обычном компьютере потребуется
12 дней
Ещё один (уже 3-й) ресурс для оценивания
https://howsecureismypassword.net/
It would take a computer about
2 hours
to crack your password
Безопасность
Добавлено: 23 сен 2023, 17:28
Olej
Всё что касается вредоносного ПО, а, главным образом, инструментов борьбы с ним, перенесено в новую тему:
руткиты, трояны, вирусы