木马隐写方法和检测方法.pdf

上传人:汲墨****o 文档编号:11510677 上传时间:2021-10-01 格式:PDF 页数:12 大小:486.75KB
收藏 版权申诉 举报 下载
木马隐写方法和检测方法.pdf_第1页
第1页 / 共12页
木马隐写方法和检测方法.pdf_第2页
第2页 / 共12页
木马隐写方法和检测方法.pdf_第3页
第3页 / 共12页
文档描述:

《木马隐写方法和检测方法.pdf》由会员分享,可在线阅读,更多相关《木马隐写方法和检测方法.pdf(12页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 201910251422.9 (22)申请日 2019.03.29 (71)申请人 合肥高维数据技术有限公司 地址 230088 安徽省合肥市高新区望江西 路5089号中科大先研院未来中心B615 室 (72)发明人 田辉梅俊 (74)专利代理机构 合肥天明专利事务所(普通 合伙) 34115 代理人 金凯 (51)Int.Cl. G06F 21/60(2013.01) G06F 21/56(2013.01) (54)发明名称 一种木马隐写方法和检测方法 (57)摘要 本发明公开。

2、了一种木马隐写方法和检测方 法, 属于网络安全技术领域, 包括在数据传输通 道中传输载密文件和加载器, 该载密文件嵌入有 木马程序; 在所述加载器和所述载密文件所在页 面被访问并获取时, 运行所述加载器以将所述木 马程序解密至内存中, 并在内存中运行所述木马 程序。 本发明披露了一种新的隐写木马植入途 径, 同时提供对应的检测方法, 完善了杀毒软件 对于木马的检测。 权利要求书2页 说明书6页 附图3页 CN 110069936 A 2019.07.30 CN 110069936 A 1.一种木马隐写方法, 其特征在于, 包括: 在数据传输通道中传输载密文件和加载器, 该载密文件嵌入有木马程序。

3、; 在所述加载器和所述载密文件所在页面被访问并获取时, 运行所述加载器以将所述木 马程序解密至内存中, 并在内存中运行所述木马程序。 2.如权利要求1所述的木马隐写方法, 其特征在于, 在所述在数据传输通道中传输载密 文件和加载器之前, 还包括: 利用高级加密标准算法 AES将所述木马程序加密成密文; 利用LSB算法将所述密文嵌入到所述载体图像的每个像素最低位, 得到所述载密文件。 3.如权利要求1或2所述的木马隐写方法, 其特征在于, 在所述利用AES算法将所述木马 程序加密成密文之后, 还包括: 利用libpng模块解析所述载体图像, 并统计图像像素数量; 根据所述图像像素数量, 判断所述。

4、载体图像的嵌入容量是否大于所述密文大小; 若是, 则将所述密文嵌入到载体图像中, 得到所述载密文件。 4.如权利要求1或2所述的木马隐写方法, 其特征在于, 所述在所述加载器和所述载密 文件所在页面被访问时, 运行加载器以将所述木马程序解密至内存中, 并在内存中运行所 述木马程序, 包括: 所述加载器使用libpng模块解析所述载密文件, 以从所述载密文件中提取所述密文; 从所述密文中解密得到所述木马程序, 并检查所述木马程序是否为PE格式文件; 若是, 则创建PE结构体, 并将所述木马程序对应导入到该PE结构体中; 将PE结构体的各节对应映射到所述内存中并运行。 5.如权利要求4所述的木马隐。

5、写方法, 其特征在于, 在所述将PE结构体的各节对应映射 到所述内存中并运行, 包括: 将所述木马程序加载到相应库中, 并在入口点地址运行所述木马程序。 6.如权利要求4所述的木马隐写方法, 其特征在于, 还包括: 修改注册表以设置自启动和设置文件属性保护所述木马程序。 7.一种隐写木马检测方法, 其特征在于, 包括: 获取系统调用序列和操作文件序列, 并提取加载器的木马特征, 利用木马特征构建木 马特征序列; 判断所述操作文件序列是否为可执行文件格式; 若是, 则根据所述木马特征序列和所述系统调用序列, 确定是否检测到所述加载器; 若检测到所述加载器, 则确定检测到疑似木马程序。 8.如权利。

6、要求7所述的隐写木马检测方法, 其特征在于, 所述根据所述木马特征序列和 所述系统调用序列, 确定是否检测到所述加载器, 包括: 计算所述木马特征序列与预先存储的木马特征标准序列的相似度, 得到第一类相似 度; 计算所述系统调用序列与预先存储的系统调用标准序列的相似度, 得到第二类相似 度; 将第一类相似度和第二类相似度分别与相似度阈值进行比较, 若两个比较结果中任一 比较结果为大于时, 则判定检测到所述加载器。 权利要求书 1/2 页 2 CN 110069936 A 2 9.如权利要求7所述的隐写木马检测方法, 其特征在于, 在所述若检测到所述加载器, 则确定检测到疑似木马程序之后, 还包。

7、括: 检测时间窗内的文件操作序列中文件名的后缀是否为载体图像的格式后缀, 该载体图 像用于嵌入所述木马程序; 若是, 则将加载器和图像文件均被识别这一关联情况判定为异常的操作行为, 并检测 所述操作文件序列的操作文件是否为被隐写过木马程序的图像文件。 10.如权利要求7所述隐写木马检测方法, 其特征在于, 还包括: 若所述加载器判定结果、 所述异常操作判定结果以及所述操作文件隐写木马判定结果 任两项结果为是时, 确定检测过程出现异常; 若三项结果均为是时, 则确定检测到所述木马程序。 权利要求书 2/2 页 3 CN 110069936 A 3 一种木马隐写方法和检测方法 技术领域 0001 。

8、本发明涉及网络安全技术领域, 特别涉及一种木马隐写方法和检测方法。 背景技术 0002 随着互联技术的发展, 网络中木马程序泛滥, 新型木马和变种木马不断涌现, 深入 研究各式各样的木马才能针锋相对地做出防御, 对保障网络安全具有重要意义。 0003 在公开号为CN 107800705 A的中国发明专利中, 介绍了一种基于信息隐藏技术的 木马植入途径, 其基于一维混沌加密算法对木马程序加密, 使用离散余弦变换 (Discrete Cosine Transform, DCT) 隐写术将木马程序隐写到JPEG图像文件, 然后搭建web服务器, 被 控主机从web服务器获取隐写木马。 其存在的缺陷在。

9、于: 一是在木马植入过程中, 由于木马 程序被隐写到载体中, 所以在分发时需要包含载密文件或从Web服务器获取载密文件, 如果 将图片追加在加载器内部会导致程序比较大。 二是, 在检测过程中, 由于基于隐写的误报率 可能比较高, 单纯检测加载器不能判定隐写木马, 只能判定异常行为, 导致木马检测结果不 准确。 发明内容 0004 本发明的目的在于提供一种木马隐写方法和检测方法, 以披露隐写木马植入途径 和对应的检测方法。 0005 为实现以上目的, 本发明提供一种木马隐写方法, 包括如下步骤: 在数据传输通道中传输载密文件和加载器, 该载密文件嵌入有木马程序; 在所述加载器和所述载密文件所在页。

10、面被访问并获取时, 运行所述加载器以将所述木 马程序解密至内存中, 并在内存中运行所述木马程序。 0006 进一步地, 在所述在数据传输通道中传输载密文件和加载器之前, 还包括: 利用AES(高级加密标准)算法将所述木马程序加密成密文; 利用LSB算法将所述密文嵌入到所述载体图像的每个像素最低位, 得到所述载密文件。 0007 进一步地, 在所述利用高级加密标准算法将所述木马程序加密成密文之后, 还包 括: 利用libpng模块解析所述载体图像, 并统计图像像素数量; 根据所述图像像素数量, 判断所述载体图像的嵌入容量是否大于所述密文大小; 若是, 则将所述密文嵌入到载体图像中, 得到所述载密。

11、文件。 0008 进一步地, 所述在所述加载器和所述载密文件所在页面被访问时, 运行加载器以 将所述木马程序解密至内存中, 并在内存中运行所述木马程序, 包括: 所述加载器使用libpng模块解析所述载密文件, 以从所述载密文件中提取所述密文; 从所述密文中解密得到所述木马程序, 并检查所述木马程序是否为PE格式文件; 若是, 则创建PE结构体, 并将所述木马程序对应导入到该PE结构体中; 将PE结构体的各节对应映射到所述内存中并运行。 说明书 1/6 页 4 CN 110069936 A 4 0009 进一步地, 在所述将PE结构体的各节对应映射到所述内存中并运行, 包括: 将所述木马程序加。

12、载到相应库中, 并在入口点地址运行所述木马程序。 0010 进一步地, 还包括: 修改注册表以设置自启动和设置文件属性保护所述木马程序。 0011 另一方面, 本发明提供一种隐写木马检测方法, 包括如下步骤: 获取系统调用序列和操作文件序列, 并提取加载器的木马特征, 利用木马特征构建木 马特征序列; 判断所述操作文件序列是否为可执行文件格式; 若是, 则根据所述木马特征序列和所述系统调用序列, 确定是否检测到所述加载器; 若检测到所述加载器, 则确定检测到疑似木马程序。 0012 进一步地, 所述根据所述木马特征序列和所述系统调用序列, 确定是否检测到所 述加载器, 包括: 计算所述木马特征。

13、序列与预先存储的木马特征标准序列的相似度, 得到第一类相似 度; 计算所述系统调用序列与预先存储的系统调用标准序列的相似度, 得到第二类相似 度; 将第一类相似度和第二类相似度分别与相似度阈值进行比较, 若两个比较结果中任一 比较结果为大于时, 则判定检测到所述加载器。 0013 进一步地, 在所述若检测到所述加载器, 则确定检测到疑似木马程序之后, 还包 括: 检测时间窗内的文件操作序列中文件名的后缀是否为载体图像的格式后缀, 该载体图 像用于嵌入所述木马程序; 若是, 则判定为异常操作, 并检测所述操作文件序列的操作文件是否为被隐写过木马 程序的图像文件。 0014 进一步地, 还包括: 。

14、若所述加载器判定结果、 所述异常操作判定结果以及所述操作文件隐写木马判定结果 任两项结果为是时, 确定检测过程出现异常; 若三项结果均为是时, 则确定检测到所述木马程序。 0015 与现有技术相比, 本发明存在以下技术效果: 本发明在木马隐写过程中, 在原先传 递木马程序的通道上传输加载器和和载密文件, 在用户访问加载器和载密文件所在的页面 并获取时, 利用加载器将木马程序从载密文件中解密至内存中, 直接从内存中运行木马程 序。 与现有技术中将木马程序解密至磁盘中, 可被杀毒软件检测到的木马植入途径相比, 披 露了一种隐写木马植入途径, 可绕过杀毒软件的检测。 同时在木马检测过程中, 由于基于。

15、隐 写的误报率可能比较高, 单纯检测加载器不能判定隐写木马, 只能判定异常行为, 本方案通 过在加载器判定出现异常时, 检测操作文件是否为被隐写过的图像文件, 以确定是否检测 到木马程序, 保证了导致木马检测结果的准确性。 附图说明 0016 下面结合附图, 对本发明的具体实施方式进行详细描述: 说明书 2/6 页 5 CN 110069936 A 5 图1是一种木马隐写方法的流程示意图; 图2是木马程序隐写原理图; 图3是一种隐写木马检测方法的流程示意图; 图4是隐写木马程序检测原理图。 具体实施方式 0017 为了更进一步说明本发明的特征, 请参阅以下有关本发明的详细说明与附图。 所 附图。

16、仅供参考与说明之用, 并非用来对本发明的保护范围加以限制。 0018 如图1至图2所示, 本实施例公开了一种木马隐写方法, 包括如下步骤S1至S3: S1、 在数据传输通道中传输载密文件和加载器, 该载密文件嵌入有木马程序; S2、 在所述加载器和所述载密文件所在页面被访问并获取时, 运行所述加载器以将所 述木马程序解密至内存中, 并在内存中运行所述木马程序。 0019 需要说明的是, 加载器是模拟Windows操作系统加载 可执行文件 而实现的软件, 通过Linux系统中使用Python SimpleHTTPServer模块搭建Web服务器, 并将加载器和载密 文件上传至Web服务器上, 在。

17、用户通过挂马网站或后门程序下载加载器和载密文件时, 加载 器运行, 以从载密文件中提取木马程序并运行。 通过利用加载器将木马程序直接解密至内 存中, 并在内存中运行, 可避免传统将木马程序解密至磁盘中易被杀毒软件检测出, 披露了 一种木马植入的新途径, 以便有针对性地做出防御, 对保障国家网络安全具有重要意义。 0020 进一步地, 在上述步骤S1: 在数据传输通道中传输载密文件和加载器, 该载密文件 嵌入有木马程序之前, 还包括: 利用AES(高级加密标准)算法将所述木马程序加密成密文; 利用LSB算法将所述密文嵌入到所述载体图像的每个像素最低位, 得到所述载密文件。 0021 需要说明的是。

18、, 本实施例中以载体文件的文件名Cn与盐Salt的组合作为密钥, 并 利用高级加密标准算法 (Advanced Encryption Standard, AES) 把木马程序加密成密文。 利 用隐藏文字信息最低有效位方法(Least Significant Bit, LSB) , 将密文嵌入到载体图像 的每个像素最低位, 得到载密文件。 0022 较优地, 在将密文嵌入到载体图像之前, 还包括如下步骤: 利用libpng模块解析所述载体图像, 并统计图像像素数量; 根据所述图像像素数量, 判断所述载体图像的嵌入容量是否大于所述密文大小; 若是, 则将所述密文嵌入到载体图像中, 得到所述载密文件。

19、; 若否, 则更换嵌入空间合适的载体图像, 再将密文嵌入至载体图像。 0023 需要说明的是, 通过在将密文嵌入载体图像之前, 利用载体图像的像素数量判断 载体图像空间是否足够嵌入密文, 以保证密文嵌入的完整性。 0024 进一步地, 上述步骤S2: 在所述加载器和所述载密文件所在页面被访问时, 运行加 载器以将所述木马程序解密至内存中, 并在内存中运行所述木马程序, 包括如下步骤S21至 S25: S21、 所述加载器使用libpng模块解析所述载密文件, 以从所述载密文件中提取所述密 文; S22、 从所述密文中解密得到所述木马程序, 并检查所述木马程序是否为PE格式文件, 说明书 3/6。

20、 页 6 CN 110069936 A 6 若否则执行步骤S23, 若是则执行步骤S24; S23、 木马隐写过程终止; S24、 创建PE结构体, 并将所述木马程序对应导入到该PE结构体中; S32、 分配内存空间, 并将PE结构体一一对应映射到内存空间中, 进行运行; 即将PE结构 体的每个节 (section) 映射到image_section_header结构的virtual address指定的地址 上。 0025 进一步地, 木马程序在内存中进行运行的过程包括: 木马程序需要导入库, 则将木马程序加载到相应的库; 为每个段设置相应的权限, 并从入口点地址执行。 0026 进一步地,。

21、 还通过修改注册表以设置自启动和设置文件属性保护所述木马程序。 0027 本实施例通过在原先传输木马程序的传输通道上, 传输加载器和载密文件, 在有 用户访问并获取加载器和载密文件时, 运行加载器, 将载密文件中的木马程序解密至内存 中运行, 可绕过杀毒软件的检测, 披露了一种新的隐写木马植入途径。 0028 如图3-图4所示, 本实施例对应公开了一种隐写木马的检测方法, 用于对上述披露 的木马植入途径所植入的隐写木马进行检测, 包括如下步骤S101至S104: S101、 获取系统调用序列和操作文件序列, 并提取加载器的木马特征, 利用木马特征构 建木马特征序列; 需要说明的是, 通过文件操。

22、作函数比如ReadDirectoryChangesW函数获取文件操作序 列; 通过Hook KiFastCallEntry函数等获取系统调用序列。 其中利用文件操作序列可以获 取到用户操作的具体文件, 用来关联加载器和后续文件的格式, 识别是否是异常行为。 利用 系统调用序列可以获取程序调用的系统函数, 用于识别敏感的系统调用 (匹配加载器的功 能) 。 0029 具体地, 将MapViewOfFile , ProcessIAT , PeLdrApplyRelocations , PeLdrExecuteEP这几个函数编译成可执行文件, 得到各函数的二进制特征序列, 并将各函 数对应的二进制序。

23、列作为字符串进行匹配即可构建出木马特征序列。 0030 其中, MapViewOfFile用于获取文件映射到内存的方法, ProcessIAT函数用于处理 导入导出表, 加载所需的功能模块, PeLdrApplyRelocations函数用于重定位文件在内存中 的位置, PeLdrExecuteEP函数用于进入程序入口点。 由于上述几个函数是加载器的核心函 数, 通过提取这些函数的二进制特征序列, 即可识别出加载器。 0031 S102、 判断所述操作文件序列是否为可执行文件格式, 若是则执行步骤S103, 若否 则直接退出程序; S103、 根据所述木马特征序列和所述系统调用序列, 确定是否。

24、检测到所述加载器, 若是 则执行步骤S104, 若否则执行步骤S102; S104、 若检测到所述加载器, 则确定检测到疑似木马程序。 0032 需要说明的事, 操作文件序列的可执行文件格式包括exe、 dll等格式, 本方案在操 作文件序列中的操作文件格式为可执行格式后, 分别计算木马特征序列的相似度和系统调 用格式序列的相似度, 根据计算出的相似度确定是否检测到所述加载器, 若检测到加载器 在, 则确定当前正在操作的文件为疑似木马程序文件, 警告用户停止操作。 0033 进一步地, 上述步骤S103: 根据所述木马特征序列和所述系统调用序列, 确定是否 说明书 4/6 页 7 CN 110。

25、069936 A 7 检测到所述加载器, 具体包括如下步骤: 计算所述木马特征序列与预先存储的木马特征标准序列的相似度, 得到第一类相似 度; 具体地, 将木马特征序列以木马特征标准序列大小为标准进行分块, 利用simhash与海 明距离计算每块木马特征序列与木马特征标准序列的相似度值。 0034 计算所述系统调用序列与预先存储的系统调用标准序列的相似度, 得到第二类相 似度; 具体地, 将系统调用文件以系统调用标准文件大小进行分块, 利用simhash与海明距离 计算每块系统调用文件与系统调用标准文件的相似度值。 0035 将第一类相似度和第二类相似度分别与相似度阈值进行比较, 若两个比较结。

26、果中 任一比较结果为大于时, 则判定检测到所述加载器。 0036 具体地, 将多个第一类相似度与相似度阈值进行比较, 将多个第二类相似度与相 似度阈值行比较, 若多个第一类相似度值中存在大于设定相似度阈值的情况, 则确定文件 为加载器, 用于判断静态分析磁盘上的文件是否为加载器; 若多个第二类相似度值中存在 大于设定相似度阈值的情况, 则确定文件为加载器, 用于判断内存中分析文件是否为加载 器。 相似度阈值可取值为0.6, 其计算公式为: hamming(simhash(a), simhash(b) / len (a)。 0037 需要说明的是, 本实施例将木马特征序列与系统调用文件序列分别按。

27、照设定的基 准序列进行分块, 得到多个第一类相似度值和多个第二类相似度值, 在多个第一类相似度 和多个第二类相似度中部分大于设定的相似度阈值, 即可识别出加载器。 可弥补hash值比 较时需完全相同才可判定加载器的不足。 0038 进一步地, 在实际的木马检测过程中, 由于基于隐写的木马程序检测误报率比较 高, 检测到加载器, 并不能确定就是检测到了隐写木马, 而只能是判定出现了异常行为。 因 此, 本实施例在上述实施例中检测到加载器的基础上, 还包括如下步骤S105至S107: S105、 检测时间窗内的文件操作序列中文件名的后缀是否为载体图像的格式后缀, 该 载体图像用于嵌入所述木马程序;。

28、 若是则执行步骤S106, 若否则直接跳过, 识别下一个时间 窗内文件; S106、 将加载器和图像文件均被识别这一关联情况判定为异常的操作行为, 并检测所 述操作文件序列的操作文件是否为被隐写过木马程序的图像文件, 若是则执行步骤S107, 若否则执行步骤S105; S107、 确定检测到隐写木马程序。 0039 需要说明的是, 载体图像是指用于隐藏秘密消息的对象, 本实施例中载体图像格 式为jpeg、 bmp等图像文件格式, 在检测出时间窗内的文件格式为载体图像的文件格式时, 即可判定为异常的操作行为。 0040 具体地, 检测操作文件是否是被隐写过的图像文件的过程为: 进一步分析操作文 。

29、件, 统计文件的最低有效位, 利用卡方检测得到P值, 如果P值接近于1则表明图像函数含有 秘密信息, 反之接近于0则表明图像未经过隐写。 0041 需要说明的是, 在木马检测过程中, 由于基于隐写的误报率可能比较高, 单纯检测 加载器不能判定隐写木马, 只能判定异常行为, 本方案通过在加载器判定出现异常时, 检测 说明书 5/6 页 8 CN 110069936 A 8 操作文件是否为被隐写过的图像文件, 以确定是否检测到木马程序, 保证了导致木马检测 结果的准确性, 完善了杀毒软件对于隐写木马的检测。 0042 进一步地, 若所述加载器判定结果、 所述异常操作判定结果以及所述操作文件隐 写木。

30、马判定结果任两项结果为是时, 确定检测过程出现异常; 若三项结果均为是时, 则确定检测到所述木马程序。 0043 需要说明的是, 通过判定操作文件序列和/或系统调用序列为加载器、 判定出现异 常操作以及判定操作文件隐写有木马程序这三种情况中出现任意两种情况, 则确定检测出 现异常, 若三种情况均符合, 则确定检测到隐写木马程序。 本实施例从多个维度考虑加载器 的检测与识别, 具有较高的识别率, 较低的误报率。 0044 以上所述仅为本发明的较佳实施例, 并不用以限制本发明, 凡在本发明的精神和 原则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。 说明书 6/6 页 9 CN 110069936 A 9 图1 图2 说明书附图 1/3 页 10 CN 110069936 A 10 图3 说明书附图 2/3 页 11 CN 110069936 A 11 图4 说明书附图 3/3 页 12 CN 110069936 A 12 。

展开阅读全文
内容关键字: 木马 方法 检测
关于本文
本文标题:木马隐写方法和检测方法.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/11510677.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1