记一次恶意程序的快速分析
新的学习札记来也!一个阴差阳错的机会心血来潮,开始接触恶意程序分析,在之后的学习分享里也会穿插这方面的内容啦,话不多说,近日的学习总结如下(因为仅在HIEW下快速分析的技巧所以以下的一些文件是含有鲜明特点的)。
脚本类恶意程序的快速分析混淆、代码不清晰不规整以及乱码看不懂隐藏执行字符分隔
在这里它将插入的url的http、com、exe、download用分隔正常的程序是不会将这些字符分开写的可疑!重定向
这里我们可以看到,当要访问if内的url时,会对我们的访问进行return重定向,从而阻止用户的正常访问。
文档类恶意程序的快速分析windowstateminimize最小化窗口运行width与heigth皆设置为0类似于隐藏执行在iframe类程序中采用visibility:hidden隐藏式访问url此时我们还需要分析一下这个网址是否是恶意的同样对其进行拉黑加密跳板、在pdf文件中含有网址
以上皆是在hiew中进行静态分析,当从代码分析中看不出什么问题的时候可疑试着丢进虚拟机触发或者复原试试看。
在这期间碰到一个pdf的在代码分析中并无可疑之处(刚开始看一堆乱码便认为是恶意的了误打误撞也确实对了但实际上有时pdf中的乱码也是它本身编译时自己产生的),当我将后缀名改为。pdf时会出现一个表格,鼠标移动到表格上就会出现网址,那么出于好奇的人就会点进去了这便是利用了一些安全意识薄弱的人的特点从而获得文档。
PE类程序
由程序开头为MZ和PE可判断得,这些方法仅对于无壳PE类文件,否则容易产生误报DLL的导出表中可查看导出函数,若多个导出函数的地址都指向同一地址了话及多个函数只为实现同一功能,那么这个程序是非常可疑的。此时可以进入函数内部查看代码进行更深层次判断,若在函数内没有执行什么功能性的操作又或是伪装成了一个大公司编写的程序代码,这里就可以把它归类为DLL劫持或白加黑。在导出函数中的函数名称奇怪,他可能是自动化生成的。查看导出函数代码,将字符逐个放入内存从而组成完整的字符串。函数内部代码出现大量加密内容。用call调用参数去遍历某个程序,这里一般会是一些安全软件,接而进行关闭等恶意操作。
F3进入后看到mz开头不妨回车两下看看
F8发现有导出表f9查看后发现出现了某杀软的名称压栈作为call所调用的参数(开始可疑)
跳转按数字1瞅瞅这里发现这个KSafeTray。exe、QQGAME、tencent字符串存储在一起(有些可疑)
这里我们看到call后面有个数字2跳转不妨进入查看
经过对call主要操作的分析可以发现这里呢是对进程的遍历(小编在这里有些迷糊仍需恶补呐!!)也就是在查找当前进程中是否含有上述的参数。
exe类
先混淆、再利用andnotxor等运算进行解密也是可疑的。
当毫无头绪时或者说没有明显的暴露点以及导出表可分析时可疑采用虚拟机运行的方式判断
important!!并非所有乱码都是恶意混淆PDF文件或是WORD文档在编译时系统会自动生成乱码我们更应该去关注的是人为编写的部分。只有对PE文件才需要分析他的汇编代码脚本类以及文档类的文件仅需要表层的字符分析。大量的00可能会是为了区块号对齐或者文件格式,不可一概而论。在分析时不仅可将样本与我们见识中的可疑点进行匹配从而快速分析还可以从最简单的方式出发如文件类型、文件大小以及文件结构等进行判断。
小彩蛋:如果幸福是一条尾巴,那么每当我追逐自己的尾巴时,它总是一躲再躲,而当我着手做自己的事情时,它总是形影不离地伴随着我。
【完】