CN111753263A - 一种基于macOS系统的无感加解密方法 - Google Patents
一种基于macOS系统的无感加解密方法 Download PDFInfo
- Publication number
- CN111753263A CN111753263A CN202010573057.6A CN202010573057A CN111753263A CN 111753263 A CN111753263 A CN 111753263A CN 202010573057 A CN202010573057 A CN 202010573057A CN 111753263 A CN111753263 A CN 111753263A
- Authority
- CN
- China
- Prior art keywords
- software
- file
- encryption
- security policy
- function
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000006870 function Effects 0.000 claims abstract description 48
- 230000001939 inductive effect Effects 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 claims description 13
- 230000000694 effects Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/565—Static detection by checking file integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Virology (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于macOS系统的无感加解密方法,包括如下步骤:建立内核扩展模块,并将内核扩展模块挂载于macOS系统中;构建安全策略,注册字符设备,通过所述字符设备向所述内核扩展模块输入安全策略;识别需要处理的文件数据;根据安全策略将macOS系统需要处理的系统函数替换为安全函数地址;根据安全策略判断授信软件、恶意软件和普通软件,并根据软件类型执行安全逻辑处理,所述方法可使得采用软件打开文件时无需手动加解密,操作无感透明,并对文件起到较好的保密效果。
Description
技术领域
本发明涉及一种加密领域,特别涉及一种基于macOS系统的无感加解密方法。
技术背景
目前macOS系统中,为了防止机密文件外泄,通常需要将机密文件加密后保存于硬盘,其中加密方法通常为手动加密,需要在使用前手动进行解密操作,解密操作繁琐,由于存储于硬盘上的文件为明文文件,恶意软件可轻易获取硬盘上的明文文件,从而增加了泄密的风险。
发明内容
本发明其中一个目的在于提供一种基于macOS系统的无感加解密方法,所述方法根据在建立安全策略的条件下,通过授权软件实现无感透明加解密的技术效果,在保证机密文件安全的基础上可以提高文件打开的效率,提高文件打开的流畅体验。
本发明其中一个目的在于提供一种基于macOS系统的无感加解密方法,所述方法在系统调用层对文件进行解密,加解密的处理逻辑处于内核,安全策略可灵活地进行部署。
本发明其中一个目的在于提供一种基于macOS系统的无感加解密方法,所述方法,所述方法在系统开始时在系统内挂载内核扩展模块,在根据安全策略完文件的打开/关闭操作后卸载所述内核扩展模块,可以释放内核存储空间。
为了实现至少一种上述发明目的,本发明进一步提供一种基于macOS系统的无感加解密方法,包括如下步骤:
建立内核扩展模块,并将内核扩展模块挂载于macOS系统中;
构建安全策略,注册字符设备,通过所述字符设备向所述内核扩展模块输入安全策略;
识别需要处理的文件数据;
根据安全策略将macOS系统需要处理的系统函数替换为安全函数地址;
根据安全策略判断授信软件、恶意软件和普通软件,并根据软件类型执行安全逻辑处理。
根据本发明其中一个较佳实施例,所述安全策略包括:需要替换的目标系统函数、授信软件特征值、需要加解密处理的文件类型,加密算法、加解密密钥。
根据本发明另一个较佳实施例,所述软件特征值包括软件进程名称,软件唯一特征码、软件签名中的至少一种。
根据本发明另一个较佳实施例,所述加密算法包括AES、DES、Rc4、SM4中的至少一种。
根据本发明另一个较佳实施例,替换系统函数地址方法包括如下步骤:
查找内存中的__constdata数据段;
根据__constdata数据段中的所存的地址和_nosys、_exit、_fork三个系统调用的地址对比,若存在相同地址下标,则判定为系统函实际地址;
根据安全策略将系统调用表中的实际函数地址替换为安全函数地址。
根据本发明另一个较佳实施例,所述安全策略还包括:构建文件安全目录,当使用的软件被判定为非授信软件和非恶意软件,则判断处理的软件是否位于文件安全目录中,若是则返回操作为不允许,否则直接调用原函数将返回值发送给软件。
根据本发明另一个较佳实施例,所述安全策略还包括:建立恶意软件名单,获取并存储恶意软件特征值,用于判断恶意软件。
根据本发明另一个较佳实施例,所述安全策略还包括:根据授信软件打开目标文件,并判断目标文件是否需要加解密,若是,则根据加密函数对文件进行加解密,否则直接调用原系统函数,并对软件发送返回值。
根据本发明另一个较佳实施例,所述安全策略还包括:预获取授信软件、恶意软件和普通软件特征值,并构建授信软件、恶意软件和普通软件的特征值列表,将打开的软件根据存储的特征值列表输出返回信息。
根据本发明另一个较佳实施例,当向软件输出返回值后,自动卸载所述内核扩展模块。
附图说明
图1显示的是本发明一种基于macOS系统的无感加解密方法的一种流程示意图;
图2显示的是本发明一种基于macOS系统的无感加解密方法的流程框图;
图3显示的是本发明一种基于macOS系统的无感加解密方法中的替换函数方法流程示意图;
图4显示的是本发明一种基于macOS系统的无感加解密方法中的应用软件逻辑处理示意图;
图5显示的是本发明一种基于macOS系统的无感加解密方法中的安全函数处理逻辑图。
具体实施方式
以下描述用于揭露本发明以使本领域技术人员能够实现本发明。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。在以下描述中界定的本发发明的基本原理可以应用于其他实施方案、变形方案、改进方案、等同方案以及没有背离本发明的精神和范围的其他技术方案。
可以理解的是,术语“一”应理解为“至少一”或“一个或多个”,即在一个实施例中,一个元件的数量可以为一个,而在另外的实施例中,该元件的数量可以为多个,术语“一”不能理解为对数量的限制。
请参考图1显示的一种基于macOS系统的无感加解密方法的流程示意图,所述加解密方法首先接入并注册一个字符设备,所述字符设备包括但不仅限于键盘、串口、调制解调器,用于传输字符信息,进一步地,本发明构建一内核扩展模块,所述内核扩展模块通讯连接所述字符设备,所述内核扩展模块作为在macOS系统运行的程序,挂载于所述macOS系统,需要说明的是,所述内核扩展模块为kext文件,挂载于macOS系统内核,用于驱动系统内核进行逻辑运算。
具体地,构建一安全策略,所述安装策略通过所述字符设备传输到所述系统内核,所述安全策略包括如下内容:
需要替换的安全函数地址,所述安全函数地址接入安全函数处理逻辑;
授信软件特征值,所述特征值包括但不仅限于软件的进程名称、软件唯一特征码,软件签名等,所述特征值作为软件授信依据。
识别需要加密的文件类型,可根据包括但不仅限于文件格式进行判断,比如DWG、STL等绘图格式。
进一步的,所述安全策略还包括获取恶意软件的特征值和普通软件特征值,并根据特征值分别构建恶意软件列表和普通软件列表,当打卡的软件时macOS系统获取软件的特征值,将根据特征值的类型分别对需要打开的文件进行安全函数逻辑操作。
加密算法和加解密的密钥信息,所述加密算法和密钥信息将需要加密的文件进行加解密操作,其中所述加密算法包括但不仅限于AES、DES、Rc4、SM4。
其中所述内核扩展模块执行安全策略中对系统函数的替换,具体而言,使用对应的软件打开对应的文件时,所述安全策略下发,所述内核扩展模块从内核头开始查找,当找到具有_constdata标识的数据段,其中_constdata标识的数据段为常量数据段,内部存储系统调用表地址,通过查找获取_nosys、_exit、_fork三个系统调用的地址,进一步将_constdata标识的数据段内存储的地址和_nosys、_exit、_fork三个系统调用的地址对比,若存在相同标识的地址,则根据相同的标识地址确认系统调用表的实际地址,并将安全策略中的安全函数地址替换对应系统函数地址,通过所述安全函数地址接入安全函数处理逻辑。
软件通过UI界面对文件进行进行操作,在未进行系统函数替换时,软件直接采用系统函数调用表进行逻辑处理,逻辑处理包括但不仅限于open、read、mmap、lseek、write、close。而在本发明中通过替换系统函数,在对文件进行逻辑处理之前进一步进行安全函数处理,其中所述安全函数处理逻辑包括如下步骤:
获取需要处理目标文件的属性,所述文件属性包括但不仅限于文件格式、文件类型、文件内容、文件存储地址和文件发送人等;
根据文件属性判断目标文件是否需要加解密,比如可设定绘图格式文件需要加密;
对目标文件进行加解密;
完成目标文件加解密后调用原系统函数执行对应的逻辑操作。
具体的,当所述内核扩展模块根据用户的UI操作触发系统的函数调用,所述内核扩展模块识别软件的特征值,并和存储于内存中的特征值列表对比,若对比识别软件为授信软件,则进一步判断需要打开的目标文件类型,并同时判断该目标文件是否需要加解密,若判断目标文件需要加解密,则调用相关的加密函数或密钥对文件进行加解密。在完成对目标文件的加解密操作后,进一步调用原系统函数执行对应的逻辑处理。若根据软件特征值判断软件为恶意软件,则所述安全策略对软件执行不允许的返回值。
进一步地,在本发明另一较佳实施例中,对硬盘上的文件选择性地建立防护目录,当使用软件打开文件时,若所述内核扩展模块识别软件特征值为非恶意软件和非授信软件,则进一步判断需要打开的文件是否是防护目录中的文件类型或特定文件,若是,对软件返回值为不允许操作,否则直接调用原系统函数执行相关逻辑命令。
在本发明再一较佳实施例中,若使用的软件并授信软件、恶意软件或普通软件,也就是说,macOS系统自身对文件进行相关的逻辑命令,在此场景下,macOS系统无需加载内核扩展模块识,直接调用原系统函数执行相关逻辑命令。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(CPU)执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域的技术人员应理解,上述描述及附图中所示的本发明的实施例只作为举例而并不限制本发明,本发明的目的已经完整并有效地实现,本发明的功能及结构原理已在实施例中展示和说明,在没有背离所述原理下,本发明的实施方式可以有任何变形或修改。
Claims (9)
1.一种基于macOS系统的无感加解密方法,其特征在于,包括如下步骤:
建立内核扩展模块,并将内核扩展模块挂载于macOS系统中;
构建安全策略,注册字符设备,通过所述字符设备向所述内核扩展模块输入安全策略;
识别需要处理的文件数据;
根据安全策略将macOS系统需要处理的系统函数替换为安全函数地址;
根据安全策略判断授信软件、恶意软件和普通软件,并根据软件类型执行安全逻辑处理。
2.根据权利要求1所述的一种基于macOS系统的无感加解密方法,其特征在于,所述安全策略包括:需要替换的目标系统函数、授信软件特征值、需要加解密处理的文件类型,加密算法、加解密密钥。
3.根据权利要求1所述的一种基于macOS系统的无感加解密方法,其特征在于,所述安全策略还包括:预获取授信软件、恶意软件和普通软件特征值,并构建授信软件、恶意软件和普通软件的特征值列表,将打开的软件根据存储的特征值列表输出返回信息。
4.根据权利要求3所述的一种基于macOS系统的无感加解密方法,其特征在于,所述软件特征值包括软件进程名称,软件唯一特征码、软件签名中的至少一种。
5.根据权利要求2所述的一种基于macOS系统的无感加解密方法,其特征在于,所述加密算法包括AES、DES、Rc4、SM4中的至少一种。
6.根据权利要求1所述的一种基于macOS系统的无感加解密方法,其特征在于,替换系统函数地址方法包括如下步骤:
查找内存中的__constdata数据段;
根据__constdata数据段中的所存的地址和_nosys、_exit、_fork三个系统调用的地址对比,若存在相同地址下标,则判定为系统函实际地址;
根据安全策略将系统调用表中的实际函数地址替换为安全函数地址。
7.根据权利要求3所述的一种基于macOS系统的无感加解密方法,其特征在于,所述安全策略还包括:根据授信软件打开目标文件,并判断目标文件是否需要加解密,若是,则根据加密函数对文件进行加解密,否则直接调用原系统函数,并对软件发送返回值。
8.根据权利要求7所述的一种基于macOS系统的无感加解密方法,其特征在于,所述安全策略还包括:构建文件安全目录,当使用的软件被判定为非授信软件和非恶意软件,则判断处理的软件是否位于文件安全目录中,若是则返回操作为不允许,否则直接调用原函数将返回值发送给软件。
9.根据权利要求1所述的一种基于macOS系统的无感加解密方法,其特征在于,当向软件输出返回值后,自动卸载所述内核扩展模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010573057.6A CN111753263A (zh) | 2020-06-22 | 2020-06-22 | 一种基于macOS系统的无感加解密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010573057.6A CN111753263A (zh) | 2020-06-22 | 2020-06-22 | 一种基于macOS系统的无感加解密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111753263A true CN111753263A (zh) | 2020-10-09 |
Family
ID=72674841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010573057.6A Pending CN111753263A (zh) | 2020-06-22 | 2020-06-22 | 一种基于macOS系统的无感加解密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111753263A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463402A (zh) * | 2020-11-03 | 2021-03-09 | 浙江华途信息安全技术股份有限公司 | 一种基于macOS操作系统的剪切板控制方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254124A (zh) * | 2011-07-21 | 2011-11-23 | 周亮 | 一种移动终端信息安全防护系统和方法 |
CN104866778A (zh) * | 2015-01-30 | 2015-08-26 | 武汉华工安鼎信息技术有限责任公司 | 一种基于Linux内核的文档安全访问控制方法和装置 |
-
2020
- 2020-06-22 CN CN202010573057.6A patent/CN111753263A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254124A (zh) * | 2011-07-21 | 2011-11-23 | 周亮 | 一种移动终端信息安全防护系统和方法 |
CN104866778A (zh) * | 2015-01-30 | 2015-08-26 | 武汉华工安鼎信息技术有限责任公司 | 一种基于Linux内核的文档安全访问控制方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463402A (zh) * | 2020-11-03 | 2021-03-09 | 浙江华途信息安全技术股份有限公司 | 一种基于macOS操作系统的剪切板控制方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109923548B (zh) | 通过监管进程访问加密数据实现数据保护的方法、系统及计算机程序产品 | |
CN106980794B (zh) | 基于TrustZone的文件加解密方法、装置及终端设备 | |
US8973107B2 (en) | Method and apparatus for securing keystrokes from being intercepted between the keyboard and a browser | |
JP4089171B2 (ja) | 計算機システム | |
CN106997439B (zh) | 基于TrustZone的数据加解密方法、装置及终端设备 | |
US9152821B2 (en) | Data leakage prevention system, method, and computer program product for preventing a predefined type of operation on predetermined data | |
CN109412812B (zh) | 数据安全处理系统、方法、装置和存储介质 | |
CN108509802B (zh) | 一种应用程序数据防泄密方法和装置 | |
US9917817B1 (en) | Selective encryption of outgoing data | |
CN106992851B (zh) | 基于TrustZone的数据库文件口令加解密方法、装置及终端设备 | |
CN106980793B (zh) | 基于TrustZone的通用口令存储及读取方法、装置及终端设备 | |
CN108334754B (zh) | 嵌入式系统程序的加密解密方法及系统 | |
JP2007286905A (ja) | 情報処理端末装置、ファイル流出防止方法およびファイル流出防止プログラム | |
KR20090016282A (ko) | 콘텐츠의 선택적인 부분 암호화를 위한 drm 시스템 및방법 | |
CN105678192A (zh) | 一种基于智能卡的密钥应用方法及应用装置 | |
CN108959943B (zh) | 用于管理加密密钥的方法、装置、设备、存储介质以及相应车辆 | |
CN112733180A (zh) | 数据查询方法、装置和电子设备 | |
US9819663B1 (en) | Data protection file system | |
CN109657490B (zh) | 一种办公文件透明加解密方法及系统 | |
Zinkus et al. | Data security on mobile devices: Current state of the art, open problems, and proposed solutions | |
CN106548351A (zh) | 一种指纹支付流程的优化方法及终端 | |
CN111753263A (zh) | 一种基于macOS系统的无感加解密方法 | |
KR102542213B1 (ko) | 네트워크 기반 스토리지의 데이터 실시간 암복호화 보안 시스템 및 방법 | |
KR101532763B1 (ko) | 어플리케이션 불법복제 방지 시스템 및 방법 | |
CN116305287A (zh) | 一种防止泄密的文件管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |