病毒分析流程
静态分析
- 查壳
- 查看字符串
- 查看导入表
- 查看资源断
- 使用PEiD插件扫描加密和压缩算法
动态分析
- 使用火绒剑监控病毒行为,文件操作 网络操作 注册表操作 进程操作
- 使用regshot监控注册表
- OD动态跟踪
假设有1000个样本,怎么分析,识别黑白?
- 如果可以上传的话,我可以写一个工具,批量上传到查毒软件,然后分析其结果
- 不让上传的话,自己搭建沙箱环境,在写自动分析工具
常见的病毒类型有哪些
- 木马
- 后门
- 蠕虫
- 感染性病毒
- 勒索病毒
- APT木马
- RootKit
傀儡进程的实现原理
- 傀儡进程的创建原理就是修改某一进程的内存数据,向内存数据写入Shellcode代码,并修改该进程的执行流程,使其执行Shellcode代码。这样,进程还是原来的进程,但执行的操作却替换了。
BadRabbit执行流程
- 释放infub.dat通过rundll32.exe运行
- 提取权限 检测杀软
- 保存代码到堆空间更改执行流程 删除自身 重新执行
- 检测cscc.dat是否存在
- 根据平台释放7/8号资源cscc.dat
- 释放9号资源dispci.exe 添加计划任务运行
- 重启后连接驱动层
- 创建计划任务
- 加密MBR
- 关机
- 创建关机计划任务
- 创建线程
- 根据平台释放1/2号资源 tmp文件
- 执行tmp文件
- 创建线程 局域网弱口令传播
- 创建线程 加密文件
- Sleep关机等待
API Monitor什么功能
- 监视和控制应用程序和服务,能让你看到应用程序是如何工作的
- 能显示API的调用信息和调用层次结构,API的定义,能让你通过API调用设置断点控制目标应用程序,解码和显示2000种不同的结构体和联合体
- 能查看输入和输出缓冲区
手工查杀病毒一般步骤有哪些
- 使用ARK工具检查各种启动项有无可疑文件
- 使用ARK工具检查运行的进程有无可疑进程
- 检查敏感目录看是否有可疑文件 尤其是隐藏的系统文件
- 基本上以上三步可以找出目标 如果不行 需要抓包查看是否有可疑网络连接和流量
- 当发现之后 先将样本提取出来 备份 然后清理文件 进程 注册表等
DES密钥长度有多少位 多少个字节 多少个有效位
64位8个字节 每个7位会设置一个用于错误检查的位 所以有效位是56位
MD5和SHA的长度
MD5输出128bit
SHA1(常用):输出160bit,对于长度小于2^64位的消息,SHA1会产生一个160位消息摘要,在传输过程中,数据如果产生变化,就会产生不同的消息摘要!
对僵尸,蠕虫,木马有什么了解,说下理解,给你一个病毒你是怎么判断是这三种病毒
- 蠕虫——这种程序具有自我复制的功能,唯一的目的就是为了扩大传播范围。通过互联网或者存储介质扩散到另一台计算机。不会对计算机造成损害,自我复制的特性会耗用硬盘空间,从而减慢计算机的运行速度
- 病毒——他们也具有自我复制的能力,不过确实会破坏它们攻击的计算机上的文件,他们的主要弱点在于,只有得到宿主程序的支持,它们才能起作用
- 特洛伊木马——基本上来讲,特洛伊木马不是病毒,并非旨在破坏或删除系统上。他们的唯一任务就是开一道后门,以便恶意程序在你不知情 未经允许的情况下,偷偷进入你的系统,窃取你的数据
- 广告软件——广告软件用来显示程序中的广告。 他们一般依附在免费使用的软件程序上,因为广告软件是开发那些软件程序的人员唯一的收入来源。
- 间谍软件——这种程序也依附在其他免费软件上,跟踪你的浏览及其他个人信息,并将其发送给远程用户。它们还便于安装来自互联网的用户不需要的软件。不像广告软件,间谍软件作为独立程序来运行,悄然行事
- 僵尸程序——僵尸程序或机器人程序是自动化进程,旨在通过互联网来进行联系,根本不需要人的干预。它们可以用于正道,也可以用于歪路。不法分子可以构建一个恶意的僵尸程序,能够独自感染宿主。僵尸程序传播到宿主设备后与中央服务器建立起连接;在连接到该网络(名为僵尸网络)的被感染宿主看来,中央服务器充当控制中心。
- 勒索软件:——这种类型的恶意软件改变计算机的正常运行,因而让你无法正常使用。之后,这种程序会显示警示信息,索要钱财,如数交钱后你的设备才会恢复到正常的工作状态
常见的病毒行为或是特征有哪些
- 注册表增加启动项 开始菜单增加启动项
- 注册系统服务
- 修改释放的exe为隐藏文件 系统文件
- 加密文件 敲诈勒索
- 感染exe
- 释放文件
- 修改MBR扇区
- 伪装成系统进程
勒索病毒 是用的什么加密方式?
- 一般都是用AES+RSA混合加密,也叫数字信封
杀毒软件源码看过没有?
- 看过一小部分百度雪狼杀毒引擎的源码
- 推荐文章:https://www.freebuf.com/articles/system/53021.html
DLL劫持原理
- 如果进程尝试加载一个DLL的时候,没有指定DLL的绝对路径,那么Windows会尝试去指定目录下查找这个DLL,如果攻击者能够控制其中一个目录,并放一个恶意的DLL到这个目录下,那么这个恶意的DLL便会由进程加载,进程会执行DLL中的代码,这就是所谓的DLL劫持
Windows病毒常用自启动方式 注册表有哪些启动项?注册表启动项由谁来启动?计划任务由哪个进程启动?
- 注册表
- 快速启动目录
- 计划任务
- 系统服务
- 注册表启动进程——Winlogon.exe
简单谈一谈主动防御
- 主动防御技术是指对未知病毒的防范 在没有获得病毒样本之前阻止病毒的入侵
- 传统的杀毒流程:病毒产生——研究病毒源码——升级或者产生反病毒工具——抵御病毒
- 主动防御:通过HOOK系统建立进程的API 杀毒软件就在一个进程建立前对进程的代码进行扫描 如果发现敏感操作就提示 如果用户放行 就让程序继续运行 接下来监视进程调用API的情况 如果发现一些敏感的API就发出警告 比如以读写的方式打开一个EXE文件 可能进程的线程想感染文件 再比如CreateRemoteThread
yara规则的优点与缺点?
- 如果有足够的亚规则 可以匹配很多东西 可以匹配病毒 漏洞 PE文件等等 只要是二进制或者十六进制的都行
- 支持的细节不到位而且很麻烦 假设说我有三个病毒 那么我就不能用一条亚规则匹配三个病毒 而且通过亚规则并不能够知道病毒的细节 只能够知道这是一个病毒
反病毒引擎扫描的工作方式
- 主要依靠一个已知恶意代码可识别片段的特征数据库(病毒文件特征库),以及基于行为与模式匹配的分析(启发式检测),来识别可疑文件