KR101966032B1 - Data hiding method by modifying directory information - Google Patents

Data hiding method by modifying directory information Download PDF

Info

Publication number
KR101966032B1
KR101966032B1 KR1020190001605A KR20190001605A KR101966032B1 KR 101966032 B1 KR101966032 B1 KR 101966032B1 KR 1020190001605 A KR1020190001605 A KR 1020190001605A KR 20190001605 A KR20190001605 A KR 20190001605A KR 101966032 B1 KR101966032 B1 KR 101966032B1
Authority
KR
South Korea
Prior art keywords
file
hidden
directory
name
index
Prior art date
Application number
KR1020190001605A
Other languages
Korean (ko)
Inventor
조규상
Original Assignee
동양대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 동양대학교 산학협력단 filed Critical 동양대학교 산학협력단
Priority to KR1020190001605A priority Critical patent/KR101966032B1/en
Application granted granted Critical
Publication of KR101966032B1 publication Critical patent/KR101966032B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data

Abstract

The present invention relates to a data hiding method, capable of preventing data from being searched or accessed by the outside by changing directory list information managed by a Windows NTFS file system. According to the present invention, the data hiding method comprises the steps of: (a) storing a hidden file in which security data is stored in a hidden directory including a normal file; (b) changing a file name ($FILE_NAME) of a hidden file index entry included in an index record of the hidden directory to the same as a name of the normal file; and (c) deleting the normal file to delete information on the hidden file index entry having the same file name together. According to the present invention, data can be protected from external search since a list of security data files to be hidden is not displayed on a file searcher window or a command prompt window by changing directory index entry information in a Windows NTFS file system.

Description

디렉토리 목록정보 변경을 이용한 데이터 숨김방법 {Data hiding method by modifying directory information}[0001] The present invention relates to a data hiding method,

본 발명은 컴퓨터 또는 모바일 단말기의 데이터를 숨기는 방법에 관한 것으로, 보다 상세하게는 윈도우즈 NTFS 파일시스템으로 관리되는 디렉토리 목록정보를 변경하여 외부에 의한 데이터의 탐색이나 접근을 방지할 수 있는 데이터 숨김방법에 관한 것이다. BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method of hiding data in a computer or a mobile terminal, and more particularly, to a method of hiding data by changing directory list information managed by a Windows NTFS file system, .

데이터 숨김 기술은 다양한 응용분야에서 관심이 집중되어 최근 그 중요성이 각광받고 있다. 예를 들어, 오디오, 비디오, 및 이미지 파일에 첨부되는 시리얼 코드와 같이 육안으로 식별되지는 않지만, 인가받지 않는 외부로부터의 접근이나 데이터의 변경이나 복사 등을 방지하기 위해 데이터가 숨겨져 첨부되고 있다. Data hiding technology has been attracting attention in recent years because of its focus on various applications. Data is hidden, for example, to prevent unauthorized external access or data modification or copying, such as serial code attached to audio, video, and image files, which is not identified by the naked eye.

컴퓨터 내에 데이터를 숨기는 여러 가지 방법이 있는데, 예를 들어 윈도우즈 시스템에서 파일의 내용을 통상적인 채널이 아닌 다른 채널로 저장하여 일반적인 접근으로는 내용이 드러나지 않는 대체 데이터 스트림(ADS) 저장기법이 있고, 파일을 암호화하는 암호화 프로그램인 트루크립트(TrueCrypt), 디스크 전체를 암호화하는 윈도우 비트로커(Window BitLocker)가 사용되고 있다. 그리고, 전달하려는 정보를 다른 파일에 숨겨 전송하는 스테가노그라피 프로그램인 카무플라지(Camouflage), 오픈스테고(Openstego) 등의 프로그램이 있다.There are various methods of hiding data in a computer. For example, there is a substitute data stream (ADS) storage method in which contents of a file are stored in a channel other than a normal channel in a Windows system, TrueCrypt, an encryption program that encrypts files, and Window BitLocker, which encrypts the entire disk. And there are programs such as Camouflage and Openstego, steganography programs that hide information to be transferred in other files.

그리고, 대한민국 공개특허공보 제2001-0044804호, 제2006-0112682호에는 이미지에 데이터를 숨기고 복원하는 방법에 관한 기술이 제안되어 있고, 대한민국 등록특허공보 제10-0734940호와 공개특허공보 제2006-0062043호에는 사용자가 타인에게 노출되기를 원하지 않는 데이터가 표시되지 않도록 설정할 수 있도록 하는 이동통신 단말기에서의 선택적 데이터 숨김 방법이 개시되어 있다.Korean Patent Laid-Open Publication Nos. 2001-0044804 and 2006-0112682 propose a technique for hiding and restoring data in an image. Korean Patent Publication No. 10-0734940 and Publication No. 2006- 0062043 discloses an optional data hiding method in a mobile communication terminal that allows a user to set not to display data that he does not want to be exposed to others.

대한민국 공개특허공보 제2001-0044804호 (발명의 명칭 : 그림 파일 속에 비밀 데이터를 숨겨 저장/복원하는 방법. 2001.06.05)Korean Patent Laid-Open Publication No. 2001-0044804 (entitled " Method for Hiding and Restoring Secret Data in Picture Files " 대한민국 공개특허공보 제2006-0112682호 (발명의 명칭 : 공간 도메인에서의 강건한 가역 데이터 숨김 및 데이터복구를 수행하는 시스템 및 방법. 2006.11.01)Korean Unexamined Patent Application Publication No. 2006-0112682 (entitled " System and method for performing robust reversible data hiding and data restoration in a spatial domain, 2006.11.01) 대한민국 등록특허공보 제10-0734940호 (발명의 명칭 : 이동통신 단말기의 데이터 숨김 기능 설정 방법 및 그 장치. 2007.07.06)Korean Patent Registration No. 10-0734940 (Title of the Invention: Method of setting data hiding function of a mobile communication terminal and its device. 2007.07.06) 대한민국 공개특허공보 제2006-0062043호 (발명의 명칭 : 이동통신 단말기에서의 선택적 데이터 숨김 방법. 2006.06.12)Korean Patent Laid-Open Publication No. 2006-0062043 (Title: Method for hiding optional data in a mobile communication terminal 2006.06.12)

본 발명은 컴퓨터 OS 프로그램에서 파일시스템의 구조를 활용하여 데이터를 숨기는 기술을 제공하기 위한 것으로, 본 발명은 윈도우즈 NTFS 파일시스템으로 관리되는 디렉토리 목록정보를 변경함으로써 외부에 의한 데이터의 탐색이나 접근을 방지할 수 있는 데이터 숨김방법을 제공하는 것을 그 목적으로 한다.The present invention provides a technique for hiding data by utilizing the structure of a file system in a computer OS program. The present invention prevents directory search information access by changing the directory list information managed by the Windows NTFS file system And to provide a data hiding method that can be used.

이러한 목적을 달성하기 위하여, 본 발명은 (a) 정상파일이 들어있는 숨김 디렉토리에 보안 데이터가 저장된 숨김파일을 저장하는 단계, (b) 인덱스 레코드(Index Record)에 들어있는 인덱스 엔트리(Index Entry)의 파일이름($FILE_NAME) 속성에 있는 상기 숨김파일의 이름을 상기 정상파일의 이름과 동일하게 변경하는 단계, 및 (c) 상기 정상파일을 삭제하여 파일명이 동일한 상기 숨김파일의 인덱스 엔트리 정보를 함께 삭제하는 단계를 포함하는 디렉토리 목록정보 변경을 이용한 데이터 숨김방법을 제공한다. In order to achieve the above object, the present invention provides a method for managing security data, comprising the steps of: (a) storing a hidden file in which a security data is stored in a hidden directory containing a normal file; (b) Changing the name of the hidden file in the file name ($ FILE_NAME) attribute of the hidden file to be the same as the name of the normal file; and (c) deleting the normal file and storing the index entry information of the hidden file having the same file name together The method comprising the steps of:

본 발명에 따르면, 상기 (c)단계 이후에, 상기 숨김파일의 보안 데이터가 들어있는 클러스터 번호를 임의의 타겟 디렉토리의 인덱스 레코드의 클러스터 번호로 변경하는 단계를 더 포함하는 것을 특징으로 한다.According to the present invention, after the step (c), the method further comprises changing the cluster number containing the security data of the hidden file to the cluster number of the index record of an arbitrary target directory.

본 발명에 따르면, 상기 타겟 디렉토리의 인덱스 레코드의 클러스터 번호는 MFT 엔트리 내의 $INDEX_ALLOCATION 속성에 들어있는 클러스터 번호인 것을 특징으로 한다.According to the present invention, the cluster number of the index record of the target directory is a cluster number contained in the $ INDEX_ALLOCATION attribute in the MFT entry.

본 발명에 따르면, 상기 타겟 디렉토리의 인덱스 레코드는 타겟 디렉토리에 들어있는 임의의 일반파일을 모두 삭제하여 비어있는 인덱스 레코드인 것을 특징으로 한다.According to the present invention, the index record of the target directory is an empty index record by deleting any ordinary files contained in the target directory.

본 발명에 따르면, 상기 타겟 디렉토리와 숨김 디렉토리에 들어있는 파일의 수는 6개 이상인 것을 특징으로 한다. According to the present invention, the number of files included in the target directory and the hidden directory is six or more.

본 발명에 따르면, 디스크 에디트 프로그램을 사용하여 상기 숨김파일 인덱스 엔트리의 파일이름($FILE_NAME)을 변경하는 것을 특징으로 한다.According to the present invention, a file name ($ FILE_NAME) of the hidden file index entry is changed by using a disk edit program.

본 발명에 따르면, 윈도우즈 NTFS 파일시스템에서 디렉토리 인덱스 엔트리 정보를 변경함으로써 숨기려는 보안 데이터 파일의 목록이 파일탐색기 창이나 명령프롬프트 창에 표시되지 않아 외부의 탐색으로부터 데이터를 보호할 수 있으며, 또한 비어있어 활용되지 않는 인덱스 레코드에 데이터를 저장함으로써 외부로 데이터를 노출되게 않도록 할 수 있다. According to the present invention, a list of security data files to be hidden by changing the directory index entry information in the Windows NTFS file system is not displayed in a file explorer window or a command prompt window, so that data can be protected from external exploration, By storing the data in an unused index record, it is possible to prevent the data from being exposed to the outside.

도 1은 본 발명의 일 실시예에 따른 디렉토리 목록정보 변경을 이용한 데이터 숨김방법의 순서도이다.
도 2는 NTFS 파일시스템의 MFT 엔트리 및 인덱스 레코드의 데이터 구조를 도시한 도면이다.
도 3 내지 도 8은 숨김파일의 목록을 숨기는 본 발명의 실시예1의 각 단계를 설명하기 위한 캡쳐화면이다.
도 9 내지 도 12는 숨김파일의 내용을 숨기는 본 발명의 실시예2의 각 단계를 설명하기 위한 캡쳐화면이다.
FIG. 1 is a flowchart of a data hiding method using directory list information change according to an embodiment of the present invention.
2 is a diagram showing a data structure of an MFT entry and an index record of the NTFS file system.
FIGS. 3 to 8 are screens for explaining each step of Embodiment 1 of the present invention for hiding a list of hidden files.
FIGS. 9 to 12 are screens for explaining each step of the second embodiment of the present invention for hiding the contents of a hidden file.

이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

실시예를 설명하는데 있어서 원칙적으로 관련된 공지의 기능이나 공지의 구성과 같이 이미 당해 기술분야의 통상의 기술자에게 자명한 사항으로서 본 발명의 기술적 특징을 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다.In the following description of the embodiment, when it is determined that technical characteristics of the present invention may be unnecessarily obscured by those skilled in the art such as well-known functions and configurations well known in the art, It will be omitted.

도 1은 본 발명의 일 실시예에 따른 디렉토리 목록정보 변경을 이용한 데이터 숨김방법의 순서도로, 도 1을 참조하면 본 발명은 크게 숨김파일의 목록이 탐색되지 않도록 하는 단계(S10~S30)와, 숨김파일의 내용을 숨기는 단계(S40~S60)으로 이루어지는데, 모두 윈도우즈 NTFS 파일시스템으로 관리되는 디렉토리 정보를 변경하는 것에 공통점이 있다.FIG. 1 is a flowchart illustrating a data hiding method using directory list information change according to an embodiment of the present invention. Referring to FIG. 1, the present invention mainly includes steps (S10 to S30) (Steps S40 to S60) of hiding the contents of the hidden file, all of which have a common point in changing the directory information managed by the Windows NTFS file system.

먼저, 숨김파일의 목록이 탐색되지 않도록 하는 단계는 정상파일이 들어있는 숨김 디렉토리에 숨김파일을 저장하는 단계(S10), 인덱스 레코드(Index Record)내의 인덱스 엔트리(Index Entry)의 파일이름($FILE_NAME) 속성에 있는 숨김파일의 이름을 정상파일의 이름과 동일하게 변경하는 단계(S20), 정상파일을 삭제하여 파일명이 동일한 숨김파일의 인덱스 레코드정보를 함께 삭제하는 단계(S30)로 이루어진다.The step of preventing the list of hidden files from being searched includes a step of storing a hidden file in a hidden directory containing a normal file in step S10, a file name of an index entry in the index record ($ FILE_NAME (S20) of changing the name of the hidden file in the attribute of the hidden file to be equal to the name of the normal file (S30), and deleting the index record information of the hidden file having the same file name by deleting the normal file (S30).

정상파일이 들어있는 숨김 디렉토리에 숨김파일을 저장하는 단계(S10)에서는, 먼저 숨김파일이 저장될 숨김 디렉토리가 선정되는데 기존의 디렉토리를 사용하거나 새로운 타겟 디렉토리를 만들 수도 있다. 숨김 디렉토리에는 하나 이상의 정상파일이 존재해야 하며, 여기서 정상파일과 숨김파일을 포함하여 숨김 디렉토리 내에 저장되는 파일의 수는 적어도 6개 이상이어야 한다. 이는 후술하는 바와 같이 본 발명에서 사용되는 인덱스 레코드(Index Record)가 NTFS 파일시스템에서 생성되기 위해서는 디렉토리 안에 파일의 수가 8.3 포맷의 파일명인 경우는 최소 6개가 필요하기 때문이다. 숨김파일은 단일의 파일이거나 또는 숨기려는 데이터 량이 많은 경우 복수개의 파일이 선택될 수 있는데, 복수의 파일이 선택되더라도 숨김 디렉토리에는 하나 이상의 정상파일은 존재해야 한다. In the step of storing the hidden file in the hidden directory containing the normal file (S10), the hidden directory in which the hidden file is to be stored is selected first, and an existing directory can be used or a new target directory can be created . There must be at least one normal file in the hidden directory, where the number of files stored in the hidden directory, including normal and hidden files, must be at least six. This is because, as described later, in order for the index record used in the present invention to be generated in the NTFS file system, a minimum of six files are required when the number of files in the directory is 8.3 format. A hidden file can be a single file or multiple files can be selected if there is a large amount of data to hide. Even if multiple files are selected, one or more normal files must exist in the hidden directory.

다음으로 숨김파일의 인덱스 레코드(Index Record)에 들어있는 인덱스 엔트리의 파일이름을 정상파일의 이름과 동일하게 변경하는 단계(S20)가 수행되는데, 이를 설명하기 위해 NTFS 파일시스템의 인덱스 레코드(Index Record)와 인덱스 엔트리(Index Entry)에 대한 데이터 구조를 이하 설명한다.Next, the file name of the index entry included in the index record of the hidden file is changed to be the same as the name of the normal file (S20). In order to explain this, the index record of the NTFS file system ) And an index entry (Index Entry) will be described below.

NTFS 파일시스템에서 디렉토리 내의 파일들을 관리하기 위하여 B-트리 데이터 구조를 사용하고 있는데, 파일과 디렉토리에 관한 기본 정보는 $MFT파일 안에 기록되어 있으며, $MFT파일 안에 파일이나 디렉토리에 관한 속성 정보들을 담고 있는 MFT 엔트리들이 구성되어 있다. NTFS 파일시스템의 MFT 엔트리 및 인덱스 레코드의 데이터 구조를 도시한 도 2를 참조하면, #502번의 MFT 엔트리가 디렉토리 정보를 갖는 형태가 도시되어 있는데, 예를 들어 이 디렉토리 이름이“testDir”라고 할 경우 $STANDARD_INFORMATION과 $FILE_NAME 구조 안에“testDir”의 이름과 타임스탬프들을 저장하게 된다. #502번의 MFT 엔트리는 디렉토리이므로 $INDEX_ROOT 속성을 갖게 되고 이 안에는 B-트리의 루트노드의 위치에 관한 정보가 들어 있다. 그리고, 트리가 여러 개의 노드로 구성되는 경우에는 MFT 엔트리 밖에 외주(Non-resident)속성으로 노드가 구성되는데, 이 정보는 $INDEX_ALLOCATION에 들어있는 런-리스트(Run-list) 정보에 의해 유지된다. 도 2에서는 cluster#1~#4가 놓인 곳의 정보를 나타낸다. The NTFS file system uses a B-tree data structure to manage files in the directory. The basic information about files and directories is stored in the $ MFT file. The $ MFT file contains attribute information about files and directories. MFT entries are configured. Referring to FIG. 2 showing a data structure of an MFT entry and an index record of the NTFS file system, the MFT entry of # 502 has directory information. For example, if the directory name is " testDir " The names and timestamps of "testDir" will be stored in $ STANDARD_INFORMATION and $ FILE_NAME structures. The # 502 MFT entry is a directory, so it has a $ INDEX_ROOT attribute, which contains information about the location of the root node of the B-tree. If the tree is composed of several nodes, the node is configured with the non-resident attribute only in the MFT entry, and this information is maintained by run-list information contained in $ INDEX_ALLOCATION. In FIG. 2, information on the positions where the clusters # 1 to # 4 are placed is shown.

디렉토리의 목록이 많아지면 외주속성으로 노드를 만들게 되는데, 이 노드를 인덱스 레코드(Index Record)라 하며, 이 안에 디렉토리 목록들(파일명)이 소팅되어 저장된다. 인덱스 레코드에 디렉토리 목록의 저장공간이 부족하게 되면 새로운 인덱스 레코드를 할당하고 목록들을 분산배치하게 된다. 도 2에는 3개의 리프노드 Index Rec#2~#4에 저장되어 있는 경우를 나타낸 것이다 Index Rec#1이 루트 노드역할을 하는데 그 안에는 두 개의 인덱스 키가 들어 있다. “Entry6txt”보다 작은 파일명들은 Index Rec#2에 들어가게 되고,“Entry6txt”보다 크고 “Entry12txt”보다 작은 파일명들은 Index Rec#3에 저장되고, “Entry12txt”보다 큰 파일명들은 Index Rec#4에 저장된다. 인덱스 레코드는 인덱스 레코드에 관한 정보가 저장되는 헤더와, 파일이름($FILE_NAME) 속성이 저장되는 인덱스 엔트리로 구성되어 있는데, 인덱스 엔트리에 저장되는 파일이름($FILE_NAME) 속성은 $MFT파일 안에 들어있는 것과 동일한 속성이다.When a list of directories becomes large, a node is created by an outsourcing attribute. This node is called an index record, and directory lists (filenames) are sorted and stored therein. If the index record does not have enough storage space for the directory list, a new index record is allocated and the lists are distributed. In FIG. 2, three leaf nodes Index Rec # 2 to Index # 4 are stored. Index Rec # 1 serves as a root node, which contains two index keys. File names smaller than "Entry6txt" are stored in Index Rec # 2. File names larger than "Entry6txt" and smaller than "Entry12txt" are stored in Index Rec # 3. File names larger than "Entry12txt" are stored in Index Rec # 4. The index record consists of a header in which information about the index record is stored and an index entry in which the file name ($ FILE_NAME) attribute is stored. The file name ($ FILE_NAME) attribute stored in the index entry is stored in the $ MFT file Is the same property.

본 발명의 S20 단계에서는 숨김 디렉토리의 목록정보가 들어있는 인덱스 레코드에서 숨김파일의 인덱스 엔트리에 들어있는 파일이름을 변경하여 정상파일의 인덱스 엔트리에 들어있는 파일의 이름과 중복시킨다. 인덱스 엔트리에 들어있는 파일이름을 변경하기 위해서는 X-Ways사의 WinHex와 같은 디스크 에디트 프로그램이 사용될 수 있다.In step S20 of the present invention, the file name contained in the index entry of the hidden file is changed from the index record containing the list information of the hidden directory to duplicate the file name contained in the index entry of the normal file. A disk edit program such as WinHex from X-Ways can be used to change the file name contained in the index entry.

다음으로, 정상파일을 삭제하여 파일명이 동일한 숨김파일의 인덱스 레코드정보를 함께 삭제하는 단계(S30)가 수행된다. 정상파일을 삭제하면 MFT 엔트리의 정상파일이 삭제되지만, 정상파일과 파일명을 중복시킨 숨김파일은 인덱스 엔트리에서만 삭제된다. 따라서, 숨김파일은 MFT 엔트리의 원래 파일이름은 변경되지 않고 삭제도 되지 않은 상태로 파일이 존재한다. 결국, 숨김파일은 디렉토리 목록에서만 삭제되고 MFT 엔트리에 원 상태로 존재함에 따라, 파일탐색기 창이나 명령프롬프트 창에 표시되지 않아 외부의 탐지나 탐색으로부터 파일을 숨길 수 있게 된다. Next, the normal file is deleted to delete the index record information of the hidden file having the same file name (S30). If the normal file is deleted, the normal file of the MFT entry is deleted, but the hidden file which duplicates the normal file and the file name is deleted from the index entry only. Therefore, the hidden file has the file with the original file name of the MFT entry unchanged and not deleted. As a result, the hidden file is deleted from the directory list and remains in the original state in the MFT entry, so it can not be displayed in the file explorer window or the command prompt window, so that the file can be hidden from external detection or navigation.

다음으로, 숨김파일의 내용을 숨기는 단계가 수행되는데, 타겟 디렉토리 내에 들어있는 임의의 일반파일을 삭제하는 단계(S40), 타겟 디렉토리의 비어있는 인덱스 레코드의 클러스터 번호를 구하는 단계(S50), 보안 데이터가 저장된 숨김파일의 클러스터 번호를 타겟 디렉토리의 비어있는 인덱스 레코드의 클러스터 번호로 변경하는 단계(S60)로 이루어진다.Next, a step of hiding the contents of the hidden file is performed. In step S40, an ordinary file contained in the target directory is deleted. In step S50, a cluster number of an empty index record in the target directory is obtained. (S60) of changing the cluster number of the hidden file stored in the target directory to the cluster number of the empty index record in the target directory.

타겟 디렉토리 내에 들어있는 임의의 일반파일을 삭제하는 단계(S40)는, 파일 시스템 내에서 전술한 숨김 디렉토리와는 다른 타겟 디렉토리를 선정하는데, 타겟 디렉토리는 기존의 디렉토리를 활용하거나 새로운 디렉토리를 만들 수도 있다. 이때 상술한 바와 같이 인덱스 레코드를 활용하기 위해서 숨김 디렉토리 내에는 적어도 일반파일의 수가 6개 이상이어야 한다. 그리고, 선정된 타겟 디렉토리 내에 존재하는 모든 일반파일을 삭제하면, 일반파일에 할당된 인덱스 레코드의 내용도 삭제되어 비어 있는 상태로 존재하게 된다. The step S40 of deleting a general file contained in the target directory selects a target directory different from the above-described hidden directory in the file system, and the target directory may utilize an existing directory or create a new directory . At this time, as described above, in order to utilize the index record, the number of ordinary files must be 6 or more in the hidden directory. If all the general files existing in the selected target directory are deleted, the contents of the index record allocated to the general file are also deleted and exist in an empty state.

다음으로, 타겟 디렉토리의 비어있는 인덱스 레코드의 클러스터 번호를 구하는 단계(S50)로, 인덱스 레코드의 클러스터 번호는 MFT 엔트리 내의 속성 정보들 중에서 $INDEX_ALLOCATION에 들어있는 클러스터 정보이다. Next, in step S50, a cluster number of an empty index record in the target directory is obtained. The cluster number of the index record is cluster information contained in $ INDEX_ALLOCATION among the attribute information in the MFT entry.

다음으로, 보안 데이터가 저장된 숨김파일의 클러스터 번호를 타겟 디렉토리의 비어있는 인덱스 레코드의 클러스터 번호로 변경하는 단계(S60)로, 숨김파일의 MFT 엔트리에 들어있는 데이터 속성의 런-리스트(Run-list) 정보인 클러스터 번호를 일반파일의 삭제로 비어있는 인덱스 레코드로 숨김파일의 클러스터 번호로 교체하는 단계이다. 상술한 바와 같이, 인덱스 레코드는 한번 할당된 이후에 파일목록들이 삭제되어도 안전한 공간으로 그대로 남아있는데, 이를 활용하여 타겟 디렉토리의 비어있는 인덱스 레코드에 대한 정보를 구하여 숨김파일의 클러스터 번호로 변경하면, 숨김파일의 내용이 인덱스 레코드로 옮겨지고 파일의 내용이 사라지게 되어 외부의 탐지나 탐색으로부터 파일을 숨길 수 있게 된다. Next, in step S60, the cluster number of the hidden file storing the security data is changed to the cluster number of the empty index record in the target directory. In step S60, the run-list of the data attribute contained in the MFT entry of the hidden file ) Information is replaced with the cluster number of the hidden file as an empty index record by deleting the general file. As described above, even if the file list is deleted after the index record is once allocated, the information remains as a safe space. By using this information to obtain information about the empty index record of the target directory and changing the cluster number to the hidden file cluster number, The contents of the file are moved to an index record and the contents of the file are lost, which makes it possible to hide the file from external detection or navigation.

이와 같이 이루어지는 본 발명에 구체적인 실시예를 이하 살펴본다. Hereinafter, a specific embodiment of the present invention will be described below.

<<실시예 : 보안파일의 목록숨기기와 내용숨기기 실시 환경>><< Example: Hide List of Security Files and Hide Contents Environments >>

- 운영체제 : Windows 10 Pro(Ver 10.0.17134.165)- Operating System: Windows 10 Pro (Ver 10.0.17134.165)

- 디스크 포맷 : NTFS v3.1 - Disk format: NTFS v3.1

- 저장 드라이브 : 2,5" HDD SCSI- Storage drive: 2,5 "HDD SCSI

- 저장공간 : 100GB 파티션(총 931GB)- Storage space: 100GB partition (931GB total)

- 디스크 할당 클러스터 사이즈 : 4,096 bytes - Disk allocation cluster size: 4,096 bytes

- 숨김 디렉토리 : e:\hideDataSrc - Hidden directory: e: \ hideDataSrc

- 정상 파일 : dataHide01.txt, dataHide04.txt ~ dataHide06.txt- Normal file: dataHide01.txt, dataHide04.txt ~ dataHide06.txt

- 숨김 파일 : dataHide02.txt, dataHide03.txt - Hidden file: dataHide02.txt, dataHide03.txt

- 타겟 디렉토리 : e:\hideDataTarget1, e:\hideDataTarget2- Target directory: e: \ hideDataTarget1, e: \ hideDataTarget2

- 테스트파일: targetHide01.txt ~ targetHide06.txt- Test file: targetHide01.txt ~ targetHide06.txt

- 디스크 에디팅 프로그램 : WinHex Ver. 18.4- Disk editing program: WinHex Ver. 18.4

<<파일목록 숨기기 실시예>><< Hide file list Example >>

도 3 내지 도 8은 실시예1에 따라 숨김파일의 목록을 숨기는 각 단계를 설명하기 위한 캡쳐화면으로, 이를 참조하면, 우선 디스크 드라이브(e:)가 다른 프로세스에 의하여 점유되지 않도록 프로세스 관리를 하고, 디스크 에디트 프로그램인 "WinHex"를 준비한다. 그런 다음, 도 3에 도시된 바와 같이 숨김 디렉토리인 e:\hideDataSrc를 생성하고, 그 안에 파일 "dataHide01.txt ~ dataHide06.txt"을 생성하여 숨김 디렉토리에 저장하였다. 그런 다음, 숨김파일로 "dataHide02.txt", "dataHide03.txt"을 선택하고, 정상파일로 "dataHide01.txt"로 선택한 후, 도 4에 도시된 바와 같이 "WinHex" 프로그램을 사용하여 인덱스 엔트리의 파일명 "dataHide02.txt", "dataHide03.txt"을 정상파일명인 "dataHide01.txt"으로 변경하였다.FIGS. 3 to 8 are screens for explaining each step of hiding the list of hidden files according to the first embodiment. Referring to FIG. 3, the process management is performed such that the disk drive (e :) is not occupied by another process , And a disk editing program "WinHex". Then, as shown in FIG. 3, a hidden directory e: \ hideDataSrc is created, and a file "dataHide01.txt ~ dataHide06.txt" is created and stored in a hidden directory. Then, "dataHide02.txt" and "dataHide03.txt" are selected as the hidden files and "dataHide01.txt" is selected as the normal file. Then, as shown in FIG. 4, the "WinHex" The file names "dataHide02.txt" and "dataHide03.txt" were changed to the normal file name "dataHide01.txt".

그런 다음, 정상파일 "dataHide01.txt"을 삭제하였고, 이에 따라 같은 이름의 두개의 숨김파일이 도 5에 도시한 바와 같이 함께 삭제됨을 확인하였다. 3개의 파일을 삭제한 후 정상파일인 "dataHide01.txt"와 두 개의 숨김파일인 "dataHide02.txt", "dataHide03.txt"의 MFT 엔트리의 정보가 각각 도 6 내지 8로 확인되었다. 정상파일("dataHide01.txt")의 MFT 엔트리의 정보인 도 6을 살펴보면, 정상파일이 삭제되었음이 표시되어 있는 반면에(도 6의 직사각형 내에 삭제표시("00 00")), 숨김파일("dataHide02.txt", "dataHide03.txt")의 MFT 엔트리의 정보인 도 7,8에는 파일이 사용중임이 표시되어 있다(도 7,8의 직사각형 내에 파일 사용중 플래그 표시("01 00")). 따라서, 두 개의 숨김파일은 도 5에 도시된 바와 같이 탐색기 창의 디렉토리 목록에서 사라져 탐색은 되지 않지만, 실제로는 삭제되지 않고 유효한 데이터로 저장되고 있음을 확인할 수 있었다.Then, the normal file " dataHide01.txt " is deleted, and accordingly, it is confirmed that two hidden files with the same name are deleted together as shown in FIG. After deleting the three files, the information of the MFT entry of the normal file "dataHide01.txt" and the two hidden files "dataHide02.txt" and "dataHide03.txt" are confirmed in FIGS. 6 to 8, respectively. 6, which is the information of the MFT entry of the normal file ("dataHide01.txt"), it is indicated that the normal file has been deleted ("0000" in the rectangle in FIG. 6) 7 and 8, which are the information of the MFT entries of the file names (" dataHide02.txt ", " dataHide03.txt ", " dataHide03.txt " . Therefore, the two hidden files disappear from the directory list of the explorer window and are not searched as shown in FIG. 5, but it is confirmed that they are stored as valid data without being actually deleted.

<<내용 숨기기 실시예>><< Hide contents Example >>

도 9 내지 도 13는 실시예2에 따라 숨김파일의 내용을 숨기는 각 단계를 설명하기 위한 캡쳐화면으로, 이를 참조하면, 먼저 데이터를 숨길 타겟 디렉토리 "e:\hideDataTarget1", "e:\hideDataTarget2"를 생성하고, 테스트파일인 "targetHide01.txt ~ targetHide06.txt"을 생성하여 타겟 디렉토리에 각각 저장하였다. 그런 다음, 테스트파일("targetHide01.txt ~ targetHide06.txt")을 삭제하여 타겟 디렉토리를 비어있는 디렉토리로 하였다. 도 9는 타겟 디렉토리인 "hideDataTarget1"의 MFT 정보 캡쳐화면으로, 도 9의 사각 네모안에 "21 01 A1 27"이 표기되어 있는데, "21"에서 "2"는 두자리의 런-리스트의 시작 클러스터 번호를 의미하는데 "A1 27"이 여기에 해당한다. 이것은 리틀엔디언으로 저장되어서 실제로는"0x27A1"에 해당하는 값이다. "1"은 연속된 클러스터의 개수가 들어있는 자리의 크기를 의미한다. "01"값이 여기에 해당한다. 즉, 연속된 클러스터의 수를 나타내는 한자리의 숫자에 "01"이 들어있어서 연속된 클러스터의 수는 1개 라고 해석되었고, " hideDataTarget1" 디렉토리의 인덱스 레코드는 "0x27A1"에서부터 1개 클러스터가 할당되어 있다. 도 10은 숨김 디렉토리인 "hideDataTarget2"의 MFT 정보 캡쳐화면으로, 전술한 바와 마찬가지로 "hideDataTarget2" 디렉토리의 인덱스 레코드는 "0x27AB"에서부터 1개 클러스터가 할당되어 있다. 9 to 13 are explanatory diagrams of respective steps of hiding the contents of the hidden file according to the second embodiment. Referring to FIG. 9, the target directory " e: \ hideDataTarget1 ", " e: \ hideDataTarget2 & TargetHide01.txt ~ targetHide06.txt " are generated and stored in the target directory, respectively. Then, we delete the test file ("targetHide01.txt ~ targetHide06.txt") and set the target directory as an empty directory. 9 is a screen for capturing MFT information of a target directory " hideDataTarget1 ", where " 21 01 A1 27 " is indicated in a square box in Fig. This means "A1 27". It is stored as little endian and is actually a value corresponding to "0x27A1". &Quot; 1 " means the size of a spot containing the number of consecutive clusters. This is the value of "01". That is, the number of consecutive clusters is interpreted as one, and the index record of the "hideDataTarget1" directory is assigned to one cluster starting from "0x27A1" because the number of one digit indicating the number of consecutive clusters is "01" . 10 is an MFT information capture screen of "hideDataTarget2" which is a hidden directory, and as described above, one cluster is allocated from "0x27AB" in the index record of the "hideDataTarget2" directory.

그리고, 실시예1에서 숨김파일("dataHide02.txt")의 MFT 엔트리의 정보인 도 7에서 사각박스 내의 "21 01 89 27"로 표시되어 있어 "0x2789"부터 1개의 클러스터에 저장되어 있음을 알 수 있고, 숨김파일("dataHide03.txt")의 MFT 엔트리의 정보인 도 8에서 사각박스 내의 "21 01 8A 27"로 표시되어 "0x278A"부터 1개의 클러스터에들어있음을 알 수 있다. 이와 같이 구한 "hideDataTarget1" 디렉토리의 인덱스 레코드번호 "0x27A1"의 1개 클러스터를 "dataHide02.txt"의 숨길데이터 "0x2789"의 1개 클러스터로 바꾼 후, 변경된 "hideDataTarget1" 디렉토리의 인덱스 레코드가 도 11에 도시되어 있다. 도 11을 살펴보면, "hideDataTarget1"의 클러스터 시작번호가"0x2789000" 으로 바뀌어 있고, 내용도 "dataHide02.txt"의 것으로 변경되었음을 알 수 있다. 또한, "hideDataTarget2" 디렉토리의 인덱스 레코드가 도시된 도 12을 살펴보면, "hideDataTarget2"의 클러스터 시작번호가 "0x278A000"으로 바뀌어 있고 내용도 "dataHide03.txt"의 것으로 변경되었음을 알 수 있다. In FIG. 7, which is the information of the MFT entry of the hidden file ("dataHide02.txt") in Embodiment 1, it is indicated by "21 01 89 27" in the rectangular box and it is stored in one cluster from "0x2789" Quot; 21 01 8A 27 " in the rectangular box in Fig. 8, which is the information of the MFT entry of the hidden file (" dataHide03.txt "), and is contained in one cluster from " 0x278A ". After one cluster of the index record number " 0x27A1 " in the " hideDataTarget1 " directory thus obtained is replaced with one cluster of data " 0x2789 " hidden in the " dataHide02.txt ", the index record of the changed " hideDataTarget1 & Respectively. 11, it can be seen that the cluster start number of "hideDataTarget1" has been changed to "0x2789000" and the content has been changed to "dataHide02.txt". 12, in which the index record of the "hideDataTarget2" directory is shown, it can be seen that the cluster start number of "hideDataTarget2" is changed to "0x278A000" and the content is changed to "dataHide03.txt".

이상의 실시예에는 숨김파일의 목록을 숨긴 후에 숨김파일의 내용을 숨기는 방법으로 예시되었으나, 본 발명은 이에 한정되지 않고 숨김파일의 내용을 숨긴 후에 숨김파일의 목록을 숨길 수도 있고, 숨김파일의 목록숨김과 내용숨김이 서로 연계되지 않고 독립적으로 수행될 수도 있다. In the above embodiments, the contents of the hidden file are hidden after hiding the list of the hidden file. However, the present invention is not limited to this. However, the contents of the hidden file may be hidden after the contents of the hidden file are hidden, And content hiding may be performed independently without being linked to each other.

이상 설명한 본 발명은 기재된 실시예에 한정되는 것은 아니고, 본 발명의 사상 및 범위를 벗어나지 않고 다양하게 수정 및 변형할 수 있음은 이 기술의 분야에서 통상의 지식을 가진 자에게 자명하다. 따라서 그러한 변형예 또는 수정예들은 본 발명의 특허청구범위에 속한다 해야 할 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit and scope of the invention. It is therefore intended that such variations and modifications fall within the scope of the appended claims.

S10 : 정상파일이 들어있는 숨김 디렉토리에 숨김파일을 저장하는 단계
S20 : 인덱스 레코드(Index Record)에 들어있는 인덱스 엔트리(Index Entry)의 파일이름($FILE_NAME) 속성에 있는 숨김파일의 이름을 정상파일의 이름과 동일하게 변경하는 단계
S30 : 정상파일을 삭제하여 파일명이 동일한 숨김파일의 인덱스 레코드정보를 함께 삭제하는 단계
S40 : 타겟 디렉토리 내에 들어있는 임의의 일반파일을 삭제하는 단계
S50 : 타겟 디렉토리의 비어있는 인덱스 레코드의 클러스터 번호를 구하는 단계
S60 : 보안 데이터가 저장된 숨김파일의 클러스터 번호를 타겟 디렉토리의 비어있는 인덱스 레코드의 클러스터 번호로 변경하는 단계
Step S10: Storing a hidden file in a hidden directory containing normal files
Step S20: Change the name of the hidden file in the file name ($ FILE_NAME) attribute of the index entry contained in the index record to be the same as the name of the normal file
S30: Delete the normal file and delete the index record information of the hidden file having the same file name
S40: deleting any ordinary files contained in the target directory
S50: obtaining the cluster number of the empty index record in the target directory
S60: Change the cluster number of the hidden file where security data is stored to the cluster number of the empty index record in the target directory

Claims (6)

윈도우즈 파일시스템에서 디렉토리 목록정보를 변경하여 보안 데이터를 숨기는 방법에 있어서,
(a) 정상파일이 들어있는 숨김 디렉토리에 보안 데이터가 저장된 숨김파일을 저장하는 단계;
(b) 인덱스 레코드(Index Record)에 들어있는 인덱스 엔트리(Index Entry)의 파일이름($FILE_NAME) 속성에 있는 상기 숨김파일의 이름을 상기 정상파일의 이름과 동일하게 변경하는 단계;
(c) 상기 정상파일을 삭제하여 파일명이 동일한 상기 숨김파일의 인덱스 엔트리 정보를 함께 삭제하는 단계; 및
(d) 상기 숨김파일의 보안 데이터가 들어있는 클러스터 번호를 임의의 타겟 디렉토리의 인덱스 레코드의 클러스터 번호로 변경하는 단계;를 포함하는 것을 특징으로 하는 디렉토리 목록정보 변경을 이용한 데이터 숨김방법.
A method for hiding security data by modifying directory listing information in a Windows file system,
(a) storing a hidden file in which secure data is stored in a hidden directory containing a normal file;
(b) changing the name of the hidden file in the file name ($ FILE_NAME) attribute of the index entry contained in the index record to be the same as the name of the normal file;
(c) deleting the index file information of the hidden file having the same file name by deleting the normal file; And
(d) changing the cluster number containing the security data of the hidden file to the cluster number of the index record of an arbitrary target directory.
삭제delete 제1항에 있어서,
상기 타겟 디렉토리의 인덱스 레코드의 클러스터 번호는 MFT 엔트리 내의 $INDEX_ALLOCATION 속성에 들어있는 클러스터 번호인 것을 특징으로 하는 디렉토리 목록정보 변경을 이용한 데이터 숨김방법.
The method according to claim 1,
Wherein the cluster number of the index record in the target directory is a cluster number contained in the $ INDEX_ALLOCATION attribute in the MFT entry.
제1항에 있어서,
상기 타겟 디렉토리의 인덱스 레코드는 타겟 디렉토리에 들어있는 임의의 일반파일을 모두 삭제하여 비어있는 인덱스 레코드인 것을 특징으로 하는 디렉토리 목록정보 변경을 이용한 데이터 숨김방법.
The method according to claim 1,
Wherein the index record of the target directory is an empty index record by deleting any ordinary files included in the target directory.
제1항 또는 제4항에 있어서
상기 타겟 디렉토리와 숨김 디렉토리에 들어있는 파일의 수는 6개 이상인 것을 특징으로 하는 디렉토리 목록정보 변경을 이용한 데이터 숨김방법.
The method according to claim 1 or 4, wherein
Wherein the number of files included in the target directory and the hidden directory is six or more.
제1항에 있어서,
디스크 에디트 프로그램을 사용하여 상기 숨김파일 인덱스 엔트리의 파일이름($FILE_NAME)을 변경하는 것을 특징으로 하는 디렉토리 목록정보 변경을 이용한 데이터 숨김방법.
The method according to claim 1,
And changing the file name ($ FILE_NAME) of the hidden file index entry using a disk edit program.
KR1020190001605A 2019-01-07 2019-01-07 Data hiding method by modifying directory information KR101966032B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190001605A KR101966032B1 (en) 2019-01-07 2019-01-07 Data hiding method by modifying directory information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190001605A KR101966032B1 (en) 2019-01-07 2019-01-07 Data hiding method by modifying directory information

Publications (1)

Publication Number Publication Date
KR101966032B1 true KR101966032B1 (en) 2019-04-04

Family

ID=66105681

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190001605A KR101966032B1 (en) 2019-01-07 2019-01-07 Data hiding method by modifying directory information

Country Status (1)

Country Link
KR (1) KR101966032B1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010044804A (en) 2001-03-27 2001-06-05 왕성현 A method saving and restoring secret data into/from graphic files
KR20060062043A (en) 2004-12-03 2006-06-12 엘지전자 주식회사 The alternative data hiding method in the mobile communication terminal
KR20060112682A (en) 2003-12-05 2006-11-01 뉴저지 인스티튜트 오브 테크놀로지 System and method for robust reversible data hiding and data recovery in the spatial domaim
KR100734940B1 (en) 2006-06-01 2007-07-06 삼성전자주식회사 Method and apparatus for installing of hidden data in mobile communication terminal
JP2008146361A (en) * 2006-12-11 2008-06-26 Seiko Epson Corp Recorded information editing device, recorded information editing method, and program
JP2016189104A (en) * 2015-03-30 2016-11-04 日本電気株式会社 File management device, storage device, file management method, and program
KR20170062307A (en) * 2015-11-27 2017-06-07 동양대학교 산학협력단 Apparatus and method for hidding hidden message
JP2018523228A (en) * 2015-05-19 2018-08-16 クリプトムーヴ, インコーポレイテッドCryptomove, Inc. Security through data hiding

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010044804A (en) 2001-03-27 2001-06-05 왕성현 A method saving and restoring secret data into/from graphic files
KR20060112682A (en) 2003-12-05 2006-11-01 뉴저지 인스티튜트 오브 테크놀로지 System and method for robust reversible data hiding and data recovery in the spatial domaim
KR20060062043A (en) 2004-12-03 2006-06-12 엘지전자 주식회사 The alternative data hiding method in the mobile communication terminal
KR100734940B1 (en) 2006-06-01 2007-07-06 삼성전자주식회사 Method and apparatus for installing of hidden data in mobile communication terminal
JP2008146361A (en) * 2006-12-11 2008-06-26 Seiko Epson Corp Recorded information editing device, recorded information editing method, and program
JP2016189104A (en) * 2015-03-30 2016-11-04 日本電気株式会社 File management device, storage device, file management method, and program
JP2018523228A (en) * 2015-05-19 2018-08-16 クリプトムーヴ, インコーポレイテッドCryptomove, Inc. Security through data hiding
KR20170062307A (en) * 2015-11-27 2017-06-07 동양대학교 산학협력단 Apparatus and method for hidding hidden message

Similar Documents

Publication Publication Date Title
US8266176B2 (en) Storage system and file access determination method of the same
US10430398B2 (en) Data storage system having mutable objects incorporating time
CN104156278B (en) A kind of FileVersion control system and its method
US7860907B2 (en) Data processing
JP3938594B2 (en) File name generator
JP5055853B2 (en) File management apparatus and electronic device
US10013312B2 (en) Method and system for a safe archiving of data
US20080222513A1 (en) Method and System for Rules-Based Tag Management in a Document Review System
US9286307B2 (en) Document management apparatus improved in efficiency of deletion of files, method of controlling the same, and storage medium
JP2008003846A (en) Document use management system and method, document management server and program therefor
WO2011070606A1 (en) Retention-based file system
US7809778B2 (en) Idempotent journal mechanism for file system
US20080212225A1 (en) Information processing apparatus, information recording medium, and information processing method, and computer program
US20070033370A1 (en) Continuous data protection
CN102722487A (en) Method and apparatus for file management
US20060287990A1 (en) Method of file accessing and database management in multimedia device
JP2008186330A (en) Use authorization managing device, content sharing system, content sharing method and content sharing program
US20140358868A1 (en) Life cycle management of metadata
WO2016121083A1 (en) Computer system, distributed object sharing method, and edge node
CN111176896A (en) File backup method and device and terminal equipment
US8316008B1 (en) Fast file attribute search
CN101350034B (en) Mobile memory apparatus and method for visiting file
US8082230B1 (en) System and method for mounting a file system on multiple host computers
WO2008136563A1 (en) Method of storing meta-data and system for storing meta-data
KR101589333B1 (en) Techniques for managing persistent document collections

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant