статья. Использование специальных познаний в раскрытии преступлений, связанных с созданием, использованием и распространением вредоносных компьютерных программ
Скачать 30.27 Kb.
|
Использование специальных познаний в раскрытии преступлений, связанных с созданием, использованием и распространением вредоносных компьютерных программ Исследование недекларированных возможностей ПО — это исследование функциональных возможностей ПО, не описанных или не соответствующих описанию в документации, при использовании которых возможно нарушение конфиденциальности, доступности или целостности обрабатываемой информации. Цель исследования недекларированных возможностей ПО часто состоит в том, чтобы разобраться в программе, исходный код которой недоступен. Перечислим типичные ситуации: анализ вредоносного ПО [1]; анализ программ с закрытым исходным кодом на уязвимость; анализ интероперабельности программ с закрытым исходным кодом; Анализ вредоносного ПО, если только это не скрипты, редко оказывают нам помощь, предоставляя исходный код. А в отсутствие исходного кода наши возможности понять, как ведет себя вредоносное ПО, крайне ограничены. Есть два основных вида анализа: динамический и статический. Динамический анализ подразумевает выполнение вредоносного кода в среде виртуализации, когда за все аспекты поведения контролируются с помощью различных инструментальных утилит. Статический анализ – это попытка понять, что делает программа, читая ее код, который в случае вредоносного ПО чаще всего состоит только из листинга дизассемблера и, возможно, листинга декомпилятора. Для простоты анализа на уязвимости, можно разобить весь процесс аудита безопасности на три этапа: обнаружение уязвимости, анализ уязвимости и разработка эксплойта. Одни и те же шаги выполняются вне зависимости от того, есть исходный код или нет, однако объем усилий резко возрастает, если имеется только двоичный код. Сначала необходимо найти место в программе, потенциально допускающее эксплуатацию. Для этого часто применяются динамические методы, например фаззинг, но то же самое можно сделать (обычно с гораздо большими усилиями) с помощью статического анализа. После того как проблема выявлена, часто требуется дальнейший анализ, чтобы понять, допускает ли она эксплуатацию, и если да, то при каких условиях. Нахождение переменных, которыми атакующий может с пользой для себя манипулировать, – важный ранний шаг процесса обнаружения. Листинги дизассемблера дают достаточный уровень детализации, чтобы точно понять, как компилятор решил размещать переменные в памяти. Например, бывает полезно знать, что 70-байтовый массив символов, объявленный программистом, компилятор округлил до 80 байт. Кроме того, листинги дизассемблера – единственный способ точно выяснить, как компилятор решил упорядочить переменные, объявленные глобально или внутри функций. Знание пространственных отношений между переменными зачастую необходимо для разработки эксплойта [2]. Так, совместно используя дизассемблер и отладчик, удается создать эксплойт. Среда виртуализации [3], это выделенные вычислительные ресурсы системы, предоставленные пользователю в инкапсулируемом (скрытом в себе) виде. Для того, чтобы пользователь работал с представлением объекта в удобном для себя формате и не имел вопросов к тому, как устроен объект в действительности. Существует виртуализация уровня ОС, суть ее заключается в виртуализация физического сервера на уровне операционной системы в целях создания нескольких защищенных виртуализованных серверов на одном физическом. Гостевая система, в данном случае, разделяет использование одного ядра хостовой операционной системы с другими гостевыми системами. Виртуальная машина (ВМ) [4] представляет собой окружение для приложений, запускаемых изолированно. Данный тип виртуализации применяется при организации систем хостинга, когда в рамках одного экземпляра ядра требуется поддерживать несколько виртуальных серверов клиентов. ВМ могут создавать представления устройств, которых нет. Например, многие системы виртуализации позволяют создавать виртуальные SCSI диски, виртуальные многоядерные процессоры и т. п. Это может пригодиться для создания различного рода симуляций. Также ВМ предоставляют возможности по обучению работе с операционными системами. Можно создать репозиторий готовых к использованию ВМ с различными гостевыми операционными системами и запускать их по мере необходимости в целях обучения. Их можно безнаказанно подвергать всяческим экспериментам, поскольку в случае порчи системы, её восстановление из сохраненного состояния займет пару минут. Для обеспечения невозможности преднамеренного овладения информацией лицом, распространяющим программное обеспечение, могут применяться методы реверс анализа программного обеспечения. В зависимости от функционала не декларированные способности программного обеспечения могут нанести как экономический вред, так и привести к уничтожению информации, ее блокированию, копированию или модификации, что может быть квалифицировано по ч. 1 ст. 272 УК РФ «неправомерный доступ к компьютерной информации»1. Также, в зависимости от квалифицирующих признаков (размер нанесенного ущерба, наличие корыстной заинтересованности и т. д.) могут применяться и другие части данной статьи. Также разработка программного обеспечения, имеющего не декларированные способности [5], предусмотрена в статье 273 УК РФ «создание, использование и распространение вредоносных компьютерных программ», если они имеют признаки вредоносного программного обеспечения, то есть предназначены для несанкционированного уничтожения, блокирования, модификации, копирования компьютерной информации или нейтрализации средств защиты компьютерной информации. Для производства судебной программно-компьютерной экспертизы [6] необходимо само программное обеспечение, а также техническое задание. Объектом данной экспертизы является программное обеспечение. При производстве судебной программно-компьютерной экспертизы могут задаваться такие вопросы: Соответствует ли результат работы (в данном случае результатом работы является программное обеспечение) требованиям технического задания? Может ли результат работ использоваться в соответствии с его целевым назначением с учетом технического задания? Имеет ли программное обеспечение функции, не заявленные в техническом задании? Если имеет, то каково их целевое назначение? При производстве судебной программно–компьютерной экспертизы применяются различные методы, такие как: Исследование технического задания; Компиляция и тестирование программного обеспечения; Определение соответствия программного обеспечения техническому заданию (не соответствует, соответствует или частично соответствует); Определение возможности использования программного обеспечения в соответствии с его целевым назначением. При производстве судебной программно–компьютерной экспертизы могут быть решены следующие задачи: Установление общих характеристик исследуемого программного обеспечения; Классификация отдельных программных средств и утилит; Установление контрафактности программного обеспечения и его компонентов; Установление функционального предназначения программного обеспечения и его компонентов; Выявление в программном обеспечении отклонений в функционировании; Выявление скрытых кодов от изначальной версии программного обеспечения; Определение модификаций программного обеспечения и его компонентов; Установление возможности выполнения исходного функционала после внесения изменений в программное обеспечение или его компоненты; Анализ компонентного состава программного обеспечения; Установление сетевой активности вредоносного программного обеспечения. В заключении необходимо установить ошибки и несоответствия, допущенные при создании программного обеспечения; определить, может ли программное обеспечение в текущем состоянии использоваться по целевому назначению; определить наличие не декларированных способностей (если такие имеются); определить целевое назначение не декларированных способностей. Криминалистическая значимость нахождения информации в операционной системе компьютера в общем случае определяется по ценности этой информации. Значимость заключения эксперта заключается в разъяснении сведений, полученных путем производства экспертизы. В конкретных случаях это сведения о наличии не декларированных способностей программного обеспечения, а также об их функциональных возможностях. Также при проведении ОРМ необходимо запросить у оператора связи сетевую активность зараженного устройства с целью установки наличия возможности самораспространения вирусного программного обеспечения, взаимодействия с облачными ресурсами (прием с зараженного устройства и передача файлов на него). Значимость такой информации поможет определить примерную величину ущерба, а также охват сетевых ресурсов, в некоторых случаях поможет определить внешние сетевые ресурсы, которые эксплуатируются вирусным программным обеспечением. Список литературы ГОНОХОВА Д.Ю.1 ВРЕДОНОСНОЕ ПО // ПЕРСПЕКТИВЫ РАЗВИТИЯ НАУКИ И ОБРАЗОВАНИЯ сборник научных трудов по материалам VII международной научно-практической конференции . Под общей редакцией А.В. Туголукова. 2016
ФОСТЕР Д.С. ЗАЩИТА ОТ ВЗЛОМА. СОКЕТЫ, SHELL-КОД, ЭКСПЛОЙТЫ// учебное пособие 2008 784 страниц ФАТЕЕВ А.Г.1, АЛЕКСЕЕВ В.М.1 ЗАЩИТА СРЕДЫ ВИРТУАЛИЗАЦИИ ДЛЯ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ ПЕРСОНАЛЬНЫХ ДАННЫХ//
КВАСНИЦКИЙ ВИКТОР НИКОЛАЕВИЧ 1ЖУРАВЛЕВА ТАМАРА БОРИСОВНА ИСПОЛЬЗОВАНИЕ ТЕХНОЛОГИИ ВИРТУАЛИЗАЦИИ ПРИ СОЗДАНИИ ИНФОРМАЦИОННЫХ СИСТЕМ// статья в журнале ВЕСТНИК РГГУ. СЕРИЯ: ЭКОНОМИКА. УПРАВЛЕНИЕ. ПРАВО 2012 Страницы: 162-169 ПЕТРОВ ВИКТОР ИВАНОВИЧ НЕДЕКЛАРИРОВАННЫЕ ВОЗМОЖНОСТИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ// тезисы доклада на конференции Сборник тезисов докладов участников Международной научно-технической конференции, посвященной 45-летию Университета. 2016 Страницы: 160 СЕМИКАЛЕНОВА АНАСТАСИЯ ИГОРЕВНА СУДЕБНАЯ ПРОГРАММНО-КОМПЬЮТЕРНАЯ ЭКСПЕРТИЗА ПО УГОЛОВНЫМ ДЕЛАМ// автореферат диссертации Год: 2005 Число страниц: 22 1 «Уголовный кодекс Российской Федерации» от 13.06.1996 № 63-ФЗ |