没有合适的资源?快使用搜索试试~ 我知道了~
软件影响13(2022)100365原始软件出版物PE Parser:一个用于可移植可执行文件处理的丹尼尔·吉贝尔爱尔兰都柏林大学学院A R T I C L E I N F O保留字:恶意软件分类特征工程灰度表示结构熵PE可执行文件A B标准PE Parser是一个Python包,用于解析和处理可执行文件的二进制内容及其汇编语言源代码的十六进制表示。PE解析器旨在提供一个基于类的用户友好界面,用于提取通常用于恶意软件检测和分类任务的众所周知的功能,例如字节和操作码N-Grams,API函数调用,寄存器的使用频率,可移植可执行文件部分的特征等。此外,PE Parser还有各种命令行工具,可以将可执行文件可视化为灰度图像或熵值流代码元数据当前代码版本v1.0.0用于此代码版本的代码/存储库的永久链接https://github.com/SoftwareImpacts/SIMPAC-2022-131Reproducible Capsule的永久链接https://codeocean.com/capsule/9987564/tree/v1法律代码许可证MIT许可证使用git的代码版本控制系统使用Python、NLTK的软件代码语言、工具和服务编译要求,操作环境&依赖Python>= 3. 六点九如果可用,链接到开发人员文档/手册https://pe-parser.readthedocs.io/en/latest/问题支持电子邮件daniel. gmail.com1. 介绍特征工程是任何机器学习系统管道的关键组成部分。从广义上讲,特征工程是指将原始数据转换为有意义的特征的过程,这些特征用于提供所需的学习算法。对于恶意软件检测和分类的任务,通常从可移植可执行(PE)文件的二进制内容及其相应的汇编语言源代码中提取特征。常见的特征是字节和操作码N-gram特征、熵统计、寄存器的使用频率、应用程序编程接口(API)函数和系统调用的调用与否等。然后,使用生成的要素训练机器学习模型[1PE Parser是一个Python包,用于预处理,特征提取和可移植可执行文件的可视化,既作为灰度图像[5,6]又作为熵值流[7,8]。现有的Python库,如EMBER [9]和PE Miner [10],从可移植可执行文件头中提取功能和特征,即MS- DOS头,COFF文件头和可选头。此外,本发明还PE解析器通过提供各种程序从PE文件的汇编语言源代码中提取众所周知的功能来补充上述库。PE解析器旨在提供基于类的用户友好界面,以便于从可移植可执行文件中提取众所周知的功能[1,2],这些文件通常用于构建由机器学习驱动的恶意软件检测系统。此外,PE解析器提供了各种命令行工具,以将可执行文件可视化为灰度图像[5,6,11]或流 熵值(结构熵)[7,8]。2. 关键特征PE解析器可用于从以下两种格式之一的• 其二进制内容的十六进制表示。参见 图1(a). 此表示法将机器码表示为十六进制值序列。第一个值表示起始地址本文中的代码(和数据)已由Code Ocean认证为可复制:(https://codeocean.com/)。更多关于生殖器的信息徽章倡议可在https://www.elsevier.com/physical-sciences-and-engineering/computer-science/journals上查阅。电子邮件地址:daniel. ucd.ie。https://doi.org/10.1016/j.simpa.2022.100365接收日期:2022年6月30日;接收日期:2022年7月8日;接受日期:2022年7月11日2665-9638/©2022作者。由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表软件影响杂志 首页:www.journals.elsevier.com/software-impactsD. Gibert软件影响13(2022)1003652Fig. 1. PE可执行文件的十六进制和汇编视图[13]。每个十六进制值(字节)都携带可移植可执行文件的有意义的信息,如指令代码和数据。有各种工具来获取二进制文件的十六进制视图,如PE Explo rer,1HxD,2等。• 汇编语言源代码.参见图1(b).汇编语言源代码包含可执行文件的符号机器代码以及元数据信息,如基本函数调用、内存分配和变量信息。有各种工具可以反汇编可移植的可执行文件,如IDAPro,3Radare2,4Ghidra,5等。这些文件格式是在静态分析过程中常用的,用于从可执行文件中提取特性,而无需实际运行程序。有关这两种文件格式的更多信息,我们建议读者参考Microsoft Malware Classification Challenge数据集[12],这是一个用于恶意软件分类研究的高质量公共标记基准。该数据集已成为评估恶意软件分类机器学习方法的标准基准,目前,它在Kaggle平台上公开提供6目前,PE Parser包含提取以下功能的代码• 基于十六进制的功能。从可执行文件的二进制内容的十六进制表示中– 字节N-gram特征。– 基于熵的特征。– Haralick功能的从灰度图像表示的十六进制视图的可执行文件。– 本地二进制模式的特点,从灰度图像表示的十六进制视图的可执行文件。• 基于部件的特征。– 操作码N-gram特征。– 注册功能。– 数据定义指令特征。– 截面特性特征。– 符号频率特征。1 http://www.heaventools.com/flexhex-hex-editor.htm2https://mh-nexus.de/en/hxd/3https://www.hex-rays.com/products/ida/第https://rada.re/n/https://ghidra-sre.org/6 https://www.kaggle.com/c/malware-classification– 应用程序编程接口(API)函数调用功能。– 从灰度表示中提取像素灰度特征的汇编代码.– 其他特征(关键字)。在Ahmadi等人的著作[1],Zhang et al.[2]和Gibert et al.[4]的文件。3. 可视化工具PE Parser提供了各种命令行工具来可视化可执行文件,如下所示:灰度图像表示。Nataraj等人[5]提出使用图像处理技术对恶意软件进行可视化和分类(PE格式)。参见图二.在他们的工作中,二进制可执行文件被可视化为灰度图像,其中每个字节都被重新解释为图像中的一个像素。然后,重新组织生成的数组作为一个2-D数组,可以可视化为一个图像,其值范围从0到255。这种灰度图像表示可以用于对恶意软件进行分类,因为属于同一家族的恶意软件的图像在它们之间是相似的,而不同于属于其他家族的恶意软件,正如Gibert等人的工作所证明的那样。其他[14]。结构熵表示。可移植的可执行文件可以被可视化为熵值流,或结构熵[7,8]。要计算可执行文件的结构熵表示,您需要将可执行文件拆分为固定大小(即1024字节)的块,并计算熵量for each每chunk块.参见 图3.第三章。4. 影响PE解析器是为科学家和研究人员谁愿意进行研究的恶意软件检测。PE Parser被设计用于计算机安全研究人员和学生在恶意软件分析,机器学习和计算机安全课程中使用。目前,它已被用于许多科学研究[3,6,8,13,15此外,作者知道许多安全从业人员已经使用PE Parser实现的一个或多个功能来构建他们的恶意软件检测系统[1,2]。在D. Gibert软件影响13(2022)1003653图二、 属于Kelihos_ver1、Obfuscator.ACY和Gatak系列的 样 本 的 灰 度 图 像 表 示 [6]。图三.属于Ramnit和Gatak家族的样品的结构熵表示[8]。此外,将恶意软件的二进制内容表示此外,PE解析器可用于通过使用十六进制十进制字节值和从十六进制字节值中提取的操作码作为输入来训练深度学习模型[3,15,37-恶意软件的二进制内容及其汇编语言源代码的表示。5. 今后工作在未来,我们打算用更多类型的特征和可视化工具(如熵图[36]和D. Gibert软件影响13(2022)1003654函数调用图[42]。一方面,熵图可以使用两个步骤过程来创建。首先,将二进制文件转换为位图图像。其次,计算位图图像的每行的熵值。另一方面,函数调用图是表示计算机程序中的函数/子例程之间的竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作致谢该项目已获得欧盟Hori- zon 2020研究和创新计划的资助,该计划是847402引用[1]Mansour Ahmadi, Dmitry Ulyanov , Stanislav Semenov , Mikhail Trofimov ,GiorgioGiacinto , Novel feature extraction , selection and fusion for effectivemalwarefamily classification, in: Proceedings of the Sixth ACM Conference onDataand Application Security and Privacy,in:CODASPY,vol. 16,AssociationforComputing Machinery,New York,NY,USA,2016,pp. 183-194.[2]Y. 张 , 智 - 地Huang , X.妈 Z 。Yang , J. Jiang , Using multi-featuresandensemble learning method for imbalanced malware classification , in :2016 IEEETrustcom/BigDataSE/ISPA,2016,pp. 965-973[3]Daniel Gibert,Carles Mateu,Jordi Planes,HYDRONIC:用于恶意软件分类的多模式深度学习框架,Comput。安全性95(2020)101873。[4]Daniel Gibert,Jordi Planes,Carles Mateu,Quan Le,融合特征工程和深度学习:恶意软件分类的案例研究,Expert Syst. Appl. (2022年)。[5]L. Nataraj , S. 卡 尔 蒂 凯 扬 湾 Jacob , B.S. Manjunath , Malware images :Visualizationandautomaticclassification , in : Proceedingsofthe8thInternationalSymposium on Visualization for Cyber Security , in : VizSec ,vol.11,ACM,NewYork,NY,USA,2011,pp. 4:1-4:7。[6]Daniel Gibert,Carles Mateu,Jordi Planes,Ramon Vicens,使用卷积神经网络对表示为图像的恶意软件进行分类,J. Comput。Virol.破解. Tech. (2018年)。[7]放 大 图 片 作 者 : Richard M. Low , Mark Stamp , Structural entropyandmetamorphic malware,J. Comput. Virol. 黑客技术9(4)(2013)179[8]Daniel Gibert,Carles Mateu,Jordi Planes,Ramon Vicens,使用卷积神经网络上的结构熵对恶意软件进行分类,在:第三十二届AAAI人工智能会议论文集(AAAI-18),第30届人工智能创新应用(IAAI-18)和第八届AAAI人工智能教育进展研讨会,EAAI-18,美国路易斯安那州新奥尔良,2018年2月2日至7日,2018年,第10页。七七五九七七六四[9]海仑湾Anderson,Phil Roth,EMBER:用于训练静态PE恶意软件机器学习模型的开放数据集,2018,CoRR,abs/1804.04637。[10] M. Zubair Shafiq,S. Momina Tabish,Fauzan Mirza,Muddassar Farooq,PE-Miner : Mining structural information to detect malicious executables inrealtime,in:Engin Kirda,Somesh Jha,Davide Balzarotti(Eds.),RecentAdvances in IntrusionDetection , Springer Berlin Heidelberg , Berlin ,Heidelberg,2009,pp. 121-141[11] B.N.纳拉亚南岛Djaneye-Boundjou,T.M. Kebede,用于恶意软件分类的机器学习和模式识别算法的性能分析,在:2016年IEEE国家航空航天和电子会议,NAECON和俄亥俄州创新峰会(OIS),2016年,pp. 338-342.[12] Royi Ronen , Marian Radu , Corina Feuerstein , Elad Yom-Tov , MansourAhmadi,Microsoftmalwareclassificationchallenge,2018,CoRRabs/1802.10135.[13] D.吉贝尔角Mateu,J. Planes,Orthrus:一种用于恶意软件分类的双峰学习架构,在:2020年国际神经网络联合会议,IJCNN,2020年,pp. 1-8号。[14] 刘新波,林亚平,李贺,张继良,一种基于ML可视化技术的恶意软件检测方法,Comput.安全性89(2020)101682.[15] D. Gibert,J. Bejar,C. Mateu,J.Planes,D. 索利斯河 Vicens,用于恶意软件汇编代码分类的卷积神经网络,在:加泰罗尼亚人工智能协会国际会议,2017年,第100页。2 2 1 -226[16] Daniel Gibert,Carles Mateu,Jordi Planes,机器学习在恶意软件检测和分类中的兴起:研究发展,趋势和挑战,J. Netw。Comput.申请号153(2020)102526。[17] Daniel Gibert,Carles Mateu,Jordi Planes,Joao Marques-Silva,审计静态机器学习反恶意软件工具以对抗变形攻击,Comput。安全性102(2021)102159.[18] 戴玉生,李慧,钱业奎,卢锡东,一种基于内存转储灰度图像的恶意软件分类方法,Digit. 调查27(2018)30[19] Mazhar Javed Awan , Osama Ahmed Masood , Mazin Abed Mohammed ,AwaisYasin , Azlan Mohd Zain , Robertas Damaševičius , Karrar HameedAbdulka-reem,基于图像的恶意软件分类使用VGG 19网络和空间卷积注意力,电子10(19)(2021)。[20] Aziz Makandar,Anita Patrot,使用图像处理技术的恶意软件类识别,在:2017年数据管理,分析和创新国际会议,ICDMAI,2017年,第10页。76比80[21] Ke He,Dong-Seong Kim,使用深度学习技术进行恶意软件图像的恶意软件检测,在:2019年第18届IEEE计算和通信信任,安全和隐私国际会议/第13届IEEE大数据科学与工程国际会议,TrustCom/BigDataSE,2019年,pp. 95比102[22] Danish Vasan,Mamoun Alazab,Sobia Wassan,Hamad Naeem,Babak Safaei,Qin Zheng,IMCFN:使用微调卷积神经网络架构进行基于图像的恶意软件分类,Comput。网络171(2020)107138.[23] Yifei Jian , Hongbo Kuang, Chenglong Ren, Zicheng Ma, Haizhou Wang, Anovelframeworkforimage-basedmalwaredetectionwithadeepneuralnetwork,Comput.安全性109(2021)102400。[24] Wai Weng Lo , Xu Yang , Yapeng Wang , An xception convolutional neuralnetworkfor malware classification with transfer learning,in:2019年第10届IFIP国际新技术、移动性和安全会议,NTMS,2019年,pp. 1比5。[25] Danish Vasan,Mamoun Alazab,Sobia Wassan,Babak Safaei,Qin Zheng,使用CNN架构集成的基于图像的恶意软件分类(IMCEC),Comput。安全性92(2020)101748。[26] Anson Pinhero,Anupama M L,Vinod P,C.A. Visaggio,Aneesh N,AbhijithS,AnanthaKrishnan S,通过可视化和深度神经网络进行恶意软件检测,Comput.安全性105(2021)102247.[27] Sidalakshmi Venkatalan,Mamoun Alazab,R. Vinayakumar,基于图像的混合深度学习分析,用于有效的恶意软件检测,J. Inf. Secur. Appl. 47(2019)377-389.[28] Gerardo Canfora , Francesco Mercaldo , Corrado Aaron Visaggio , An HMMandStructural Entropy Based Detector for Android Malware : An EmpiricalStudy,Comput.安全性61(2016)1-18。[29] Alfredo Cuzzocrea,Fabio Martinelli,Francesco Mercaldo,一种新的基于结构熵的分类技术,用于支持Android勒索软件检测和分析,在:2018年IEEE模糊系统国际会议,FUZZ-IEEE,2018年,pp. 1-7号。[30] Xiao Guoqing,Jingning Li,Yuedan Chen,Kenli Li,MalFCS:基于深度卷积神经网络的自动特征提取的有效恶意软件分类框架,J. Parallel Distrib. Comput. 141(2020)49[31] Hui Guo,Shuguang Huang,Cheng Huang,Zulie Pan,Min张先生,风扇Shi , File entropy signal analysis combined with wavelet decomposition formalwareclassification,IEEE Access 8(2020)158961-158971.[32] 白俊扬,金瑞泽,赵恩善,基于结构熵的字节粒度特征的恶意软件分类,计算机。 内特尔 不适用(2022年)。[33] Michael Wojnowicz , Glenn Chisholm , Matt Wolff , Xuan Zhao , Waveletdecompositionof software entropy reveals symptoms of malicious code,J. Innov.数字。生态系统3(2)(2016)130[34] Munkhbayar Bar-Erdene , Hyundo Park , Hongzhe Li, Heejo Lee, Mahn-SooChoi,用于恶意软件检测的未知打包算法分类的熵分析,Int.J. Inf. Secur. 16(2017)。[35] Esmaeel Radkani , Sattar Hashemi , Alireza Keshavarz-Haddad , MaryamAmirHaeri,用于分析和检测变形恶意软件的基于熵的距离度量,应用Intell。48(2018)。[36] Kyoung Soo Han,Jae Hyun Lim,Boojong Kang,Eul Gyu Im,使用可视化图像和熵图的恶意软件分析,Int. J. INF. 安全性14(2015)。[37] Edward Raff , Jon Barker , Jared Sylvester , Robert Brandon , BryanCatanzaro,Charles K.尼古拉斯,通过吃掉整个EXE进行恶意软件检测,在:第三十二届AAAI人工智能会议的工作室,新奥尔良,路易斯安那州,美国,2018年2月2日至7日,在:AAAI技术报告,第一卷。WS-18,AAAI Press,2018,pp.268-276。[38] MarekKrcál , OndrejSvec , MartinBálek , OtakarJasek , Deepconvolutionalmalware classifiers can learn from raw executables and labelsonly,in:第六届国际学习表示会议,ICLR 2018,温哥华,不列颠哥伦比亚省,加拿大,2018年4月30日至5月3日,研讨会跟踪程序,OpenReview.net,2018年。D. Gibert软件影响13(2022)1003655[39] Edward Raff , William Fleshman , Richard Zak , Hyrum S. Anderson , BobbyFilar , Mark McLean , Classifying sequences of extreme length with constantmemoryappliedto malwaredetection , in : 35thAAAIConferenceonArtificialIntelligence,AAAI 2021,33th Conference on Innovative ApplicationsofArtificialIntelligence,IAAI2021,theEleventhSymposiumonEducationalAdvances in Artificial Intelligence , EAAI 2021 , Virtual Event ,February 2-9,2021,AAAI Press,2021,pp. 9386-9394。[40] 李阳,刘俊林,TuningMalconv:不只是原始字节的恶意软件检测,IEEE Access8(2020)140915-140922。[41] Quan Le,Oisín Bojeell,Brian Mac Namee,Mark Scanlon,《浅端的深度学习:非领域专家的恶意软件分类》,Digit。调查26(2018)S118-S126。[42] B.G.李文,程序调用图的构造,北京:计算机科学出版社,2000。 Eng. SE-5(3)(1979)216-226.
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功