接着上篇Asm2Vec神经网络模型流程继续,接下来探讨具体过程和细节. 一.为汇编函数建模  二.训练,评估   先来看第一部分为汇编函数建模,这个过程是将存储库中的每一个汇编函数建模为多个序列.由于控制流图的原始线性布局覆盖了一些无效的执行路径,不能直接使用它作为训练序列.相反,可以将控制流程图建模为边缘覆盖序列和随机游动,除此之外,还要考虑函数内联等编译器优化. 1.1选择性被扩张. 函数内联这种技术,用被调用函数的主体替换调用指令.扩展了原来的汇编函数,并通过删除调用开销提高了其性能.它显…
接着上一篇,现在明确问题:在汇编克隆搜索文献中,有四种类型的克隆[15][16][17]:Type1.literally identical(字面相同):Type2.syntactically equivalent(语法等价):Type3.slightly modified(稍作修改):Type4.semantically similar(语义相似).文章主要关注类型4克隆,虽然汇编代码有可能在语法上不同,但是在源代码层次函数的功能逻辑是相同的.例如,有混淆和没有混淆的相同代码,或者不同版本的之…
用于理解恶意软件的内部工作原理,并发现系统中的漏洞,逆向工程是一种耗费人工的却很重要的技术.汇编克隆搜索引擎是通过识别那些重复的或者已知的部件来帮助逆向工程师的工作,要想设计健壮的克隆搜索引擎是一项挑战,因为存在各种编译器的优化和代码混熊技术. 一个实用的克隆搜索引擎依赖于汇编代码的健壮向量表示,现有的方法依赖于人工特征提取过程从现有的汇编函数中提取特征向量,没有考虑到特征之间的关系,没有确定出能够静态区分汇编函数的这种独特模式.为了解决这个问题,基于汇编代码的汇编函数的词法语义关系和向量表示模…
1 摘要  随着软件产业的发展,代码克隆现象越来越常见,随之带来的安全漏洞.可维护性.产权等问题也引起人们重视.代码克隆按照复制程度分为4类:完全复制.修改名称.更换顺序和自实现.现有的代码克隆检测工具只能在单机情况下对2个项目进行针对性克隆检测,并且已有的源代码搜索引擎也只能检测出代码完全复制的情况.针对这2种情况进行研究后,提出一种分布式代码克隆检测算法,实现一个项目代码从多个开源项目代码中匹配检测,得到除了自实现类型的其他3类克隆结果,并利用分布式系统对开源项目代码建立索引和代码克隆检测,…
Malware detection 目录 可执行文件简介 检测方法概述 资源及参考文献 可执行文件简介 ELF(Executable Linkable Format) linux下的可执行文件格式,按照ELF格式编写的文件包括:.so..a等 PE(Portable Executable) windows下的可执行文件格式,按照PE格式编写的文件包括: .dll..lib..exe等 参考文献[3]中对ELF的各个字段作了详细介绍 Linux和Windows可执行文件分类: ELF文件类型 说明…
转载自  斩秋的专栏  http://blog.csdn.net/quhongwei_zhanqiu/article/details/41577159 我们运行的Java代码,一般都是编译之后的字节码.Dubbo为了实现基于spi思想的扩展特性,特别是能够灵活添加额外功能, 对于扩展或者说是策略的选择这个叫做控制类也好设配类也好的类要能够动态生成.当然对应已知需求如Protocol, ProxyFactory 他们的策略选择的设配类代码dubbo直接提供也无妨,但是dubbo作为一个高扩展性的框…
1.二叉搜索树:去一个陌生的城市问路到目的地: for each node, all elements in its left subtree are less-or-equal to the node (<=), and all the elements in its right subtree are greater than the node (>). 给予一个已经排序好的整数数组, 生成一个相对合理的二叉搜索树.(?相对合理的?) 给予一个二叉树的根节点,验证该树是否是二叉树搜索树,(…
In computer science, a heap is a specialized tree-based data structure that satisfies the heap property: If A is a parentnode of B then the key of node A is ordered with respect to the key of node B with the same ordering applying across the heap. Ei…
http://rogerioferis.com/VisualRecognitionAndSearch2014/Resources.html Source Code Non-exhaustive list of state-of-the-art implementations related to visual recognition and search. There is no warranty for the source code links below – use them at you…
https://www.softwaretestinghelp.com/tools/top-40-static-code-analysis-tools/ In this article, I have summarised some of the top static code analysis tools. Can we ever imagine sitting back and manually reading each line of codes to find flaws? To eas…