Abstract

In this paper we consider previously known scheme of dynamic watermarks embedding (Ra- dix-n) that is used for preventing illegal use of software. According to the scheme a watermark is dynamic linked data structure (graph), which is created in memory during program execution. Hidden data, such as information about author, can be represented in a different type of graph structure. This data can be extracted and demonstrated in judicial proceedings. This paper declared that the above mentioned scheme was previously one of the most reliable, has a number of features that allows an attacker to detect a stage of watermark construction in the program, and therefore it can be corrupted or deleted. The author of this article shows the weakness of Radix-N scheme, which consists in the fact that we can reveal dynamic data structures of a program by using information received from some API-functions hooker which catches function calls of dynamic memory allocation. One of these data structures is the watermark. Pointers on dynamically created objects (arrays, variables, class items, etc.) of a program can be detected by content analysis of computer's RAM. Different dynamic objects in memory interconnected by pointers form dynamic data structures of a program such as lists, stacks, trees and other graphs (including the watermark). Our experiment shows that in the vast majority of cases the amount of data structure in programs is small, which increases probability of a successful attack. Also we present an algorithm for finding connected components of a graph with linear time-consuming in cases where the number of nodes is about 106. On the basis of the experimental findings the new watermarking scheme has been presented, which is resistant to the proposed attack. It is offered to use different graph structure representation of a watermark, where edges are implemented using unique signatures. Our scheme uses content encrypting of graph nodes (except signature), so an attacker is not able to reveal links between nodes and find the watermark.

Highlights

  • Современные производители программного обеспечения большое внимание уделяют методам защиты программ от нелегального использования

  • После дополнительного отсеивания мы также видим, что количество искомых графов менее Countgr.Таким образом, можно утверждать, что предложенная в работе [10] схема Radix-n для внедрения динамического ЦВЗ не является устойчивой

  • A. et al Novel approach for high data hidden within triplex space for executable file

Read more

Summary

Название программы

WinRar (v.5.00) Far (v. 3.0.4438) Gimp (v. 2.8.18) Chrome (v. 55.0.2883.87) TeXworks (v. 0.4.4) Word 2007 Excel 2007 Power Point 2007 QtCreator (v. 4.1.0) Notepad ++ (v. 7.2.2). Что в подавляющем большинстве программ искомых графов менее Countgr, это означает, что ЦВЗ может быть обнаружен при помощи предлагаемой атаки. 2. Более 90% блоков памяти (по количеству) выделяется на этапе запуска программы, что делает этот этап работы приложения перспективным для построения ЦВЗ. Это связано с тем, что компиляторы по умолчанию осуществляют такое выравнивание (хотя существует способы это выравнивание отключить для оптимизации расходов памяти). 5. При выходе из функции программы, в которой создавались локальные динамические объекты, будет производиться их удаление (для предотвращения так называемой «утечки памяти»). (Реальное количество существующих узлов значительно меньше, например, для Gimp меньше в 7 раз). Рассмотрим более подробно работу программы Gimp, имеющей наибольшее количество узлов из анализируемого ряда программ. Которые, во-первых, уже были освобождены вызовом Api-функции free, а во-вторых, имеют размер узла соответствующий атакуемой схеме ЦВЗ Которые, во-первых, уже были освобождены вызовом Api-функции free, а во-вторых, имеют размер узла соответствующий атакуемой схеме ЦВЗ (см. рис. 1., размер узла равен 8 байт, т.к. всего два указателя размером по 4 байта)

Название программы Gimp
Количество блоков памяти
REFERENCES:
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call