Коронные фишки вредоносных программ

    Развитие информационных технологий сказывается на разработке всего спектра программного обеспечения (ПО). Не обходит оно стороной и вредоносные программы. Можно выделить основные приемы, применяемые при разработке «передового» вредоносного программного обеспечения (ВПО).

    1. Эксплуатация уязвимостей ПО, установленного на поражаемом компьютере для своего скрытого запуска или повышения привилегий.
      Примеры — Stuxnet вместо традиционного запуска с USB носителя через автозапуск (autorun.inf) использовал уязвимость обработки ярлыков MS10-046, позже эту же уязвимость стал использовать Sality. Conficker использовал уязвимость сетевого сервиса «Сервер» MS08-067, это позволило ему размножиться на большое количество машин. Уязвимость, как правило, относится к классу переполнение буфера, но не обязательно, может быть еще переполнение кучи и др. Краткая суть переполнения буфера: в программировании часто используют стек. Концепция стека позволяет упростить передачу параметров в функцию и возврата управления в то место, откуда произошел вызов функции. Пример: вызвали мы свою нужную функцию, которая должна вводить строку с клавиатуры, в стек был помещен адрес возврата, допустим 4 байта, далее мы зарезервировали в стеке 255 байт под строку — нам не жалко. А товарищ Иванов при работе с нашей программой взял да и ввел строку длиной 364 байт. 4 байта адреса возврата при этом переписались другими байтами (из строки). Поэтому назад управление вернется не в то место, откуда вызывалась функция, а в какое-то другое. В том числе можно подстроить, что наша строка будет содержать в себе двоичные коды и переход произойдет на адрес, указывающий на область памяти внутри нашей строки. Такая подстроенная последовательность (вообще данных, не только строк) называется шелл-кодом, а вредоносная программа, внедряющая шелл-код — эксплоитом. Уязвимость же нашей программы заключается в том, что нет проверки длины вводимой строки. Для устранения уязвимости применяется патч. Патч — это программа (или последовательность действий), которая изменяет определенные файлы для устранения уязвимостей.
    2. Применение технологии полиморфизма.
      Как известно, одним из методов антивируса для обнаружения вредоносных программ является сигнатурный анализ. Это значит, что для ВПО определяется какая-либо характерная последовательность данных (байт), которая называется сигнатурой. Такая сигнатура не должна встречаться ни у какой другой программы. В общем случае, она может выглядеть в текстовом описании так: 127 байт от начала равен 7, 145237 байт с конца равен 255, при этом 145235 байт должен быть равен 0. Полиморфизм же направлен на то, чтобы каждый раз файл ВПО был другим, и для него нельзя было выделить какую-либо закономерность (сигнатуру). Например, Zeus при своей скрытой установке перекодировал свой основной модуль, поэтому на разных компьютерах одна и та же его версия различалась почти в каждом байте. Особо «продвинутым» методом является «серверный» (server-side) полиморфизм, когда вредоносный сервер каждому компьютеру загружает заново собранную копию ВПО. При этом алгоритм преобразования файлов не содержится в самом ВПО, а реализуется на сервере. Это многократно увеличивает возможности по формированию непохожих копий, так как код «мутации» может быть сколь угодно большим и сложным. Данный метод применялся, например, в Storm.
    3. Наличие функционала руткита (rootkit), направленного на сокрытие признаков работы ВПО на зараженном компьютере.
      Как правило, это подразумевает невидимость файлов ВПО на уровне системы, невидимость процессов ВПО в «Диспетчере задач», определенных ключей реестра и так далее.
    4. Реализация функций самозащиты.
      Самозащита подразумевает противодействие антивирусным программам, например, принудительное завершение их работы, или действиям пользователя, например, блокирование запуска редактора реестра. Также может предотвращаться доступ к порталам антивирусных компаний или сайтам по информационной безопасности, откуда можно получить инструкции по удалению того или иного ВПО, скачать обновление к антивирусу или сам антивирус. Правда, некорректная работа антивируса является демаскирующим фактором для ВПО. Отдельным пунктом идет удаление с поражаемого компьютера своих «конкурентов» — других вредоносных программ. Классическим случаем такого противостояния является борьба между семействами ботов Srizbi и Storm.
    5. Использование системы управления для передачи команд и приема информации от ВПО, устойчивой к действиям антивирусных компаний, направленных на пресечение деятельности ботнета.
      Ботнет — это совокупность ботов (вредоносных программ одной разновидности), получающих команды из одного источника — от оператора или операторов (злоумышленников).

    Базовые сведения из области криптографии


    Для общего понимания, в чем заключается технология электронной цифровой подписи (ЭЦП), о которой речь пойдет далее, необходимо раскрыть основные понятия криптографии. Существующие методы шифрования можно разделить на симметричныеDES, 3DES, AES, RC4, RC6 и асимметричные (или шифрование с открытым ключом) — RSA, ECDSA. Основные различия между ними:

    • симметричное шифрование намного быстрее асимметричного (в десятки раз);
    • в симметричном шифровании ключ один, в асимметричном — два.

    При симметричном шифровании существует необходимость обмена ключом между двумя пользователями (что очень неудобно, особенно если они находятся очень далеко друг от друга), этого недостатка лишено асимметричное шифрование. Его основная сущность: имеется два ключа — закрытый и открытый, причем закрытый ключ невозможно за приемлемое время (например в течение жизни взломщика) подобрать или вычислить из открытого, используя доступные вычислительные мощности сегодняшнего дня. Естественно, что прямо сейчас 8 битный ключ можно вычислить меньше чем за секунду, тогда как 1024 битный придется подбирать в течение множества лет. Еще одно свойство открытого и закрытого ключа — что любым из них можно сообщение зашифровать, а другим расшифровать. То есть возможны две операции:

    1. отправитель — исходный текст — закрытый ключ — зашифрованный текст — открытый ключ — расшифрованный текст — получатель;
    2. отправитель — исходный текст — открытый ключ — зашифрованный текст — закрытый ключ — расшифрованный текст — получатель.

    Операция 1 применяется для подписи, операция 2 — для шифрования, при этом используются две пары ключей по количеству участников обмена (пользователи A и B):

    1. отправитель A — исходный текст — закрытый ключ A — зашифрованный текст — открытый ключ A — расшифрованный текст — получатель B;
    2. отправитель A — исходный текст — открытый ключ B — зашифрованный текст — закрытый ключ B — расшифрованный текст — получатель B.

    Закрытый ключ должен храниться только у пользователя и больше нигде, открытый ключ в виде связки пользователь-ключ может свободно распространяться где угодно. В первом случае (удостоверение личности или подпись) пользователь B уверен, что сообщение отправил пользователь A, так как никто кроме A не может зашифровать сообщение, чтобы оно расшифровывалось открытым ключом А (закрытый ключ нельзя вычислить по открытому). Во втором случае (шифрование) только пользователь B может расшифровать при помощи своего закрытого ключа B сообщение, зашифрованное любым пользователем при помощи его открытого ключа B (закрытый ключ нельзя вычислить по открытому).
    На практике схема несколько сложнее, так как уже упоминалось, что асимметричное шифрование в десятки раз медленнее симметричного. Поэтому при подписи используют шифрование не всего объема данных, а некоторой функции от этих данных, называемой хэш-функцией . В качестве простейшей хэш-функции можно рассмотреть прием, часто применяющийся в астрологии, например число года 1998 равно 1+9+9+8=27=2+7=9. В первом приближении именно так работает хэш-функция, только вместо сложения употребляются многие другие функции. В приведенном примере видно, что, например, год 1899 будет тоже иметь число 9, такая ситуация называется коллизией, это значит, что разным наборам данных соответствует одно значение хэш-функции (или просто хэш). Наиболее распространенные виды хэшей — MD5, MD6, SHA-1, SHA-2. Таким образом, технически ЭЦП — это добавочный блок данных, который содержит зашифрованный закрытым ключом пользователя хэш передаваемых данных. Коллизия может применяться для подделки ЭЦП. Если взять ЭЦП от какого-либо файла и сформировать наш подложный файл с таким же хэшем, то у конечного пользователя все вычисления сойдутся, и он подумает, что файл отослан от известного ему человека (а не от нас). Проблема заключается в том, что невозможно создать алгоритм, какие байты добавить к нашему файлу, чтобы получилась заданное значение хэша. Конечно можно, допустим, добавить к нашему файлу байт со значением 0, потом 1, 2 и так до 255, затем аналогичным образом добавлять второй, третий и т.д., но это займет очень много времени.
    Что же касается шифрования, то там тоже применяются некоторые модификации. Так, асимметричным алгоритмом шифруется опять-таки не весь набор данных, а так называемый сеансовый ключ, генерируемый случайным образом. Этим сеансовым ключом и шифруется набор данных по симметричному алгоритму, что происходит гораздо быстрее. Сам сеансовый ключ шифруется открытым ключом получателя и добавляется к исходным данным. Получатель расшифровывает своим закрытым ключом сеансовый ключ, и с его помощью расшифровывает исходное сообщение.

    Использование криптографии во вредоносных программах


    С помощью применения криптографических методов злоумышленники решают следующие задачи:
    • путем применения ЭЦП подтверждают, что обновленная версия ВПО или команда получена действительно от операторов, а не от конкурентов-злоумышленников или сотрудников антивирусных компаний. Для этого открытый ключ «зашивается» в бота, а закрытый — хранится в надежном месте (естественно, не на сервере). Не секрет, что многие программы содержат в себе уязвимости, не являются исключением в этом смысле и командные сервера ботнетов. В некоторых случаях удавалось осуществить взлом таких серверов, далее появлялась возможность отдать команду на самоуничтожение ботов, распространить антивирусную утилиту под видом новой версии бота или сменить адрес управляющего центра. Использование ЭЦП снимает проблему перехвата управления над ботнетом;
    • шифруют информацию, украденную с зараженного компьютера. Таким образом, результатами работы ботсети могут воспользоваться только ее операторы (которые имеют закрытый ключ), то есть взлом сервера управления ничего не даст;
    • многие антивирусные средства не анализируют действия программ (мониторинг подозрительных действий, например внедрения своего кода в другой процесс), если они подписаны ЭЦП крупных компаний-производителей ПО и разработчиков драйверов. Эта особенность успешно используется злоумышленниками для обхода систем антивирусной защиты. Подпись формируется при помощи украденных закрытых ключей (Stuxnet подписан украденным ключом Realtek), методом подбора коллизии (Flame подписан якобы Microsoft), в отдельных случаях удавалось зарегистрировать фиктивную компанию по разработке ПО и получить свой собственный закрытый ключ легально;
    • эксперты антивирусных компаний отмечают, что в последнее время участились случаи распространения ransomware — программ-вымогателей. В качестве классического образца ransomware можно привести GPCode. Эта вредоносная программа шифрует файлы пользователя случайным сеансовым ключом, который сохраняет в зашифрованном при помощи открытого ключа (находится в GPCode) виде. Исходные данные, естественно, стираются. Для выполнения обратной операции необходимо перечислить определенную денежную сумму по реквизитам, оставленным злоумышленником и переслать ему этот зашифрованный сеансовый ключ. Он расшифровывается при помощи закрытого ключа (находится у злоумышленника) и отправляется обратно пользователю, после чего файлы будут успешно расшифрованы. Единственная надежная защита от воздействия подобных программ — резервное копирование.

    Разновидности систем управления


    В своем развитии системы управления прошли следующие стадии:
    • жестко заданные адреса E-Mail;
    • использование IRC чатов, боты подсоединялись к определенным каналам на заданных серверах, при этом сервера могли быть как легальными, так и взломанными, с последующей установкой на него ПО IRC сервера;
    • жестко заданные доменные имена или IP адреса;
    • использование DGA (Domain Generation Algorithm – алгоритм генерации доменных имен);
    • использование технологий P2P.

    Очевидно, что все, что задано статически, рано или поздно блокировалось антивирусными компаниями. Для решения этих проблем и используются технологии DGA и P2P.
    Сущность DGA заключается в том, что имена командных центров для управления не являются жестко заданным, а генерируются по псевдослучайному алгоритму с использованием текущей даты и времени, причем количество таких доменов должно быть достаточно большим, например 1000 в сутки. Это приводит к тому, что зарегистрировать или заблокировать все такие имена — очень сложная и практически неосуществимая задача. Однако использование DGA в ВПО позволяет антивирусным компаниям использовать так называемый sinkhole-маршрутизатор — поддельный управляющий центр, который боты начинают воспринимать как свой. Таким образом, становится возможным оценить масштабы заражений и их географическое распределение путем анализа IP адресов входящих соединений. В отдельных случаях это даже позволяет перехватить управление и дать команду на самоуничтожение, что, впрочем, редкость, так как команды и новые файлы обычно подписываются ЭЦП злоумышленниками.
    Использование же P2P позволяет полностью отказаться от концепции управляющего центра, управление или распространение новых версий бота может производиться с любого зараженного компьютера.
    P2P (peer-to-peer, одноранговая сеть) предполагает большое количество компьютеров, каждый из которых содержит некоторую информацию о других таких же компьютерах, например IP адрес. Список таких компьютеров (пиров, peer) называется bootstrap list (список первоначальной инициализации). В зависимости от того, откуда берется этот список, различают частично децентрализованные и полностью децентрализованные P2P сети.
    Частично децентрализованные P2P сети предполагают загрузку bootstrap list с заранее известных серверов. В частности, так работает uTorrrent. В такой системе существует слабое место — достаточно заблокировать доступ к серверам, содержащим bootstrap list. Поэтому в ВПО используется полностью децентрализованная схема. Следует отметить, что концепция полностью децентрализованной P2P сети применительно к ВПО подразумевает, что распространение будет проходить в два этапа. На первом этапе распространяется бот с пустым bootstrap list, он периодически обращается к командному центру, тот в свою очередь фиксирует IP адрес бота. Кроме непосредственно IP адреса, операторов ботнета интересует информация, не находится ли бот за шлюзом (gateway) или сетевым экраном (firewall). Если это не так, значит, бот может выступать в роли супер пира (super peer, super node), то есть к нему могут напрямую подключаться другие пиры. Как только набрано необходимое количество суперпиров, их список заносится в bootstrap list, и новая версия бота с ним начинает распространяться злоумышленниками. После распространения все боты обмениваются информацией о своих соседях и формируют свой собственный bootstrap list. В результате этого возникает P2P сеть. Она устойчива к пропаданию определенного количества ботов, так как список соседей постоянно меняется. В ходе обмена боты также обмениваются информацией о своей версии. Если бот обнаруживает, что он «устарел», происходит закачка новой версии с одного из соседей. При закачке, как правило, проверяется ЭЦП файла, чтобы исключить возможность распространения «не своих» файлов. Таким образом, все боты в P2P поддерживают себя в актуальном состоянии. Именно по вышеописанной двухэтапной схеме работают последние версии Storm, Sality и Zeus. Используемая ими реализация P2P базируется на протоколе Kademlia. Conficker использует свою собственную реализацию, самое интересное в ней то, что bootstrap list у него первоначально пустой, своих соседей он обнаруживает методом сканирования IP адресов. В связи со своими особенностями Conficker более напоминает средство отработки новейших технологий в написании ВПО, чем просто очередной бот.

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

    Средняя зарплата в IT

    110 000 ₽/мес.
    Средняя зарплата по всем IT-специализациям на основании 8 851 анкеты, за 2-ое пол. 2020 года Узнать свою зарплату
    Реклама
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее

    Комментарии 50

      +3
      Да даже простые «блокираторы windows» каждый раз новые. Антивирь есть, обновлённый, работает, но «виндовус заблокирован» гордо красуется посреди экрана)
        0
        Комментарий написали с холодильника? :)
          0
          Вот не знаю…
          Антивирь действтительно часто пропускает, но…
          с одной стороны я себе с рабочим антивирем, регулярным обновлением флеша и браузера, и включенным USB-DISC-Security ни разу почему-то не намотал блокиратор,
          С другой стороны сколько не приносят последнее время машины с блокировкой, а вечно одна и таже картина — ни один антивирус не ловит, но помогает банальная ручная или полуручная чистка автозагрузки…
          +3
          Ну дело то не продвинутости «блокираторов», а в том, что подавляющее большинство юзеров жмут кнопку «Да» не читая и не думая… старая истина — «самая большая уязвимость в безопасности сидит примерно в метре от монитора.»
            +13
            Цитата из блога Федорова:
            На Западе развитие персональных компьютеров шло под знаком стремления на массовый рынок. Чем шире сбыт, тем больше прибыль от бизнеса. А ради прибыли – мы знаем, на что может пойти капитализм. На всё.
            Что нужно, чтобы компьютер стал массовым товаром? Убедить рядовых потребителей, что они умеют с ним обращаться. Именно убедить – это много проще, чем научить. Убеждение происходило не только через рекламу и пропаганду. Главным средством убеждения являлось развитие пользовательского интерфейса.
            Интерфейс делали всё более красивым и эмоционально привлекательным. В него включались стандартные операции за счёт снижения универсальности и функциональности. Специальная кибернетическая терминология вытеснялась бытовой («файл» —> «документ»; «каталог» —> «папка»; «запустить программу» —> «открыть приложение»). Создавались интерфейсы над интерфейсами, которые всё более отчуждали пользователя от сути происходящего в недрах машины. Эффективность вычислений приносилась в жертву наглядности для человека.
            В итоге среднего чайника убедили, что он умеет и знает. «Чего тут знать? Тыкай мышью пальцем и выбирай из меню!» Но настоящие знания и умения от этого не появились. Айтишник среди пользователей – как зрячий среди слепых, обманывает как пожелает. Хакер же – обманывает айтишника как слепого. Знание каждого уровня «вглубь» даёт качественное преимущество над всеми плавающими выше.
            Но про эти уровни и свою «слепоту» пользователи не подозревают. И не очень-то любят слышать правду, потому что неприятно осознавать собственную некомпетентность. Следователи и судьи – не исключение. Они хотят верить в свою власть над компьютером и поэтому отрицают необходимость специалиста. Но власть эта – придуманны фантом.
            +4
            ассиметричные
            Даже по странице, на которую ссылается данное слово, видно, что вы ошиблись. И ладно бы опечатка, но по тексту везде эта ошибка…
              +1
              Спасибо, поправил. А Word, зараза, даже не подсказал =(
                +2
                У меня и без ворда глаз зацепился, что рядом стоят слова "симметричный" и «ассиметричный». Хотя разница должна быть только в приставке «а». К слову, браузер неправильное написание тоже подчеркнул (хром).
                  0
                  Ну хорошо-хорошо, моя ошибка. Незачем по 10 раз повторять.
                    0
                    тогда уж и «привелегий», это даже и хром подчеркнул )
              +3
              Честно говоря, открывал, ожидая увидеть про что-то типа старых YankeeDoodle или Antiwin.1342 :-)
                +2
                К сожалению времена Cascade уже прошли.
                +1
                Спасибо за обзор.
                То что ВПО почти всегда впереди я уже дано убедился. У меня родитель любит в инете серфить. Пока стояла win пере устанавливать приходилось раз в 2-3 месяца. И антивирусы разные пробовал (kav, nod32, drweb) и уровень защиты на максимум ставил. И все равно дело заканчивалось либо винлоком либо потерей файлов. Помогло решение linux + apparmor. Уже 2 года, и ни каких проблем.
                  –3
                  Странно. Не сочтите за рекламу, но года 3 использую касперский. Примерно столько же стоит Win7 и отлично работает. При этом компьютер живет активной интернет-жизнью. Предположу, что главная уязвимость в вашем случае, как верно подметили выше, сидит в метре от монитора.
                    0
                    Уважаемые товарищи, убедительная просьба — перестаньте меряться линейками. Мне было бы интересно увидеть в комментах аргументированную критику статьи или полезные дополнения, но никак не очередной холивар вида: «А вот у меня...»
                      0
                      Холивара и в мыслях не было, но по вашей просьбе выхожу из дискуссии.
                        +1
                        «Холивара и в мыслях не было»: поддерживаю.
                        Меня интересуют технические и организационные средства борьбы с ВПО. Как уже писал домашнюю проблему я решил. Даже не смотря на наличие самого опасного «ВПО», находящегося между монитором и креслом. Однако на работе не все так уж радужно. С серверами проблему решил, поставил *nix, настроил защиту и обновление — проблем нет. А на рабочих местах бывают случаи заражения. Инет не отключить и *nix не поставить, и даже обновления ОС не имею возможности ставить по определенным причинам. Съемные носители еле убедил начальство запретить, сеть на VLAN порезал с настройкой прав доступа из каждого VLAN. Хотя поле этого выявление случаев заражения стало гораздо меньше, однако остаются случаи заражения через инет. Есть у кого дельные советы?
                        P.S. То что нужно обеспечивать рабочие места лицензионным ПО и своевременными обновлениями я знаю.
                          0
                          Для простого пользователя средство только одно — наличие знакомого грамотного специалиста по настройке ОС и ликвидации последствий воздействия ВПО.
                            +1
                            Вижу решение проблемы только в урезании прав.
                            Или, как вариант, использование всяких «песочниц» и прочих виртуалок, смысл — не хранить все яйца в одной корзине.
                            0
                            Утверждение, что ПО может все то же, что и пользователь все еще в силе.
                            0
                            Тут, знаете ли, не любят, когда начинают рассказывать про Windows и антивирусы. Я, вот, например, вообще антивирус не использую. Потому что, если что, он не поможет — он защищает только от известных угроз.
                              0
                              Только одно уточнение: не полагаться полностью на антивирус и не использовать его совсем — это разные вещи.
                              Всё-таки об уже известных угрозах они сообщают, какие-то лучше, какие-то хуже. А в остальных случаях нужно думать самому, нажимая на кнопки, всё правильно.
                                0
                                Согласен, немного неправильно выразился. Не использую антивирус в качестве резидентного монитора. Но если что — CureIT c Bart PE.
                                  0
                                  Это я немного неправильно выразился. :)
                                  Т. к. имел в виду не только файловый антивирус, но и как раз резидентный монитор, проверяющий интернет-ссылки и скачиваемые файлы, в т. ч. скрипты на сайтах — на них нарваться проще всего.
                            +2
                            Интересно, под win есть аналог apparmor?
                              +1
                              А без АА не помогало?
                                0
                                Использование только антивируса сегодня не дает практически никакой защиты. Воспользовались бы комплексом антивирус + фаервол + проактивная защита-HIPS (или вы им и пользовались?)
                                  0
                                  Ими и пользовался. фаервол — iptables на маршрутизаторе. антивирус + проактивная защита = касперский. Дело закончилось винлоком. При запуске системы в безопасном режиме касперский ничего не нашел на компе. Это и было последней каплей.
                                  0
                                  При использовании системы, не интересной производителям ВПО — это нормально.
                                  +1
                                  Объясните мне, пожалуйста, такое про шелл-код. Разве операционная система не должна блокировать запуск любого кода со страницы памяти, специальным образом для этого не назначенной?
                                    +1
                                    Должна, только есть специальные методы обхода таких ограничений.
                                      +1
                                      А чуть подробнее?
                                        0
                                        Какие, например?
                                          +2
                                          Более подробно об ошибках переполнения буфера написано тут. Вот описание обхода DEP для примера.
                                            0
                                            очень старые статьи, много что поменялось с тех пор.
                                              0
                                              Для ликбеза сойдет. Могу более детально поискать информацию, но боюсь, это будет интересно очень ограниченному кругу лиц.
                                    • НЛО прилетело и опубликовало эту надпись здесь
                                        0
                                        Ну, по большому счету, ОС — это тоже разновидность ПО, а компьютер можно атаковать только физически, например, бейсбольной битой =)
                                        • НЛО прилетело и опубликовало эту надпись здесь
                                        0
                                        A можно уточнить про
                                        Следует отметить, что концепция полностью децентрализованный P2P сети применительно к ВПО подразумевает, что распространение будет проходить в два этапа.


                                        Т.е. на 1-м этапе это ВПО отcомится к разряду
                                        жестко заданные доменные имена или IP адреса;

                                        А после этого он переключается в полноценный p2p?
                                          0
                                          На первом этапе ВПО работает в смешаном режиме — ждет подключений извне и передает на сервер свой адрес. Классический пример — Zeus, сначала распространялась версия DGA + P2P, а потом — только P2P.
                                          0
                                          Операция 1 применяется для шифрования, операция 2 — для подписи, при этом используются две пары ключей по количеству участников обмена (пользователи A и B):

                                          1. отправитель A — исходный текст — закрытый ключ A — зашифрованный текст — открытый ключ A — расшифрованный текст — получатель B;
                                          2. отправитель A — исходный текст — открытый ключ B — зашифрованный текст — закрытый ключ B — расшифрованный текст — получатель B.


                                          Наоборот:

                                          1-я операция используется для подписи (текст шифруется закрытым ключом, который есть только у отправителя).

                                          2-я операция — для шифрования сообщения — текст шифруется открытым ключом, а расшифровать его сможет только тот, у кого есть закрытый секретный ключ.
                                            0
                                            А вот это действительно косяк, пора завязывать с написанием статей в 2 часа ночи. Поправил.
                                              0
                                              Причем далее по тексту было правильно написано.
                                                0
                                                Думаю, это было настолько очевидно, что никто даже не обратил внимания. Так обычно и бывает. :)
                                                Но чтобы не запомнили неправильно, если кто не знал, решил подчеркнуть в комментариях, а не в личке.
                                              0
                                              С этой статьей вообще интересно, просмотров и «в избранном» больше всего, а плюсов не то что бы очень много. Я так понимаю, тема для всех интересная и относительно «разжевано», но большинство пользователей не имеет права голосовать.
                                                +1
                                                Это всегда так. Часто люди добавляют статью в избранное, чтобы почитать потом, когда время будет. А статья интересная, написана отлично. Несмотря на то, что все действительно давно разжевано, в первый раз вижу, чтобы так компактно и понятно была размещена довольно объемная тема. Было бы интересно продолжение, например как антивирусные компании все-таки будут бороться с P2P (а не бороться они не могут)? Насколько эффективно и надежно для ботнетов такое управление по сравнению с классическими способами централизованного управления? Про полиморфизм очень интересно — а возможно ли создать такой алгоритм server-side полиморфизма, при котором можно создавать очень большое количество копий вируса, уникального для любого компьютера? В таком случае сигнатурный анализ становится полностью бесполезным? Как тогда надежно детектить вирусы?
                                                  0
                                                  Столько вопросов сразу. А за хорошие слова спасибо. На мой взгляд, бороться нужно не со следствием, а с причиной. А причин довольно много, основные из них, архитектурные просчеты платформы Windows+Intel, ошибки в ПО и заблуждение пользователей, что компьютер (в настоящее время) очень простая штука. Я уже подумывал написать филосовскую статью по поводу сложившейся ситуации (противостояние ВПО и антивирусных компаний), но, боюсь, это не будет воспринято сообществом Хабра. Ну и потом — я же только подаю информацию в удобоваримой форме. А вы тут глобальных вопросов назадавали, которые и Symantec с Касперским не могут решить. Если вам интересно, можете задавать мне вопросы в личку, а потом можно по мотивам очередную статью замутить, будет коллективное творчество. Я, кстати, давно хотел что-то подобное сделать, только не решил как. Чтобы была обратная связь — общество задает вопросы, я даю ответы, или еще лучше, общество дает ответы, а я их обобщаю.
                                                0
                                                Надо же. Получается p2p-реализацию ботнеты из скайпа взяли.
                                                  0
                                                  Не совсем так. Ботнеты и skype используют P2P технологии. Или вот пример — Storm, судя по всему, включает в себя код библиотеки KadC, используемой для постоения приложений P2P.

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

                                                Самое читаемое