Формула 1. Время, необходимое для гарантированного нахождения заданного пароля. t – время, V – скорость перебора, N – количество символов, из которых может состоять пароль, L длина пароля — КиберПедия 

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

Формула 1. Время, необходимое для гарантированного нахождения заданного пароля. t – время, V – скорость перебора, N – количество символов, из которых может состоять пароль, L длина пароля

2017-08-26 403
Формула 1. Время, необходимое для гарантированного нахождения заданного пароля. t – время, V – скорость перебора, N – количество символов, из которых может состоять пароль, L длина пароля 0.00 из 5.00 0 оценок
Заказать работу

 

По этой формуле можно вычислить время, необходимое для поиска пароля в худшем случае. Однако, вероятность, что искомый пароль окажется самым последним перебираемым вариантом равна вероятности угадать правильный ответ с первой попытки. Поэтому, точно вычислить требуемое время невозможно (это кому как повезет), но принято говорить о времени, необходимом в среднем случае. Оно вычисляется по следующей формуле: tср =tмакс /2.

В некоторых публикациях (например «Моделирование возможности компьютерной атаки нарушителями через систему паролей» Головин Д. В.) затрагивается вопрос, – какой поиск пароля дает наилучший результат – последовательный или хаотичный. На самом деле вопрос нелеп в своей постановке, поскольку не оговаривается, откуда и как возник искомый пароль. Если принять, что он был выбран случайно, то последовательной перебор вариантов будет ничем не хуже (и не лучше) хаотичного поиска, поскольку никаких сведений (ни явных, ни предполагаемых) об искомом паролей нет и одному методу поиска нельзя отдать предпочтение перед другим[337].

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

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

Поэтому, в большинстве случаев используется простой линейный поиск, заключающийся в последовательном переборе возможных паролей один за другим. Один из простейших алгоритмов перебора (получивший название «алгоритм счетчика») приведен ниже (на диске, прилагаемом к книге, он находится в файле “/SRC/gen.pswd.simple.c”):

 

· #include <stdio.h>

·

· main()

· {

· char pswd[10];

· int p=0;

· pswd[0]='!';

· pswd[1]=0;

·

· while(1)

· {

· while((++pswd[p])>'z')

· {

· pswd[p]='!';

· p++;

· if (!pswd[p])

· {

· pswd[p]=' ';

· pswd[p+1]=0;

· }

· }

· p=0;

· printf("%s\n",&pswd[0]);

·

· }

· }

 

Суть алгоритма заключается в следующем: Первый слева символ пароля увеличиваться до тех пор, пока не превысит максимально допустимое значение. Когда такое произойдет, он «обнуляется» – принимает минимально допустимое значение, а символ, стоящий справа от него инкрементируется на единицу. Происходит, так называемая, «зацепка» – точно так работает механический счетчик на шестеренках. Когда шестеренка совершает полный оборот, она задевает своим удлиненным зубчиком соседнюю, заставляя ее повернуться на одну позицию. В упрощенном виде алгоритм записывается в одной строке на языке Си:

 

· while ((++pswd[p])>MAX_VAL) pswd[p++]=MIN_VAL;p=0;

 

Такая конструкция скрывает рекурсию, и тот же алгоритм в рекурсивной форме записи может выглядеть так:

 

· void GetNextPasswd(char pswd, int p)

· {

· pswd[p]++;

· if (!(pswd[p]>MAX_VAL)) return;

· pswd[p]=MIN_VAL;

· Count(pswd,++p);

· }

 

Но если MIN_VAL отлично от нуля, то в программу приходится добавлять пару строк, инициализирующих значение очередной ячейки, например, это может выглядеть так:

 

· if (!pswd[p])

· {

· pswd[p]=' ';

· pswd[p+1]=0;

· }

 

Другое решение заключается в предварительной инициализации всех ячеек значением MIN_VAL-1. Однако потом придется «вручную» вычислять длину пароля и внедрять завершающий строку нуль (если программа написана на языке Си).

Результат работы программы может выглядеть, например, так (все полученные пароли выводятся на экран, на практике же они передаются процедуре наподобие Crypt):

 

· " # $ % & ' () * +, -

·. / 0 1 2 3 4 5 6 7 8 9

·:; < = >? @ A B C D E

· F G H I J K L M N O P Q

· R S T U V W X Y Z [ \ ]

· ^ _ ` a b c d e f g h i

· j k l m n o p q r s t u

· v w x y z!! "! #! $! %! &! '!

· (!)! *! +!,! -!.! /! 0! 1! 2! 3!

· 4! 5! 6! 7! 8! 9!:!;! <! =! >!?!

· @! A! B! C! D! E! F! G! H! I! J! K!

· L! M! N! O! P! Q! R! S! T! U! V!...

·

 

В данном случае львиная доля процессорного времени тратится на вывод строк на экран, но при реальном подборе пароля, быстродействием переборщика не всегда удается пренебречь, поэтому имеет смысл переписать программу на ассемблер.

Частично оптимизированный вариант[338] (т.е. без учета особенностей исполнения кода процессорами семейства Intel 80x86) может выглядеть так (на диске, прилагаемом к книге, он находится в файле “/SRC/gen.pswd.simple.asm.c”):

 

· #include <stdio.h>

· #include <memory.h>

·

· main()

· {

· int p=0;

· char pswd[10]; // Буфер для генерации паролей

· memset(&pswd[0],0,10); // Иницилизация буфера

· pswd[0]='!'; // Начальный пароль

·

·

· __asm{

·; Загрузка в регистр EAX указателя на буфер паролей

· LEA EAX,pswd;

·; Сохранение регистра EAX в стеке

· PUSH EAX

· Begin:

· }

·

· // В этом месте должен быть расположен код обработки пароля

· // в данном случае очередной пароль выводится на экран

· printf("%s\n",&pswd[0]);

·

· __asm{

· POP EAX; Восстановление регистра EAX

· PUSH EAX; И снова - сохранение!

· INC [EAX]; ++pswd[p]

· CMP Byte ptr [EAX],'z'; if (pswd[p]>'z') go to Check

· JBE Begin; Очередной пароль

·

· // Проверка на перенос (и выполнение переноса)

· Check:

· MOV Byte ptr [EAX],'!'; pswd[p]='!'

· INC EAX; p++

· CMP Byte ptr [EAX],0; if (!pswd[p]) go to Ok

· JNZ Ok; Это не крайний символ

· MOV Byte ptr [EAX],'!'; pswd[p]=0

· POP EAX; p=0

· PUSH EAX; Восстановление (сохранение) EAX

· JMP Begin

· Ok:

· INC Byte ptr [EAX]; ++pswd[p]

· CMP byte ptr [EAX],'z'; if (pswd[p]>'z') go to Check

· JA Check

· POP EAX; p=0

· PUSH EAX; Восстановление (сохранение) EAX

· JMP Begin

· }

·

· }

·

 

Исходный текст NR.PL

 

· @ECHO off

· perl -x -S "%0"

· goto end

· #!perl

· #line 6

· print "TCP SpyServer Version 2.0 Copyright (c) 2000 Kris Kaspersky\n";

·

· #Клиент\серверный шпион

· use Socket;

·

· #Настойки по умолчанию

· $local_port = 110;

· $remote_port = 110;

· $server = 'mail.aport.ru';

·

· #Попытка взятия настоек из файла

· if (open(FH,"tcpspy"))

· {

· $local_port=<FH>;

· $local_port =~ s/\n//;

· $remote_port=<FH>;

· $remote_port =~ s/\n//;

· $server=<FH>;

· $server=~ s/\n//;

· }

·

· print "Порт локального сервера \t[$local_port]:";

· $tmp=<>; $tmp=~ s/\n//;if ($tmp>0) {$local_port=$tmp;}

·

· print "Порт удаленного сервера \t[$remote_port]:";

· $tmp=<>; $tmp=~ s/\n//;if ($tmp>0) {$remote_port=$tmp;}

·

· print "Адрес сервера (none нет) \t[$server]";

· $tmp=<>; $tmp=~s/\n//;

· if (length($tmp)) {$server=$tmp}

·

· #Сохраняем настойки в файле

· if (open(FH,">tcpspy"))

· {

· print FH "$local_port\n";

· print FH "$remote_port\n";

· print FH "$server\n";

· }

· close (FH);

·

· # 666 - особый код для Эхо-сервера

· if ($server=~/none/) {$server=666;}

·

· #Создаем сокет для локального сервера

· socket(SERVER, PF_INET, SOCK_STREAM, 6);

· setsockopt(SERVER, SOL_SOCET, SO_RESEADDR,1);

· $my_addr = sockaddr_in($local_port, INADDR_ANY);

· bind(SERVER, $my_addr);

·

· #Слушаем....

· listen(SERVER,1);

· while(1)

· {

·

· print "Ожидание подключения...\t\t";

· #Определяем адрес клиента

· $client_addr=accept(CLIENT, SERVER);

· ($clint_port,$client_ip) = sockaddr_in($client_addr);

· print "+OK [IP:",inet_ntoa($client_ip),"]\n";

·

· $one=CLIENT;

·

· $connect=1;

·

· if ($server!=666)

· {# Прокси-схема с удаленным сервером

· print "Соединение с узлом $server...\t";

· socket(RSERVER, PF_INET(), SOCK_STREAM(),6);

· connect(RSERVER, sockaddr_in($remote_port,inet_aton($server))) || die;

· print "+OK\n";

· $two=RSERVER;

·

· }

· else

· {# Эхо-сервер

· print "Установка эхосервера...\t\t+OK\n";

· $two=CLIENT;

· }

·

· $x='foo';

· open(LOG,">>tcpspy.log");

· #Обработка текущего подключения

· while($connect)

· {

· $rin='';

· vec($rin, fileno($one),1)=1;

· $timeout=5;

· $nfound=select($rout = $rin, undef, undef, $timeout);

· if (vec($rout, fileno($one),1))

· {

· #Слушаем ответ клиента

· recv($one,$x,10000,0);

· if (!length($x)) {$connect=0;}

· else

· {

·

· if ($x=~/#HALT_OFF/) {send($two,"HANDUP",0);die;}

· print "$one$x";

· print LOG "$one$x";

· #Говорим это серверу

· send($two,"$x",0);

· }

· }

· else

· {#Меняем сервера с клиентом

· ($one,$two) = ($two,$one);

· }

· }

· print "\n-ERR:Соединение разорвано\n";

· close(CLIENT);

· close(RSERVER);

· close(LOG);

· }

· __END__

·:end

 

 


[1]. «UNIX не был создан для того, чтобы мешать кому-то делать глупости, ведь это помешало бы умным людям делать умные вещи» Doug Gwyn

[2] Тогда еще ARPANET

[3] http://www.siber.com/sib/internet/RussianNetStory.html

[4] От английского слова “ creeper” – ползучее растение, ленточный конвейер. В русскоязычной литературе эта программа известна под именем «Вьюнок»

[5] В дословном переводе «Монстр из печенья» - герой популярной детской передачи Sesame Street

[6] Сетевые черви существовали еще и до Морриса. Если бы не масштабы эпидемии его творение так бы и осталось ничем незамеченным

[7] которые возникли намного позднее

[8] Ну, может быть, за исключением школьников младших классов, находящихся на иждивении у родителей

[9] Вадим Антонов

[10] Если непривилегированный пользователь получит право модификации файла паролей, он сможет изменить пароль администратора (или другого пользователя) и несанкционированно войти в систему

[11] Впрочем, обновления устанавливать необходимо – в большинстве случаев атакующий использует самые свежие уязвимости в системе, поэтому успешность атаки большей частью зависит от того, – чья из сторон (нападающий или жертва) первой отреагирует на сообщение о новой дыре

[12] Правильнее было бы сказать наивный или доверчивый. К сожалению, с приходом опыта доверчивость чаще всего остается

[13] Но «высшей» еще не обозначает сложной

[14] Впрочем, все это не мешает использовать книгу для «диванного чтения» и получать от этого удовольствие

[15] От английского “ hack” – рубить, разрубать; кромсать; разбивать на куски, надрубать; наносить резаную рану, а так же тонкая ювелирная работа, верх совершенства

[16] Ну, по-русски они клацали, а по-американски хацкали

[17] Словом, киберпанков

[18] А могут считать, но публично утверждать обратное

[19] Сигареты, пиво и отращивание волос еще никого не сделали хакером

[20] Хакеры, хакеры…

[21] Шутка, конечно, но чего не бывает в жизни…

[22] Точная статистика варьируется от одного источника к другому, поэтому, конкретные цифры здесь не приводняется

[23] Любопытно, но выдержки из этой работы непонятным образом попадают в монографию Николая Безрукова «Компьютерные вирусы», изданную гораздо позже – в 1989 году, но без ссылок на первоисточник!

[24] К слову сказать, диплом не является свидетельством образованности – деградация высших учебных заведений – тема для отдельного длинного разговора

[25] “ …когда он (хакер –КК) охвачен своей манией, он не может говорить ни о чем, кроме своей программы. Но единственный момент, когда он счастлив, время, проведенное за пультом управления вычислительной машины. И тогда он не станет беседовать ни с кем, кроме машины» Дж. Вейценбаум

[26] “Хакинг дает Кевину Минтику чувство самоуважения, которого ему не хватает в реальной жизни. Алчность и стремление навредить тут ни при чем...” Гарриет Розетто, директор реабилитационной службы

[27] Автор этой книги не всегда разделяет мнения психологов, перечисленные в этой главе

[28] Вот почему среди хакеров практически никогда не встречается женщин

[29] Жизнь проходит независимо от того, протекает ли она за решением задачи или хождением на открытом воздухе – КК

[30]«Inside the mind of Dark Avenger» by Sarah Gordon

[31] Иа-Иа

[32] Как хакер, кончено

[33] Во избежание искажений атмосферы произведения, текст не переведен.

[34] Слабительное, одним словом

[35] Пускай заключительные приговоры в подобных случаях – незавидная экзотика, но все же…

[36] С помощью cookie

[37] Во всяком случае «кто предупрежден, – то вооружен»

[38] В противовес аппаратным, совершаемым кусачками

[39] То есть гостевых правах с минимальными привилегиям

[40] Конечно, для этого придется обзавестись сервером и выделенным каналом, но, вполне вероятно, вложенные в атаку средства окупятся продажами ворованной информацией

[41] Равно, как и сервер, специально предоставленный для взлома

[42] Иными словами дифференцированное программное обеспечение или гетерогенная сеть в отличие от гомогенной (одно-ранговой)

[43] API – Application Program Interface – Интерфейс Прикладных Программ

[44] Здесь приходится использовать термин дейтаграмма, что бы не вызвать противоречия

[45] См. второй том книги

[46] http://www.fish.com/~zen/satan/satan.html

[47] Хорошее место, траву прямо на улице курят. Что и объясняет особенности берклеского юникса. (Антонов - старший.)

[48] Впрочем, некоторые GNU программы успешно перенесены на платформу Windows. Например, редактор EMACS.

[49] Но очень, очень желательно

[50] “Что такое комп дома в собственном монопольном использовании, без перфокарт и начальника машины современная молодежь не поймет – они этого времени уже не застали...” Сергей Пустовойтов

[51] " I remember the good old days, when computers were mainframes, analysts were magicians, and programmers punched cards... " Philip Fites, Peter Johnston, Martin Kratz "Computer viruses crises"

[52] Точнее, практически идентичен. Но объяснение причин различий потребовало бы много места

[53] И, кстати, в то время самой быстрой в мире.

[54] Самой же операционной системе отводилась только половина из них – 16 килобайт

[55] Именно эта идея использовалась в IBM PC

[56] Подразумевается градусов

[57] По сравнению с аналогичными программами, написанными на ассемблере. Но и в этом случае его стоимости составляла десятки и сотни тысяч долларов

[58] Вернее, сам проект назывался MAC, а MUTLICS – его единственное детище

[59] Windows NT поддерживает «копирование при записи», а Windows 95 нет

[60] Т.е. объявить файл частью виртуальной памяти, расположенной на диске. Подробнее об этом можно прочитать в книге Джеффри Рихтера «Windows для профессионалов»

[61] Сам язык BCPL был разработан Мартином Ричардсом

[62] Имеется ввиду компания Novell, выкупившая у AT&T лицензию на код UNIX, а вовсе не сама AT&T

[63] Надежность всегда была главным достоинство продуктов Microsoft (безо всякой иронии)

[64] А.П. Руднев

[65] Хорошее место, траву прямо на улице курят. Что и объясняет особенности берклеского юникса. (Антонов - старший.)

[66] «Дисплеи - это отдельная история - кубинские не работали, когда было жарко, советские, когда холодно...»

[67] 256 килобайт оперативной памяти, 5 мегабайт накопитель

[68] Тем не менее, MISS была успешно перенесена с ЕС ЭВМ на IBM PC и даже использовалась узким кругом поклонников, но несовместимость с MS-DOS и UNIX воспрепятствовали ее распространению

[69] Вадим

[70] Давидов «Вся правда о Демосе»

[71] Брат Вадима

[72] Современная вариация на тему БЭСМ-6

[73] Клон VAX-730

[74] [email protected]

[75] Высказывание пренадлежит Линусу

[76] А во вторую очередь уже обращает внимание на удобство инструментария

[77] Впрочем, многие администраторы ее используют и… «пока все работает»

[78] То есть, как раз правильный

[79] Ну, почти бы не возникало

[80] Так же известное под именем обработчик

[81] Как и в MS-DOS

[82] То есть, конечно, существует, но прикладным приложениям она недоступна

[83] GNU рекурсивно расшифровывается как GNU Not Unix.

[84] Смотри Wipro UWIN Version 2.0 User Guide

[85] В штатную поставку Windows 2000 входит и telnet-сервер

[86] А еще говорят, что в UNIX нет никакой черной магии

[87] Вывести содержимое файла /etc/passwd на экран

[88] Здесь и далее цитируется оригинальная документация по CYGWIN

[89] И правильно – привыкайте работать в командной строке

[90] Ложь – искусство умолчания

[91] Все точно так, как и в MS-DOS, только наклон черты в другую сторону

[92] К слову сказать, в MS-DOS команда dir *1* выведет все файлы, а не только те, в имени которых присутствует единица

[93] Сокращение от visual interface

[94] «Машинная программа выполняет то, что вы ей приказали делать, а не то, что бы вы хотели, чтобы она делала» Третий закон Грида

[95] Ну почти любой

[96] По тем временам

[97] Подробнее это рассмотрено в главе «Технологии срыва стека»

[98] По-английски Local Echo

[99] Если сервер не находится в дауне (с ним, как и с большинством остальных бесплатных ресурсов, это случается гораздо чаще, чем хотелось бы),

[100] Точнее, генерируется случайное 12 битное число, преобразуемое в два читабельных символа

[101] Строго говоря, привязка может состоять только из символов 0-9 и A-z, но это бы усложнило реализацию и приведенный пример стал бы менее нагляден

[102] «- Не очень-то надежная защита, - задумчиво сказала Лиза» John Warley Press Enter.

[103] Современные версии UNIX уже не ограничивают длину пароля восемью символами, но выбирать длинные пароли категорически не рекомендуется, – это значительно снижает криптостойкость. К сожалению, внятно объяснения потребовали бы много места и знаний глубоких криптографиии.

[104] Необходимо отметить, во многих версиях UNIX shadow по умолчанию выключен, и все пароли содержатся в общедоступном файле passwd

[105] Вернее, почти любой. Об ограничениях можно прочитать в главе «Технология срыва стека»

[106] Ну разве администратор окажется совсем уж криворуким

[107] Thompson K. Reflections on trusting trust CACM, 1984,v.27, No 8, pp.761-764 (Перевод Н.Н. Безрукова)

[108] Добавляет нового пользователя kpnc с пустым паролем

[109] Victim – по-английски жертва.

[110] Ну не грохать же после этого администратора?!

[111] Технически правильно говорить о секциях или областях, но термин «сегмент» более привычен для читателей, знакомыми с микропроцессорами Intel 80x86

[112] Если бы современные операционные системы не блокировали обращения прикладных программ к портам ввода-вывода, было бы возможно, используя контроллер DMA, нейтрализовать защитный механизм.

[113] «Можно сделать защиту от дурака, но только от неизобретательного» Закон Нейсдра

[114] Если отладка - процесс удаления ошибок, то программирование должно быть

процессом их внесения. Э. Дейкстра

[115] Реже, какого ни будь экзотического языка

[116] Да, уже в то время Microsoft ухитрилась стать монополистом.

[117] А она ее и не выдержала. Даже сейчас не смотря на всю прелесть Microsoft Visual C++, он так и не стал стандартом де-факто.

[118] Занимавшимся доселе текстовыми процессорами

[119] Ну почему же не позволяли? Позволяли еще как, путем хитроумных технических извращений, но скорости работы это не прибавляло.

[120] Порядка 500$

[121] Апрель 1980 года

[122] Это не первый и не последний случай переманивая талантливых программистов под свое крыло.

[123] Любопытно, но строгие меры безопасности IBM так и не позволили Патерсону подержать в руках компьютер, для которого разрабатывалась эта операционная система.

[124] Тут уместно вспомнить NDOS от Symantec – пользующейся большой популярностью на западе.

[125] В первую очередь, разумеется конкуренты, цель которых деньги и ничего, кроме денег

[126] В своей книге «Дорога в будущее»

[127] PC Magazine N97-6 "Взгляд в прошлое" Рубен Герр

[128] В октябре 1983

[129] GW-BASIC, разработанный годом раньше, не в счет. Формально он поддерживал графику, но графической средой не являлся.

[130] Первые Macintosh появились на рынке в 1984 году

[131] Но IBM среди них не было

[132] Впрочем, Windows в те времена была всего лишь графическим расширением MS-DOS

[133] PC Magazine N97-6 "Взгляд в прошлое" Рубен Герр

[134] В то время Microsoft не уставала повторять, что будущее принадлежит UNIX и всеми силами пыталась «раскрутить» пользователей PC на эту операционную систему

[135] Любопытно, насколько же нужно повысить производительность, чтобы пользователи этого не заметили?

[136] Близкую к современным версиям Microsoft Office

[137] Билл Гейтс «Дорога в будущее»

[138] «Почему Microsoft победит Netscape» Джон Дворак

[139] так бы хотелось в это поверить!

[140] Если не считать огромного количества новых ошибок, отсутствовавших в Windows NT 4.0

[141] Компания Microsoft же на своем сайте пытается доказать, что утверждение «Windows 2000 – это просто очередная ОС» всего лишь миф и не более. (http://www.microsoft.com/rus/migration/mythes/1.htm)

[142] Впрочем, и Windows 2000 его, возможно, не обеспечит то же

[143] Кстати, если в слове “VMS” сдвинуть все буквы на одну позицию вправо, получится “WNT”

[144] А все что не удается отключить выламывается с корнем

[145] Разумеется, речь идет только о продуктах Microsoft

[146] Ну кому в двухтысячном взбредет в голову устанавливать на своей машине MS-DOS?

[147] И что же это за сервер такой?

[148] Глава «Атака на DNS сервер» помещена во второй том «Техники сетевых атак»

[149] В главе «Протоколы telnet и rlogin» подробно описан процесс передачи пароля. В большинстве случаев используется алгоритм Нагла, кэширующий отправляемые символы, поэтому в каждом пакете отправляется более одного символа.

[150] А перехват трафика возможен как в локальных, так и глобальных сетях: ни широковещательная среда Ethernet, ни протоколы TCP/IP не защищают от этого.

[151] Почему не смогут? Смогут, еще как – читайте дальше.

[152] В Windows 2000 автоматический вход в систему установлен по умолчанию

[153] Вообще-то алгоритм выбора сервером протокола зависит от множества обстоятельств и в некоторых случаях может не совпадать с описанным.

[154] В переводе с английского «отклик», «отзыв», «требовать пароль» (воен.)

[155] Если клиент поддерживает только PC Network Program 1.0

[156] Строго говоря, это утверждение верно в том, и только в том случае если функция f инъективна (одному значению функции соответствует только один аргумент). А, поскольку, хеш функция наверняка не инъективна, возможна такая ситуация, когда x¹x1, но f(x)=f(x1). Однако вероятность подобной коллизии пренебрежительно мала и ее не берут в расчет.

[157] В самом же деле, ведь не возможно по LM-хешу угадать NT-хеш

[158] Именно так и поступают операционные системы Windows 95 и Windows 98 (и даже сама Windows NT для соединения с другой NT в конфигурации по умолчанию)

[159] строка нулей шифруется алгоритмом DES, а роль ключа играют семь символов пароля

[160] Очевидно, взлом DES не относится к атакам на Windows NT

[161] если под операцией подразумевать вычисление функции DES и сравнения полученного результата с исходным хеш - значением

[162] Пояснение: что бы перебрать каждый из семи символьных паролей в худшем случае потребуется 1+k+k2+k3+k4+k5+k6+k7 операций. Поскольку, имеется два семи символьных пароля, то потребуется вдвое больше операций: 2*(1+k+k2+k3+k4+k5+k6+k7). Но в среднем пароль удается найти вдвое быстрее, отсюда – 2*(1+k+k2+k3+k4+k5+k6+k7) * ½ == 1+k+k2+k3+k4+k5+k6+k7

[163] Стоит заметить, даже старые версии UNIX ограничивают пароль восемью символами, различая при этом заглавные и строченые буквы!

[164] Ну куда же Microsoft без ошибок!

[165] А не абстрактных операций

[166] А можно послать ей письмо, содержащее Java‑код, и, если почтовый клиент жертвы поддерживает отображение HTML-писем, то на требуемую ссылку злоумышленник сможет завести атакуемого самостоятельно

[167] В Windows 2000 это упущение уже исправлено

[168] Резервная копия хранится в упакованном виде

[169] Или их хеши

[170] Подробности в статье Q129457 базы знаний

[171] А по умолчанию они у него есть.

[172] Правда, в такой конфигурации Windows 2000 обгоняет по скорости Windows 98, которая просто не знает как ей распорядится с таким количеством оперативной памяти

[173] И находятся же такие горячие головы!

[174] Ну чем не коммунизм в чистом виде?

[175] Кроме сотни-другой игрушек

[176] По сравнению с Windows 95

[177] Сам запустил – сам и виноват!

[178] Каждый член этой последовательности получается циклическим сдвигом значения предыдущего на семь бит влево

[179] Ну почему не возможно? Возможно, но это выходит за рамки данной книги

[180] Подробнее об этом алгоритме можно прочитать http://www.rsa.com/rsalabs/newfaq/q87.html, но для понимания дальнейшего материала это совсем не обязательно

[181] Хорошая же защита, однако!

[182] А нулевое значение равносильно отсутствию пароля

[183] Но все равно очень и очень много!

[184] Или в электронной форме. Сути это (понятное дело!) не меняет

[185] Круглая скобка говорит «не включая последний элемент», т.е. [0x0,0xFF) равносильно 0x0..0xFE.

[186] Kluge – Устройство, программа или часть программы, которые теоретичски не должны работать, но почему-то работают. Словарь Лингво

[187] Такие пакеты называют тиниграммами, от английского tiny – крошечный.

[188] USASCII – от USA ASCII, т.е. символы алфавита США, исключая псевдографику и прочие национальные кодировки

[189] http://www.microsoft.com/security/bulletins/MS99-033faq.asp

[190] В большинстве случаев объем измеряется не в байтах, а в октетах (от octets). Поскольку один октет равен восьми битам, то обе единицы измерения численно равны между собой.

[191] Стандарт не оговаривает пути достижения уникальности идентификатора, поэтому каждый волен реализовывать их по-своему.

[192] Хотя в некоторых случаях, такая информация не соответствует действительности, попробуйте ей поверить

[193] Сервер поприветствовал вас? Так поприветствуйте же и вы сервер!

[194] HELO с одной буквой L

[195] В дополнении к этому, администратор может разрешить рассылку писем с некоторых IP адресов, находящихся за пределами локальной подсети, возникнет такая необходимость

[196] Совпадение с именем пользователя случайное

[197] Шутка

[198] В следующей сессии этот флаг сбрасывается. То есть он обозначает буквально следующее «сообщение получено в промежутке между двумя последними сессиями».

[199] Правда, для этого нужно обладать правами удаленного запуска SendMail, - достаточно редкая на сегодняшний день экзотика.

[200] То есть, на той же самой, где и установлен SendMail. Такое случается, когда скажем, [email protected] посылает письмо [email protected]

[201] Смотри «банговый путь» в главе «История возникновения и эволюции UNIX», страница…

[202] Зато был возможен несанкционированный доступ к ресурсам, но в то время это никого не волновало – SendMail или любой другой почтальон считался общедоступным сервисом.

[203] Все POP3 серверы обязаны поддерживать авторизацию.

[204] Точное значение зависит от настоек сервера и обычно колеблется от десятка минут до половины часа.

[205] SMTP-соединение создается после рукопожатия, совершаемого командами HELO и может быть реализовано поверх любого транспортного соединения, например, TCP, UDP, X.25 или другого. Поэтому, существует возможность отправки почты в любую сеть с использованием протокола SMTP.

[206] Вообще-то, немногим более одной, но это роли не играет

[207] Да и не только на нем – подобная схема используется в подавляющем большинстве случаев

[208] Актуально при использовании UUCP пересылки

[209] К этому рекомендуется прибегать, например, во время зацикливания квитирующих сообщений доставки.

[210] Что-то среднее между ICQ и IRC

[211] И, вероятно, SendMail

[212] Для этого вовсе не обязательно устанавливать UNIX на свой персональный компьютер, достаточно воспользоваться любым сервером, предоставляющим такой сервис.

[213] А вот такую экзотику найти в сети уже сложнее

[214] Или редко – в зависимости от надежности поставщика сетевых услуг

[215] В некоторых случаях используется другой путь

[216] Такую конфигурацию выгодно использовать для массовой рассылки писем.

[217] Впрочем, немногие POP3 сервера написаны на Perl, – простота программирования оборачивается ухудшением производительности

[218] Во время написания книги успела выйти и финальная версия Windows 2000, впрочем, еще не свободная от ошибок.

[219] Например, бесконечным.

[220] Не секрет, что некоторые анонимайзеры сохраняют IP адреса отправителей корреспонденции.

[221] Да, так, собственно, и происходит – этот сервер ведет протоколы всех действий пользователя.

[222] Как правило, для этого необходимо завести собственный сервер.

[223] Конечно, это очень грубая подделка, но в качестве примера вполне сойдет

[224] Адрес сервера входящей почты содержится в e-mail адресе, а адрес сервера исходящей почты можно узнать из заголовка сообщения – для этого Алиса должна отправить Еве хотя бы одно письмо

[225] Читай – не должен быть известен злоумышленнику

[226] Смотри том 2

[227] Или относительных путей, ссылающихся на родительские каталоги

[228] А может быть и более поздней, у автора не было возможности это проверить

[229] Хм, а почему же не «Преграда для вирусов»?

[230] Исходя из скорости 1 пароль в секунду

[231] А что бы обратить внимание, надо как минимум изучить заголовок – почтовые клиенты не всегда уведомляют кому они отправляют письмо

[232] От английского posting - посылка

[233] То есть \r\n.\r\n

[234] Тело сообщение от заголовка отделяется одной пустой строкой

[235] Смотри том 2

[236] Эдакой подопытной крыски с нежно-розовым хвостиком и словно нарисованным глазками-бусинками.

[237] Наверное, не стоит объяснять как узнать IP адрес по имени хоста?

[238] обратите внимание, что этот сервер бывает общедоступен лишь эпизодически

[239] Что поделать, Украина….

[240] А вот количество сообщений бесконечно. Поскольку скорость получения сообщений уступает скорости их создания, получить все сообщения сети невозможно.

[241] Увы, это не грубое слово, а грубые нравы современной жизни…

[242] Впрочем, политика Демоса в этом вопросе настолько изменчива, что к моменту выход книги в свет, сказанное, вероятнее всего, уже не будет соответствовать действительности

[243] Впрочем, модератор конференции теоретически может успеть удалить наше сообщение.

[244] В терминологии outlook express

[245] Зачем засорять сетевой трафик?

[246] Сказанное справедливо и для поля “Sender” (если оно присутствует)

[247] А почему они были должны произойти?

[248] Надежда Александровна, Вы уж извините, но кого-то все же пришлось выбирать…

[249] Реклама, однако!

[250] В это трудно поверить, но тогда в сети вандалов еще не было

[251] Если выбирается нестандартный порт, то он указывается в ссылке, например, http://www.rinet.ru: 8080 /~vit/

[252] Никакого приветствия (как это случалось ранее) сервер не выдает.

[253] Подавляющее большинство HHTP-серверов не поддерживают версии HTTP ниже 1.0

[254] Подробнее об этом рассказано в RFC-2068

[255] Эта же ошибка распространялась и на остальные типы исполняемых файлов: «.ht», «.id», «.pl» и так далее.

 

[256] Не обольщайтесь, дырку уже давно прикрыли

[257] Или так: “GET /default.asp\”

[258] Эта глава находится во втором томе настоящей книги

[259] Доступ к серверу умышленно закрыт. Пожалуйста, выберите другой сервер.

[260] Смотри файл file://SRC/index_hack.htm

[261] Доступ отвергнут, требуется аутентификация

[262] Способы перехвата трафика будут рассмотрены позднее в одноименной главе, помещенной во второй том настоящей книге

[263] Вот так и появляется миф о всемогуществе хакеров.

[264] Метод base предписывает разделять имя пользователя и пароль знаком двоеточия

[265] Точнее со снятием экспертных ограничений на криптоалгоритмы в США

[266] «Соляные рудники» – так на жаргоне хакеров называются программисты, работающие над изматывающими, но бесперспективными проектами.

[267] Для подобных преобразований пригодится приложение «Калькулятор», входящее в Windows

[268] Internet Explorer до версии 5.x не поддерживает двоичной формы записи адреса

[269] В том числе Internet Explorer и Netscape Navigator

[270] Заметьте, 20990125196 не равно 3512368580!

[271] Адресная строка, передаваемая методом GET, ограничена «всего» 30.612 байтами. Это ограничение одинаково для всех версий Internet Explorer и Netscape Navigator, потому что это максимальная длина строки, которую может вместить элемент интерфейса «окно редактирования», по крайней мере, в операционных системах Windows 9x\Windows NT 4.х.

[272] Или установить собственный WEB-сервер на локальной машине

[273] То есть восьмидесятый порт.

[274] Впервые он появился в HTTP/1.1

[275] Реализуемым разработчиками по желанию, то есть обычно не реализуемым

[276] Если клиент использует Proxy-сервер, то поле REMOTE_ADDR будет содержать его IP адрес

[277] file://SRC/test-cgi

[278] Разумеется, при отсутствии ошибок реализации.

[279] Приведен лишь фрагмент ответа сервера

[280] Microsoft Active Server Pages (ASP) загружаются, вместо того что бы исполнятся, даже после того вы уставновили ASP исправление для IIS.

 

[281] «Если четыре причины возможных неприятностей заранее устранены, то всегда найдется пятая» Четвертый закон Мерфи

[282] Alias

[283] На диске он находится под именем file://SRC/iis4_ml.pl

[284] Обычно на серверах устанавливается, по крайней мере, 64 мегабайта RAM, не говоря уже о виртуальной дисковой памяти.

[285] Сиу (племя североамериканских индейцев и индеец этого племени) – словарь Лингво 5.0

[286] Смотри диск file://SRC/siou

[287] До сих пор реальна посылка шквала запросов на один и тот же сервер с разных IP адресов, используя подмену своего IP адреса (подробнее об этом будет рассказано в главе «Атака Митника»)

[288] «SENDMAIL - Межсетевой почтовый роутер» Eric Allman. Перевод Плотникова Александра

[289] Врут, конечно

[290] Сосиски когда варятся, очевидно, пахнут.

[291] Смотри книгу «Морфологическая астрономия» Ф. Цвиккии, 1957

[292] Только посмотреть, руками не трогать!

[293] Для той же цели можно воспользоваться готовой реализацией, содержащейся в файле “/SRC/ahadir.ru”

[294] Если к моменту выхода книги, администратор не устранит брешь в защите

[295] ECHO “*” выводит на экран ‘*’, а не содержимое директории.

[296] Протокол сессии находится на диске под именем file://LOG/http_prot.log

[297] Если в угловых скобках ничего не указывать, то чтение будет происходить из устройства стандартного ввода

[298] На диске она находится в файле file://SRC/selmdfy.pl, а так же доспутна по адресу http://lightning.prohosting.com/~kpnc/cgi-bin/selmdfy.pl

 

[299] Т.е. лицом, разместившим стороннюю программу на своем сервере

[300] Где ‘x’ режим доступа равный ‘>’ или ‘<’.

[301] А синтаксически манипулятор ничем не отличается от имени файла

[302] Карточка может быть такой же виртуальной, как и сам магазин

[303] Измененные строки выделены жирным шрифтом.

[304] Браузер Internet Exploder поддерживает протокол ресурсов resource protocol, который позволяет загружать ресурсы из файла. Например: res://C:\WINNT\system32\shdoclc.dll/dnserror.htm

[305] Для жертвы локальным, а для злоумышленника – удаленным.

[306] Т.е. в младших адресах

[307] Порядок расположения буферов в оперативной памяти зависит от характера используемого компилятора. Например, Microsoft Visual C++ 6.0 разместит эти переменные в обратном порядке. Т.е. в данном случае к адресу возврата оказывается ближе user, а не pass.

[308] Автор, набравшись наглости, рекомендует свой собственный трехтомник «Образ мышления IDA», посвященный технике дизассемблирования

[309] На сайте разработ


Поделиться с друзьями:

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.346 с.