Коробейников А.Г., Кутузов И.М. —
Обфускация сокрытия вызовов при помощи инструкции invokedynamic
// Кибернетика и программирование. – 2016. – № 5.
– С. 33 - 37.
DOI: 10.7256/2306-4196.2016.5.18686
URL: https://e-notabene.ru/kp/article_18686.html
Читать статью
Аннотация: Объектом исследования в данной статье являются технологии сокрытия вызовов методов. Сокрытие вызовов требуется для сокрытия: зависимости сущностей; логики обработки данных; алгоритмов. Методы, используемые для сокрытия вызовов сильно ограничены технологиями языка и их производительностью. Вызов метода может осуществляться как напрямую, так и: через бутстрап-метод; из нативного кода (JNI); через Reflection; используя JRE 1.7, InvokeDynamic. Представлены примеры с исходным кодом. Сделан вывод, что наиболее перспективной среди рассмотренных методов является технология invokedynamic. В данной работе дан анализ технологий сокрытия вызовов методов, таких как Бутстрап-метод, вызов методов через нативный код, обфускация вызовов с помощью Reflection и InvokeDynamic. В данной статье рассмотрены различные способы сокрытия вызова методов. Рассмотрены характерные особенности обфускации для наиболее популярных из них. Наиболее перспективной среди рассмотренных методов выглядит технология invokedynamic. Она позволяет полностью убрать из исходных кодов сигнатуру метода, оставив лишь служебную информацию для бутстрап-метода. При надлежащей реализации бутстрап-метода возможно создание байт-кода, который будет невозможно декомпилировать в валидный код Java, Groovy или Scala.
Abstract: The object of the study is technology of hiding method calls. Hidden calls are need to hide: entity dependencies; data processing logic; algorithms. The methods used to complete the task are limited by language technologies and its performance. Method can be called directly and indirectly: via the bootstrap method; from native code (JNI); using Reflection; using JRE 1.7, InvokeDynamic. The examples with source code are given. The authors conclude that the most promising methods among considered is invokedynamic technology. The study present analysis of such methods as the bootstrap method, calling method from through native code, obfuscation calls via Reflection and InvokeDynamic. The article discusses various ways to conceal the method invocation. The characteristic features of obfuscation for most popular ones are reviewed. The most promising among the discussed methods is invokedynamic technology. It allows completely removing method signature from the source code, leaving only the service information for the bootstrap method. With proper implementation of the bootstrap method it is possible to create bytecode, which will be impossible to decompile into valid Java code, Groovy's or Scala.
Коробейников А.Г., Гришенцев А.Ю., Кутузов И.М., Пирожникова О.И., Соколов К.О., Литвинов Д.Ю. —
Разработка математической и имитационной моделей для расчета оценки защищенности объекта информатизации от несанкционированного физического проникновения
// Кибернетика и программирование. – 2014. – № 5.
– С. 14 - 25.
DOI: 10.7256/2306-4196.2014.5.12889
URL: https://e-notabene.ru/kp/article_12889.html
Читать статью
Аннотация: В настоящее время интенсивно развиваются методы и методики, позволяющие рассчитывать количественные оценки защищенности различных объектов информатизации от несанкционированного физического проникновения при использовании различных средств и систем защиты. Обычно принято, количественно защищенность оценивается заданным множеством вероятностных характеристик, главенствующим из которых является некоторый интегральный показатель. Поэтому разработка математических и имитационных моделей для расчета оценки защищенности объекта информатизации от несанкционированного физического проникновения, входящих в состав комплексной системы информационной безопасности, является актуальной задачей. Для решения поставленной задачи в представленной статье были использованы методы защиты информации, методы теории графов и теории вероятности. Представленные результаты были получены при помощи системы компьютерной алгебры Maple. Научная новизна работы заключается:
- в разработке математической модели расчета вероятности обнаружения системой охранной сигнализации несанкционированного физического проникновения на объект информатизации;
– в разработке имитационной модели для оценки защищенности объекта информатизации от несанкционированного физического проникновения;
– в разработке методики оценки комплексной защищенности объекта информатизации от несанкционированного физического проникновения.
Abstract: Methods and techniques allowing to calculate quantitative estimates of level of protection from unauthorized physical intrusion for different informatization objects using various means and protection systems are currently being intensively developed. Generally the quantitative evaluation of protection is represented by a set of probability characteristics, the predominant of which is some integral indicator. Therefore, developing mathematical and simulation models for calculating an estimate of informatization object protection from unauthorized physical access is an urgent task. This model then is used as a part of a complex system of information security. To solve this problem the article presented uses methods of information protection, graph theory and probability theory. The results shown in the article were calculated using Maple system of computer algebra. Scientific novelty of the work is: – in creating a mathematical model for calculation the probability of detecting of unauthorized physical access to information by an alarm system;
– in bulding of a simulation model for evaluation of level of protection of informatization object from unauthorized physical access;
– in developing of a technique of evaluation of full protection from unauthorized physical access for object of informatization
Коробейников А.Г., Кутузов И.М. —
Алгоритм обфускации
// Кибернетика и программирование. – 2013. – № 3.
– С. 1 - 8.
DOI: 10.7256/2306-4196.2013.3.9356
URL: https://e-notabene.ru/kp/article_9356.html
Читать статью
Аннотация: В данной статье рассмотрен алгоритм Chenxi Wang, приведены основные недостатки, предложены пути модификации для их устранения. В данной работе рассмотрен алгоритм Chenxi Wang's, как один из наиболее известных. Входными данными для алгоритма является обычная процедура, написанная на языке высокого уровня. Описываются три этапа обфускации любой такой процедуры. Рассматриваются основные недостатки алгоритма и указываются возможности разрешения ошибочных ситуаций. В классическом варианте алгоритм "Chenxi Wang's algorithm" обладает плохой устойчивостью. Предлагаются варианты для повышения устойчивости алгоритма. Рассматривается пример использования модифицированного Chenxi Wang's. Проводится анализ полученного результата. Сравнивается исходный текст и полученный, заключается, что установить их функциональную тождественность практически невозможно. Логику работы программы по обфусцированному исходному коду понять очень трудно. Иногда это можно сделать используя примеры запуска полученного исходного кода. Отсюда следует, что при устранении озвученных недостатков, алгоритм является достаточно эффективным.
Abstract: The paper deals with the algorithm of Chenxi Wang’s, shows are the main disadvantages of this algorithm. The authors suggest the ways of modification to improve it. The algorithm of Chenxi Wang's is one of the most famous. The input data for the algorithm is the usual procedure, written in high level language. The authors describe the three stages of obfuscation of any such procedure. In the classic version of Chenxi Wang's the algorithm has poor stability. The authors suggest ways to improve stability of the algorithm, present modified version of the algorithm and reviews results of its implementation. The authors compare the source code and the resulting code and conclude that it is almost impossible to establish their functional identity and the logic of the program code is very difficult to understand using obfuscated source. Sometimes this can be done using the examples run of the resulting source code. This implies that after eliminating the shortcomings the algorithm is quite effective.