病毒分析流程
    静态分析

    • 查壳
    • 查看字符串
    • 查看导入表
    • 查看资源断
    • 使用PEiD插件扫描加密和压缩算法

    动态分析

    • 使用火绒剑监控病毒行为,文件操作 网络操作 注册表操作 进程操作
    • 使用regshot监控注册表
    • OD动态跟踪

    假设有1000个样本,怎么分析,识别黑白?

    • 如果可以上传的话,我可以写一个工具,批量上传到查毒软件,然后分析其结果
    • 不让上传的话,自己搭建沙箱环境,在写自动分析工具

    常见的病毒类型有哪些

    • 木马
    • 后门
    • 蠕虫
    • 感染性病毒
    • 勒索病毒
    • APT木马
    • RootKit

    傀儡进程的实现原理

    • 傀儡进程的创建原理就是修改某一进程的内存数据,向内存数据写入Shellcode代码,并修改该进程的执行流程,使其执行Shellcode代码。这样,进程还是原来的进程,但执行的操作却替换了。

    BadRabbit执行流程

    1. 释放infub.dat通过rundll32.exe运行
    2. 提取权限 检测杀软
    3. 保存代码到堆空间更改执行流程 删除自身 重新执行
    4. 检测cscc.dat是否存在
    5. 根据平台释放7/8号资源cscc.dat
    6. 释放9号资源dispci.exe 添加计划任务运行
      1. 重启后连接驱动层
      2. 创建计划任务
      3. 加密MBR
      4. 关机
    7. 创建关机计划任务
    8. 创建线程
    9. 根据平台释放1/2号资源 tmp文件
    10. 执行tmp文件
    11. 创建线程 局域网弱口令传播
    12. 创建线程 加密文件
    13. Sleep关机等待

    API Monitor什么功能

    • 监视和控制应用程序和服务,能让你看到应用程序是如何工作的
    • 能显示API的调用信息和调用层次结构,API的定义,能让你通过API调用设置断点控制目标应用程序,解码和显示2000种不同的结构体和联合体
    • 能查看输入和输出缓冲区

    手工查杀病毒一般步骤有哪些

    1. 使用ARK工具检查各种启动项有无可疑文件
    2. 使用ARK工具检查运行的进程有无可疑进程
    3. 检查敏感目录看是否有可疑文件 尤其是隐藏的系统文件
    4. 基本上以上三步可以找出目标 如果不行 需要抓包查看是否有可疑网络连接和流量
    5. 当发现之后 先将样本提取出来 备份 然后清理文件 进程 注册表等

    DES密钥长度有多少位 多少个字节 多少个有效位
    64位8个字节 每个7位会设置一个用于错误检查的位 所以有效位是56位

    MD5和SHA的长度
    MD5输出128bit

    SHA1(常用):输出160bit,对于长度小于2^64位的消息,SHA1会产生一个160位消息摘要,在传输过程中,数据如果产生变化,就会产生不同的消息摘要!

    对僵尸,蠕虫,木马有什么了解,说下理解,给你一个病毒你是怎么判断是这三种病毒

    • 蠕虫——这种程序具有自我复制的功能,唯一的目的就是为了扩大传播范围。通过互联网或者存储介质扩散到另一台计算机。不会对计算机造成损害,自我复制的特性会耗用硬盘空间,从而减慢计算机的运行速度
    • 病毒——他们也具有自我复制的能力,不过确实会破坏它们攻击的计算机上的文件,他们的主要弱点在于,只有得到宿主程序的支持,它们才能起作用
    • 特洛伊木马——基本上来讲,特洛伊木马不是病毒,并非旨在破坏或删除系统上。他们的唯一任务就是开一道后门,以便恶意程序在你不知情 未经允许的情况下,偷偷进入你的系统,窃取你的数据
    • 广告软件——广告软件用来显示程序中的广告。 他们一般依附在免费使用的软件程序上,因为广告软件是开发那些软件程序的人员唯一的收入来源。
    • 间谍软件——这种程序也依附在其他免费软件上,跟踪你的浏览及其他个人信息,并将其发送给远程用户。它们还便于安装来自互联网的用户不需要的软件。不像广告软件,间谍软件作为独立程序来运行,悄然行事
    • 僵尸程序——僵尸程序或机器人程序是自动化进程,旨在通过互联网来进行联系,根本不需要人的干预。它们可以用于正道,也可以用于歪路。不法分子可以构建一个恶意的僵尸程序,能够独自感染宿主。僵尸程序传播到宿主设备后与中央服务器建立起连接;在连接到该网络(名为僵尸网络)的被感染宿主看来,中央服务器充当控制中心。
    • 勒索软件:——这种类型的恶意软件改变计算机的正常运行,因而让你无法正常使用。之后,这种程序会显示警示信息,索要钱财,如数交钱后你的设备才会恢复到正常的工作状态

    常见的病毒行为或是特征有哪些

    1. 注册表增加启动项 开始菜单增加启动项
    2. 注册系统服务
    3. 修改释放的exe为隐藏文件 系统文件
    4. 加密文件 敲诈勒索
    5. 感染exe
    6. 释放文件
    7. 修改MBR扇区
    8. 伪装成系统进程

    勒索病毒 是用的什么加密方式?

    • 一般都是用AES+RSA混合加密,也叫数字信封

    杀毒软件源码看过没有?

    DLL劫持原理

    • 如果进程尝试加载一个DLL的时候,没有指定DLL的绝对路径,那么Windows会尝试去指定目录下查找这个DLL,如果攻击者能够控制其中一个目录,并放一个恶意的DLL到这个目录下,那么这个恶意的DLL便会由进程加载,进程会执行DLL中的代码,这就是所谓的DLL劫持

    Windows病毒常用自启动方式 注册表有哪些启动项?注册表启动项由谁来启动?计划任务由哪个进程启动?

      1. 注册表
      1. 快速启动目录
      1. 计划任务
      1. 系统服务
    • 注册表启动进程——Winlogon.exe

    简单谈一谈主动防御

    • 主动防御技术是指对未知病毒的防范 在没有获得病毒样本之前阻止病毒的入侵
    • 传统的杀毒流程:病毒产生——研究病毒源码——升级或者产生反病毒工具——抵御病毒
    • 主动防御:通过HOOK系统建立进程的API 杀毒软件就在一个进程建立前对进程的代码进行扫描 如果发现敏感操作就提示 如果用户放行 就让程序继续运行 接下来监视进程调用API的情况 如果发现一些敏感的API就发出警告 比如以读写的方式打开一个EXE文件 可能进程的线程想感染文件 再比如CreateRemoteThread

    yara规则的优点与缺点?

    • 如果有足够的亚规则 可以匹配很多东西 可以匹配病毒 漏洞 PE文件等等 只要是二进制或者十六进制的都行
    • 支持的细节不到位而且很麻烦 假设说我有三个病毒 那么我就不能用一条亚规则匹配三个病毒 而且通过亚规则并不能够知道病毒的细节 只能够知道这是一个病毒

    反病毒引擎扫描的工作方式

    • 主要依靠一个已知恶意代码可识别片段的特征数据库(病毒文件特征库),以及基于行为与模式匹配的分析(启发式检测),来识别可疑文件