Logo    
Деловая газета CitCity.ru CITKIT.ru - все об Open Source Форумы Все публикации Учебный центр Курилка
CitForum    CITForum на CD    Подписка на новости портала Море(!) аналитической информации! :: CITFORUM.RU
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

22.01.2017

Google
WWW CITForum.ru
С Новым годом!
2004 г.

Черводинамика: причины и следствия

Александр Захарченко, http://az13.mail333.com/

«Так наука не делается. Так продаются товары.»
Майкл Крайтон. «Инопланетяне
как причина глобального потепления»
[1]

Исследование особенностей распространения сетевых червей становится все более популярной темой, о чем свидетельствует рост количества не только специальных научных работ [2], но и магистерских диссертаций по черводинамике [3], [4]. Интерес этот вызван внезапным осознанием того крайне неприятного факта, что в результате вирусных эпидемий под контролем злоумышленников оказываются вычислительные ресурсы фантастической мощности. По здравому размышлению их можно использовать не только для организации канонических «гадостей», коими являются распределенные DoS-атаки или рассылки спама с «зомбированных» компьютеров, но и более рационально: например, для распределенных вычислений «изгоями», неспособными приобрести необходимое количество суперкомпьютеров.

Разработаны изощренные модели, которые позволяют учесть влияние нюансов топологии Сети на поведение злонамеренного кода [5], провести детальный анализ червей с комбинированными механизмами размножения, а также учесть человеческие факторы риска и даже оценить стоимость еще только надвигающейся напасти [6]. Без сомнения, вся эта сложность, которая по изящному определению Эдсгера Дейкстра (E.W. Dijkstra) лучше продается [7], существенно продвигает черводинамику как науку и способствует катастрофическому увеличению убойной силы перспективных разработок в области виртуальных вооружений, но к решению основной [8] проблемы – предотвращению компьютерных эпидемий – мы так и не приближаемся ни на йоту. Черви превращают Интернет в кишащую пираньями Амазонку [9]. Анализ сетевых ЧП последнего времени уносит последние крохи иллюзий относительно эффективности применяемых мер антивирусной обороны [10], [11], [12].

Математический аппарат для изучения динамики «обычных» биологических эпидемий был разработан достаточно давно (подробный обзор моделей распространения инфекционных заболеваний представлен в [13].) Биологический подход к моделированию вирусной проблемы [14] по общему признанию начался с работ J. O. Kephart и S. R. White из IBM [15] еще до изобретения WWW, однако модным это направление стало только в 2001 г. после шокировавших виртуальных стражей вспышек Code Red и Nimda [16]. Наибольший резонанс получили работы N. Weaver и его старших коллег. Ими введена концепция Warhol (или блицкриг) червей, а также исследованы различные концептуальные алгоритмы размножения самовоспроизводящихся кодов, кардинально повышающие эффективность их распространения [17], [18]. Вирусописатели не заставили себя долго уговаривать и 2003 г. дал старт небывалым по размаху и последствиям сетевым эпидемиям (Slammer, MSBlast, Sobig, MyDoom) [19], [20], [21].

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

Простая эпидемическая модель

Рассмотрим простую эпидемическую модель, в которой предполагается, что произвольный узел сети, состоящей из постоянного количества (N) компьютеров, может находиться только в двух состояниях: уязвимом (S) и инфицированном (I). S + I = N. Предположим, что на каждом инфицированном узле может существовать только одна копия червя, которая случайным образом выбирает в доступном адресном пространстве потенциальную жертву с опять-таки средней постоянной скоростью b в единицу времени (на поиск и заражение одной жертвы в среднем тратится 1/b секунд). В простейшем случае b определяется средней скоростью сканирования червем сети (Vs) и размером её адресного пространства (Nip):

                                                (1)

(Согласно спецификации IP4 Nip = 232.)

Введя переменные i = I/N и s = S/N, получим уравнение динамики доли инфицированных узлов:

                                              (2)

Уравнение (2) имеет аналитическое решение. Предполагая, что в начальный момент времени t0 = 0 доля инфицированных узлов составляет i0, получим зависимость:

                                 (3)

из коей вытекает, что эпидемия в принятой модели полностью определяется двумя параметрами: скоростью размножения червя (b) и начальной зараженностью рассматриваемой сети (i0).

(3) – это логистическая функция, которая только по форме отличается от результата [17], где постоянная интегрирования определена через константу по времени, а не через начальную зараженность, как в нашем случае. Из приведенных в [17] данных следует, что для Code Red v2 i0 ~10–11…10–10, т.е. можно предполагать, что червь начинал атаку на Сеть с одного компьютера.

Динамика функции (3) характеризуется тремя четко различимыми этапами (Рис. 1).

Рис. 1. Развитие эпидемии в зависимости от начальной зараженности сети. Время представлено в единицах b ´ t (т.е. периодах размножения).

1-й этап – сравнительно медленное (но тем не менее экспоненциальное) нарастание зараженности до порогового уровня iпор » 0,05 (красная горизонтальная прямая на Рис. 1). Скорость удвоения доли пораженных машин равна ln(2)/b.

2-й этап – взрывная фаза (outbreak) в диапазоне 0,05 < i < 0,95. Продолжительность её определяется только скоростью поиска b и приблизительно равна 5,89/b.

3-й этап – насыщение, i > 0,95 (черная горизонтальная прямая на Рис. 1). На этом участке при случайном сканировании адресного пространства зараженные узлы контактируют преимущественно друг с другом, поэтому уцелевшие узлы могут оставаться «чистыми» неопределенно продолжительное время.

Для достижения порога насыщения i=0,95 требуется время

из чего следует, что динамика эпидемии не зависит от масштабов сети (в пределах применимости рассматриваемой модели). К примеру, сеть из миллиона компьютеров, в которой в начальный момент времени будет инфицирован один узел, будет практически полностью заражена за то же время, что и аналогичная сеть из ста миллионов компьютеров, где в начальный момент окажется 100 «червивых» узлов.

Из полученных результатов вытекает, что:

1. Однородность Сети относительно определенной уязвимости представляет главную угрозу [22]. Практика показала, что даже черви, которые выбирают жертву случайным образом и, следовательно, являются самыми медленными [17], за считанные минуты способны поразить ключевые узлы Интернета и вывести из строя телекоммуникации на уровне отдельных стран [23]. Таким образом, любая структура деятельность которой критически зависит от доступа к Интернет (либо, наоборот, нормальное функционирование Интернет зависит от работоспособности таковой структуры), должна иметь резервные системы, построенные на программном обеспечении с различающимся кодом.

2. Экспоненциальный рост количества вирусов в любой сети свидетельствует об отсутствии защитных механизмов либо о полной их неэффективности.

3. Механизм случайного выбора жертвы ограничивает снизу скорость распространения вирусов по сети. Значительно повысить её можно достаточно простыми средствами: подготовкой предварительного списка адресов для атаки, сканированием подсетей, выделением каждой копии червя отдельного фрагмента сетевого адресного пространства, поиском подходящих мишеней на зараженном компьютере и др. [17]. Если, к примеру, копия червя получает в наследство только непересекающуюся половину адресного пространства от «родителя», то из (1) следует, что это эквивалентно удвоению скорости заражения каждые 1/b секунд (Рис. 2).

Рис. 2. Ускорение эпидемии при выделении каждой копии червя своего непересекающегося фрагмента адресного пространства.

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

5. Системы раннего оповещения о развитии эпидемии окажутся сколько-нибудь эффективными только на участке i << iпор и при крайне низких значениях b. Моделирование распространения Code Red и Slammer показало, что анализ обращений к несуществующим адресам позволяет определить признаки вирусной активности в сети при заражении 1–2 % уязвимых узлов [24]. Таким образом, предупреждение может быть получено максимум за 1,65/b секунд до достижения порога взрыва iпор. Согласно данным [24] в случае Code Red это время составило бы не более 50 минут, а для Slammer не превысило бы 15–20 секунд. Очевидно, что в обоих случаях эпидемии можно было бы только зафиксировать, но не предотвратить.

5. Эффективность сетевых эпидемий можно значительно повысить, проводя скрытное предварительное заражение отдельных уязвимых узлов. Чем ближе i0 к iпор, тем разрушительнее могут оказаться последствия вирусной атаки (Рис. 1 ).

6. Увеличение адресного пространства Nip понижает инфекционную способность червей со случайным выбором жертвы. IPv6 предполагает 2128 адресов и это может несколько уменьшить темпы нарастания эпидемий, если адреса окажутся достаточно равномерно «размазаны» по всему пространству.

Анализ эпидемий Code Red v2 и Slammer на основе простой модели показал удовлетворительно совпадение с реально наблюдаемой динамикой эпидемий. Уже Code Red v2, чья инфицирующая способность оценивалась по различным данным от 0,7 до 1,8 компьютера в час менее чем за половину суток мог получить контроль над сотнями тысяч серверов. В то же время Slammer при скорости удвоения 8,5 секунд имел инфицирующую способность ~293 узлов в час и мог проникнуть на 90% уязвимых компьютеров всего лишь за 10 минут.

SIR модель и её варианты

Факторы, обеспечивающие затухание сетевых эпидемий, можно оценить на модели, в которой сетевые узлы существуют в трех состояниях: уязвимом (S), зараженном (I) и невосприимчивом (R). S + I + R = N. Для начала предположим, что узлы оказываются неуязвимыми только после излечения от инфекции. Вводя постоянную среднюю скорость «иммунизации» в единицу времени g, получаем систему уравнений:

                                               (4)

В этой модели существует пороговое условие для развития эпидемии. На участке возрастания i(t) производная di/dt должна быть больше 0. Поскольку s(t) непрерывно уменьшается за счет инфицированных машин, то получаем, что для начала эпидемии необходимо:

s(0) > g/b  º r                  (5)

К сожалению, это условие выполняется очень легко, поскольку g определяется запаздывающей человеческой реакцией и необходимостью загрузки громоздких «заплат», а b – постоянно улучшающимися техническими характеристиками сети и «доброй волей» злоумышленника (он может вставить небольшую паузу в цикл размножения, чтобы не создавать катастрофического трафика и слегка понизить скорость инфицирования). Доля же уязвимых узлов обычно очень велика. Поэтому практически всегда b  на много порядков превосходит g. (К примеру, при моделировании эпидемии Code Red v2 в [25] согласие с реальными данными достигнуто при соотношении b/g  ~106.)

В реальных условиях «иммунитет» посредством установки антивирусного ПО, межсетевых экранов и «заплат» приобретают не только инфицированные узлы (I), но и уязвимые (S). Предполагая, что средняя скорость иммунизации примерно одинакова для узлов обоих типов и равна (столь же малой) величине g, получим:

                                          (6)

и условие развития эпидемии (5) сохраняется.

r(t) = 1 – exp(–gt), откуда вытекает, что при достаточно большом времени любую эпидемию теоретически можно вроде бы и преодолеть. Проблема заключается только в том, что это время может оказаться неприемлемо большим.

Рис. 3. Динамика развития эпидемии в системе (6) при сравнительно малой начальной зараженности сети (10–7). При b/g  < 15 вспышка не происходит.

Рис. 4. Динамика развития эпидемии в системе (6) при значительной начальной зараженности сети (10–4). В этом случае пороговое значение b/g  < 9.

Как видно из Рис. 3 и 4 при «вакцинации» уязвимых узлов для заметной эпидемической вспышки необходимо, чтобы скорость инфицирования превышала скорость иммунизации на два порядка и более, для того, чтобы за время порядка 1/g  был пройден порог вспышки iпор. Пока что это не слишком обременительное условие для вирусописателей. Возможным выходом оказалась бы автоматизация процессов устранения уязвимостей. Она могла бы стать существенным фактором ограничения эпидемических рисков, конечно при условии, что черви не смогут блокировать систему обновления ОС, а сами автоматически устанавливаемые «заплаты» не будут нарушать работоспособность иммунизируемой системы и создавать в ней новые опасные уязвимости.

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

Динамика системы с переменным числом узлов будет определяться скоростью прироста новых уязвимых (S) узлов a:

                                     (7)

Теперь условие развития эпидемии приобретает вид:

s > (g + a)/b                                 (8)

Рис. 5. Динамика развития эпидемии в системе (7).

Основной отличительной особенностью системы (7) оказывается наличие постоянного уровня, к которому со временем стремиться доля инфицированных компьютеров (Рис. 5 ). Это означает, что в реальных условиях от конкретного вируса в системе с приростом уязвимых узлов полностью избавиться нельзя даже при автоматической «вакцинации». Хотя бы и незначительное постоянное добавление новых уязвимых узлов создает «резервации», обеспечивающие повторные вспышки при благоприятных условиях.

Работа над ошибками

Моделирование и сравнение его результатов с фрагментарными данными наблюдений за развитием реальных эпидемий подталкивает к интуитивно понятному (если не сказать банальному) выводу: массовое распространение ПО, однородного относительно конкретной уязвимости, и крайне низкая скорость устранения обнаруженных «дыр» приводят к тому, что высокие технологии создают гораздо больше проблем, чем решают. Поспешное внедрение непроверенных новаций создало патовую ситуацию: с одной стороны невозможно безболезненно отказаться от паутины нововведений, которые стремительно изменяют среду обитания человека, с другой – опасность этих новшеств возрастает с каждым днем. К примеру, пока SCO пугала конгрессменов страшилками о виртуальных суперкомпьютерах на базе ПО с открытым кодом, которые якобы могут создать в «странах-изгоях» для исследования ядерного оружия [26], вирус MyDoom передал контроль над миллионами компьютеров с проприетарной ОС вообще неизвестно кому [27]. Остается только гадать, какие задачи могут решаться под прикрытием такого виртуального терроризма.

Монокультура ПО стала результатом жесточайшей конкурентной борьбы между родоначальниками эры персональных компьютеров. Бои без каких-либо правил, перенесенные из большого бизнеса в область ПО, которое с момента зарождения десятилетиями неспешно развивалось в академической «тиши», не оставили от имен многих отцов-основателей даже торговых марок. Чисто теоретически можно конечно допустить, что после захвата господствующих экономических высот, победители собирались вернуться к отброшенным из-за дороговизны проблемам безопасности и предложить более надежные продукты. Так Microsoft уже не первый год проводит кампанию за отказ от линейки ОС Win95/98/Me и постоянно предупреждает о прекращении её поддержки. Однако, никто не учел, что сущности в виртуальном мире не изнашиваются и если потребителя удовлетворяет уже имеющиеся ПО, то заставить его платить за новые «рюшечки» не так-то просто. А если этих потребителей многие миллионы, то монстру ПО приходится уступать их требованиям и даже с жутким скрипом соглашаться на исправление древних уязвимостей [28].

На сегодняшний день словосочетание «качественное ПО» выглядит откровенным оксимороном, чему значительно поспособствовало нелегальное обнародование части исходных кодов Windows [29]. Очевидно, что если злонаправленный код можно пристегнуть даже к картинкам разного формата [30], [31], то ожидать доверительного компьютинга придется бесконечно долго. Все это свидетельство глубокого кризиса в разработке ПО. Продвинутый инструментарий для разработки и отладки формирует иллюзию легкости создания сложнейших программ. Однако, дружественные настройки не могут устранить конструктивные просчеты языков программирования и архитектур ОС, многие из которых хорошо известны, но остаются по требованиям обратной совместимости. В результате даже в простеньких программах могут появляться ошибки, которые отправляют на свалку хитроумные «защитные» средства. Заметить и устранить их под силу только немногочисленным специалистам высшей квалификации, привлечение которых делает коммерческие проекты малоприбыльными.

Уже при разработке первых программ исследователи были неприятно поражены непомерными трудозатратами на отладку [32]. С тех пор программные ошибки вместе отказами аппаратуры так и остаются неотъемлемой частью компьютерных комплексов, а потому для военных приложений или атомной энергетики поливариантность оказывается единственным выходом. Однако, разработчики коммерческих приложений широкого потребления вынуждены минимизировать себестоимость проектов и укладываться в жесткие (хотя и регулярно проваливаемые) сроки. Следовательно ни о какой N-вариантности говорить не приходится. Рыночная гонка вынуждает искать компромисс между количеством отказов предлагаемой к продаже системы и продолжительностью её предварительной доводки [33].

Несмотря на многолетнее развитие методов тестирования ПО [34] отличным результатом считается наличие менее одной ошибки на 1000 строк исходного кода. Этот показатель нечасто достигается на практике и только после продолжительной эксплуатации продукта. Исследования показали, что 5–10 ошибок на 1000 строк не окажутся сногсшибательной новостью [35]. Более того, также выявлено, что в результате непредусмотренных побочных эффектов на каждые устраненные семь ошибок появляется одна столь же серьезная [36].

Конечно, далеко не все программные огрехи оказываются «дырами», сквозь которые черви могут свободно скользить по Сети. Наверняка таких дыр крайне малое количество по сравнению с общим числом просчетов в широко распространенном ПО, но в абсолютном исчислении их более чем достаточно для  удовлетворения фантазий вирусописателей любой квалификации. Так SecurityLab.ru каждый день публикует информацию о десятке-другом уязвимостей, которые могут использоваться и для проникновения в ОС. Прогноз-2010 предсказывает обнаружение 100 тысяч таких «дыр» за один год [37].

Пока в научном мире велись дебаты о поливариантном ПО и методах его верификации, вирусописатели доказали преимущества изменчивости методом от противного. Первые полиморфные вирусы, получившие достаточно широкое распространение под занавес эпохи MS DOS, вызвали немалый переполох и потребовали серьезных конструктивных изменений в антивирусных мониторах и сканерах. К сожалению для бизнесменов от информатики, тривиальный перенос алгоритмов полиморфизации кода на «обычное» ПО вряд ли возможен, поскольку его сложность неизмеримо выше, чем у вирусного кода. Без всесторонних научных исследований в нагрузку к «стандартным» повторяющимся ошибкам при разработке ПО добавятся проблемы модификации. Сообщение «приложение выполнило недопустимую операцию и будет закрыто» окончательно потеряет смысл вместе со службой сбора данных об этих самых операциях.

Не меньшую проблему представляет и устранение обнаруженных «дыр». Червь Морриса показал, что «латание» системы остается второразрядной задачей даже в стенах разработчиков ОС, что актуально и по сей день.

Монокультура ПО не лучшим образом сказывается на скорости устранения уязвимостей. Оповещение о новых «дырах» налажено неплохо, но подавляющая масса потребителей игнорирует предупреждения, поскольку не обладает достаточной квалификацией, чтобы понять их содержание. К тому же репутация «заплат» основательно подпорчена содержащимися в них ошибками и неприятными побочными эффектами, частенько возникающими после «латания». В свете такого опыта привлекательность автоматической доставки критических «заплат» серьезно тускнеет. Кроме того, если вирусописатели научились успешно блокировать и уничтожать антивирусные средства, то изменить один параметр в Реестре не составит для них большого труда.

Несмотря на давно обоснованные сомнения, остается непотопляемой идея о «добрых» червях-вирусах, которые по замыслу авторов должны уничтожать злонамеренные коды и доставлять на компьютеры «заплаты» и прочее полезное ПО. Если бы не примкнувший к этой партии первоопределитель понятия вирусов F. Cohen, то такую гипотезу можно было бы рассматривать как пережитки студенческого романтизма [38]. Конечно, анализ модели (6) дает надежду на то, что античервь, распространяющийся со скоростью на 2 порядка меньшей, чем у врага-конкурента, способен достаточно быстро остановить эпидемию (Рис. 3 и 4), да и выборочная «иммунизация» Сети после обнаружения уязвимости во всех отношениях кажется благом [39].

Однако, опыт контрчервя Welchia подтвердил, что «полезный» вирус – это всего лишь академическое заблуждение. Не вспоминая всуе ошибки реализации, нужно осознавать, также, что найти баланс между количеством «доброты» и степенью вмешательства во внутренние дела «иммунизируемых» систем вряд ли получится [40]. Даже черви с ограниченным сроком активности оказываются неуничтожимыми и продолжают замусоривать Интернет, поскольку в Сети обретается достаточное количество компьютеров с неправильно установленной датой (в т.ч. серверов).

Сегодня компьютерная безопасность – модная и очень прибыльная область деятельности . Не удивительно, что в массовом порядке появляются «волшебные» средства, якобы способные извести на корню зловредные коды из Всемирной Паутины [41], [42], [43]. К сожалению, опыт эвристических анализаторов и систем распознавания лиц, которые столь эффективны в лабораториях, сколь и бесполезны в реальной работе, не позволяет надеяться на достижение заявляемого результата в обозримом будущем. На деле же, охотники за сверхприбылями, имеющие весьма смутное представление о множестве нетривиальных уязвимостей ПО [44], способны только безнадежно дискредитировать саму идею безопасных ОС.


[1] http://www.computerra.ru/compunity/femida/31986/

[2] The Workshop on Rapid Malcode (WORM), October 27, 2003, The Wyndham City Center Washington DC, USA. (http://pisa.ucsd.edu/worm03/)

[3] Jasmin Leveille «Epidemic Spreading in Technological Networks» (http://www.hpl.hp.com/techreports/2002/HPL-2002-287.pdf)

[4] C. G. Senthilkumar «Worms: How to stop them?» (http://wwwcsif.cs.ucdavis.edu/~cheetanc/worms/proposal.ps)

[5] M. Garetto, W. Gong, D. Towsley «Modeling Malware Spreading Dynamics» IEEE INFOCOM 2003 (http://www.ieee-infocom.org/2003/papers/46_01.PDF)

[6] M. M. Williamson and J. Leveille «An epidemiological model of virus spread and cleanup» HPL-2003-39 (http://www.hpl.hp.com/techreports/2003/HPL-2003-39.pdf)

[7] E.W. Dijkstra «On the nature of computing science» (EWD896) (перевод на русский язык http://club.shelek.com/viewart.php?id=146)

[8] S.R. White «Open Problems in Computer Virus Research» Virus Bulletin Conference, Oct 22, 1998, Munich Germany (http://www.research.ibm.com/antivirus/SciPapers/White/Problems
/Open%20Problems%20in%20Computer%20Virus%20Research.pdf
)

[9] А. Красоткин «WWW – дикий, дикий, дикий Интернет» (http://www.computerra.ru/hitech/tech/31379/)

[10] John Leyden «The trouble with anti-virus» (http://www.theregister.co.uk/content/56/32680.html)

[11] Duncan Graham-Rowe «Computer antivirus strategies in crisis» (http://www.newscientist.com/news/news.jsp?id=ns99994119)

[12] А. А. Захарченко «Бой с тенью: компьютерные вирусы и причины сетевого хаоса» Защита информации. Конфидент, 2003, № 6, с. 49–52.

[13] H. W. Hethcote «The Mathematics of Infectious Diseases» SIAM Review Vol. 42, No. 4, pp. 599–653 (http://www.math.rutgers.edu/~leenheer/hethcote.pdf)

[14] M. M. Williamson «Biologically Inspired Approaches to Computer Security» HPL-2002-131 (http://www.hpl.hp.com/techreports/2002/HPL-2002-131.pdf)

[15] J. O. Kephart and S. R. White «Directed-Graph Epidemiological Models of Computer Viruses» Proceedings of the 1991 IEEE Computer Society Symposium on Research in Security and Privacy; Oakland, California, May 20-22, 1991; pp. 343-359. (http://www.research.ibm.com/antivirus/SciPapers/Kephart
/VIRIEEE/virieee.gopher.html
)

[16] C.C. Zou, W. Gong and D. Towsley. «Code Red Worm Propagation Modeling and Analysis» In 9th ACM Symposium on Computer and Communication Security, pages 138-147, Washington DC, 2002. (http://tennis.ecs.umass.edu/~czou/research/codered.pdf)

[17] S. Staniford, V. Paxson and N. Weaver. «How to Own the Internet in Your Spare Time» 11th Usenix Security Symposium, San Francisco, August, 2002. (http://www.icir.org/vern/papers/cdc-usenix-sec02/)

[18] N. Weaver. «Warhol Worms: The Potential for Very Fast Internet Plagues» (http://www.cs.berkeley.edu/~nweaver/warhol.html)

[19] А. Захарченко «Черводинамика» (http://az13.mail333.com/3/worm1.htm)

[20] А. Захарченко «Вирусы и энергосистемы» (http://www.inauka.ru/computer/article35855)

[21] Sh. Gaudin «2003 'Worst Year Ever' for Viruses, Worms» (http://www.esecurityplanet.com/trends/article.php/3292461)

[22] Р. Лемос «США финансируют исследование в области ИТ-монокультур» (http://zdnet.ru/?ID=309987)

[23] «Slammed!» Wired magazine, 11-07-2003 (http://www.wired.com/wired/archive/11.07/slammer_pr.html)

[24] C.C. Zou, L. Gao, W. Gong, D. Towsley «Monitoring and Early Warning for Internet Worms» CCS’03, October 27–30, 2003, Washington, DC, USA. (http://tennis.ecs.umass.edu/~czou/research/monitoringEarlyWarning.pdf)

[25] Z. Chen, L. Gao, K. Kwiat «Modeling the Spread of Active Worms» IEEE INFOCOM 2003
(http://www.ieee-infocom.org/2003/papers/46_03.PDF)

[26] «SCO to Congress: Linux hurts the U.S.» ()

[27] Р. Лемос «MyDoom заставил задуматься о будущем антивирусного ПО» (http://zdnet.ru/?ID=313230)

[28] «План поддержки Windows говорит о трудностях Microsoft» (http://zdnet.ru/?ID=313154)

[29] «Утечка “исходника” Windows: 10 последствий» (http://www.cnews.ru/newcom/index.shtml?2004/02/16/155213)

[30] «Первая уязвимость, обнаруженная при исследовании исходного кода Windows» (http://www.securitylab.ru/42843.html)

[31] http://www.securitylab.ru/43090.html

[32] D. Wittenberg «On Unverifiable “Facts”» Brandeis Graduate Journal, 2003, v. 1 (1) (http://www.brandeis.edu/gradjournal)

[33] Les Hatton «Repetitive failure, feedback and the lost art of diagnosis» Journal of Systems and Software, (10) , 1999 (http://www.leshatton.org/JSS_1099.html)

[34] G. Myers «The Art of Software Testing» 1979

[35] L. Hatton «The T-experiments: Errors in Scientific Software» IEEE Computational Science and Engineering, 1997, 4(2), p. 27-38 (http://www.leshatton.org/IEEE_CSE_297.html)

[36] Les Hatton «Some notes on software failure» (http://www.leshatton.org/RS_1001.html)

[37] S. Berinato «The future of security» (http://www.computerworld.com/securitytopics/security
/story/0,10801,88646,00.html
)

[38] G. Moorer «The Case for Beneficial Computer Viruses and Worms» (http://csrc.nist.gov/nissc/2000/proceedings/papers/601.pdf)

[39] C. Wang, J. Knight and M. Elder «On Computer Viral Infection and the Effect of Immunization» (http://www.cs.virginia.edu/~techrep/CS-99-32.pdf)

[40] А. Захарченко «Червивые баталии» (http://az13.mail333.com/3/worm3.htm)

[41] «He’s confident system can stop any virus» (http://www.suntimes.com/output/tech/cst-fin-lundy22w.html)

[42] «С хакерами будут бороться с помощью скриптов-мутантов» (http://www.securitylab.ru/42420.html)

[43] «TruSecure announces early-warning system» (http://www.computerworld.com/securitytopics/security
/story/0,10801,89424,00.html
)

[44] Крис Касперски «Неизвестная уязвимость функции printf» (http://www.citforum.ru/security/articles/printf/)

Размещение рекламы — тел. +7 495 4119920, ICQ 232284597

Подписка на новости IT-портала CITForum.ru
(библиотека, CITKIT.ru, CitCity)

Новые публикации:

24 декабря

CITKIT.ru:

  • Новогодние поздравления
  • Сергей Кузнецов. Цикл Операционные системы: Ностальгия по будущему:

  • Алексей Федорчук. OpenSolaris 2008.11 Release

  • Сергей Голубев:

  • Евгений Чайкин aka StraNNik (Блогометки):

    17 декабря

  • С.Д.Кузнецов. Базы данных. Вводный курс

    10 декабря

    CITKIT.ru:

  • OpenSolaris 2008.11 Release

  • Альтернативные ОС: две грустные истории (С.Кузнецов)
  • Nokia N810 — доведение до ума
  • CitCity:

  • Платформа 2009: заоблачные перспективы Microsoft

    4 декабря

  • Лекция С.Д.Кузнецова Понятие модели данных. Обзор разновидностей моделей данных

    CITKIT.ru:

  • OpenSolaris 2008.11 Release. Первые впечатления

  • Linux vs FreeBSD: продолжим "Священные войны"?

  • Nokia N810 as is

  • Индульгенция для FOSS

  • Друзья СПО'2008

    26 ноября

  • Нечеткое сравнение коллекций: семантический и алгоритмический аспекты

    CitCity:

    CITKIT.ru:

  • Глава из книги А.Федорчука
    Сага о FreeBSD:
  • 19 ноября

  • Проблемы экономики производства крупных программных продуктов

  • Язык модификации данных формата XML функциональными методами

    CITKIT.ru:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:

    Заметки к книге:

  • FreeBSD: монтирование сменных устройств и механизм HAL
  • Текстовый редактор ee

    12 ноября

  • Правило пяти минут двадцать лет спустя, и как флэш-память изменяет правила (Гоц Грейф, перевод: Сергей Кузнецов)

    CITKIT.ru:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:
  • OSS в России: взгляд правоведа (В.Житомирский)

  • Новая статья из цикла С.Голубева "Железный марш":

    29 октября

  • О некоторых задачах обратной инженерии

  • Веб-сервисы и Ruby

  • Тестирование web-приложений с помощью Ruby

    CITKIT.ru:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:

  • PuppyRus Linux - беседа с разработчиком (С.Голубев)

  • Сергей Кузнецов. Заметка не про Linux

    22 октября

  • Обзор методов описания встраиваемой аппаратуры и построения инструментария кросс-разработки

    CITKIT.ru:

  • Сергей Кузнецов. Почему я равнодушен к Linux

  • Глава из книги А.Федорчука
    Сага о FreeBSD:
  • Что надо иметь
    3. Базовые познания

    CitCity:

  • Управление IT-инфраструктурой на основе продуктов Microsoft

    15 октября

  • Методы бикластеризации для анализа интернет-данных

    CitCity:

  • Разъемы на ноутбуках: что они дают и зачем их так много?
  • AMD Puma и Intel Centrino 2: кто лучше?

    CITKIT.ru:

  • Новый цикл статей С.Голубева
    Железный марш:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:

    8 октября

  • Автоматизация тестирования web-приложений, основанных на скриптовых языках
  • Опыт применения технологии Azov для тестирования библиотеки Qt3

    Обзоры журнала Computer:

  • SOA с гарантией качества
  • Пикоджоуль ватт бережет
  • ICT и всемирное развитие

    CitCity:

  • Пиррова победа корпорации Microsoft

    CITKIT.ru:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:

    Статья из архива:

  • Я живу в FreeBSD (Вадим Колонцов)

    Новые Блогометки:

  • Перекройка шаблона Blogger или N шагов к настоящему
  • Blogger. Comment style
  • Screenie или глянцевый снимок экрана

    2 октября

    CITKIT.ru:

  • Сага о FreeBSD (А. Федорчук)

    Zenwalk: пакет недели

  • Банинг — интеллектуальное развлечение (С.Голубев)

    CitCity:

    25 сентября

  • Клермонтский отчет об исследованиях в области баз данных

    CITKIT.ru:

  • Пользователям просьба не беспокоиться... (В.Попов)

  • Снова про ZFS: диск хорошо, а два лучше
  • Командная оболочка tcsh (А.Федорчук)

    Zenwalk: пакет недели

    17 сентября

  • T2C: технология автоматизированной разработки тестов базовой функциональности программных интерфейсов
  • Технология Azov автоматизации массового создания тестов работоспособности

    CITKIT.ru:

  • FreeBSD: ZFS vs UFS, и обе-две — против всех (А.Федорчук)

    Zenwalk: пакет недели

  • Дачнет — практика без теории (С.Голубев)

    10 сентября

  • За чем следить и чем управлять при работе приложений с Oracle
  • Планировщик заданий в Oracle
    (В.Пржиялковский)

    CITKIT.ru:

  • Microsoft: ответный "боян" (С.Голубев)

  • Причуды симбиоза, или снова "сделай сам" (В.Попов)

  • Файловые системы современного Linux'а: последнее тестирование
  • Zsh. Введение и обзор возможностей
    (А.Федорчук)

    Описания пакетов Zenwalk: Zsh, Thunar, Thunar-bulk-rename, Xfce4-places-plugin, Xfce4-fsguard-plugin

    Блогометки:

  • Google Chrome
  • Лончер для ASUS Eee PC 701

    3 сентября

    CITKIT.ru:

  • Заметки о ядре (А.Федорчук):

    Добавлены описания пакетов Zenwalk: Galculator, Screenshot, Gnumeric, Pidgin

    В дискуссинном клубе:

  • И еще о Википедии и Google Knol

  • Лекция для начинающего линуксоида (С.Голубев)

    26 августа

  • Транзакционная память (Пересказ: С. Кузнецов)

    CITKIT.ru:

  • Открыт новый проект Zenwalk: пакет недели

  • Статья Текстовые процессоры и их быстродействие: конец еще одной легенды?

    21 августа

    CITKIT.ru:

  • Почему школам следует использовать только свободные программы (Ричард Столлман)
  • Беседа Сергея Голубева с учителем В.В.Михайловым

  • Википедия или Гуглезнание? Приглашение к обсуждению (Алексей Федорчук)
  • Народная энциклопедия от Google (StraNNik)

  • Обзор Mandriva 2009.0 Beta 1 Thornicrofti
  • Новичок в Линукс: Оптимизируем Mandriva 2008.1

  • Книга Zenwalk. Приобщение к Linux:

    13 августа

    CitCity:

  • Мирный Atom на службе человеку. Обзор платы Intel D945GCLF с интегрированным процессором
  • Обзор процессоров Intel Atom 230 на ядре Diamondville

  • iPhone - год спустя. Скоро и в России?

    CITKIT.ru:

  • Интермедия 3.4. GRUB: установка и настройка (из книги Zenwalk. Приобщение к Linux)

    6 августа

  • СУБД с хранением данных по столбцами и по строкам: насколько они отличаются в действительности? (Пересказ: С. Кузнецов)

    CITKIT.ru:

  • Интермедия 2.2. Что неплохо знать для начала (из книги Zenwalk. Приобщение к Linux)

  • И снова про шрифты в Иксах (А.Федорчук)

  • 20 самых быстрых и простых оконных менеджеров для Linux

  • Дело о трех миллиардах (С.Голубев)

    30 июля

  • OLTP в Зазеркалье (Пересказ: С. Кузнецов)

    CitCity:

  • Будущее BI в облаках?
  • Тиражные приложения и заказная разработка. Преимущества для заказчика
  • Дискуссия со сторонниками заказной разработки

    CITKIT.ru:

  • Новые главы книги Zenwalk. Приобщение к Linux:
  • Глава 8. Пакеты: средства установки, системы управления, системы построения
  • Глава 9. Zenwalk: репозитории, пакеты, методы установки

    23 июля

    CITKIT.ru:

  • Все против всех. 64 vs 32, Intel vs AMD, tmpfs vs ext3
  • Две головы от Intel

  • Zenwalk: обзор штатных приложений (глава из книги "Zenwalk. Приобщение к Linux")

  • Нормально, Григорий...

    16 июля

    Обзоры журнала Computer:

  • Перспективы и проблемы программной инженерии в XXI веке
  • Большие хлопоты с большими объемами данных
  • Перспективы наноэлектроники

    CITKIT.ru:

  • Интермедия о лицензиях (А.Федорчук. "Zenwalk. Приобщение к Linux")

  • Есть ли будущее у KDE?

  • Linux в школе: альтернативный вариант в задачах

  • Шифр (приключения агента Никодима)

    10 июля

    CITKIT.ru:

  • Новые разделы книги А. Федорчука Zenwalk. Приобщение к Linux:
  • Интермедия вступительная. Linux или GNU/Linux? Как вас теперь называть?
  • Глава 5. Среда Xfce
  • Глава 6. Xfce: приложения и плагины

  • ZUR (Zenwalk User Repository) FAQ

    2 июля

  • Персистентность данных в объектно-ориентированных приложениях (С. Кузнецов)

    CITKIT.ru:

  • Новые разделы книги А. Федорчука Zenwalk. Приобщение к Linux:
  • Интермедия 1.2. Дорога к Zenwalk'у. Период бури и натиска
  • Интермедия 3.3. Немного о Linux'е и "железе"
  • Глава 4. Настройка: инструментами и руками
  • Интермедия 4.1. Zenpanel и конфиги: поиски корреляции

  • Интервью с Жан-Филиппом Гийоменом, создателем дистрибутива Zenwalk

  • Linux в школе: первые итоги (С. Голубев)

    25 июня

    CITKIT.ru:

  • Zenwalk. Приобщение к Linux (А. Федорчук)

  • Логика и риторика (С.Голубев)

  • Технология Tru64 AdvFS

  • Ханс Райзер предлагает отвести полицейских к телу Нины

    18 июня

  • Проекты по управлению данными в Google (Пересказ: С. Кузнецов)

    CITKIT.ru:

  • ОС и поддержка "железа": мифы и реальность (А. Федорчук)

  • Linux в школе: другие дистрибутивы

  • Пинок (С. Голубев)

    4 июня

  • Ландшафт области управления данными: аналитический обзор (С. Кузнецов)

    CITKIT.ru:

  • Linux в школе: слово заинтересованным лицам

  • SlackBuild: пакеты своими руками

  • Linux от компании Novell. Установка и обзор openSUSE Linux

    Все публикации >>>




  • IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

    Информация для рекламодателей PR-акции, размещение рекламы — тел. +7 495 4119920, ICQ 232284597 Пресс-релизы — pr@citcity.ru
    Послать комментарий
    Информация для авторов
    Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
    Copyright © 1997-2000 CIT, © 2001-2007 CIT Forum
    Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...