Rootkits和Bootkits:第14章
14.0 参考 https://www.youtube.com/watch?v=DwO7dn5iNJ0 14.1 概述 UEFI( Unified Extensible Firmware Interface):现代接口标准,定义了操作系统和固件之间的软件接口。 UEFI可以看作是一个小型的操作系统,有自己的网络栈。 14.2 BI……
C++ primer:第三章 字符串、向量和数组
3.1 命名空间using声明 using namespace::name 例如 using std::cin; using namespace std; 头文件中不应该包含using声明 3.2 标准库类型string ……
基于数据科学恶意代码分析 第五章 共享代码分析
通过揭示与新的恶意软件样本较为相似的之前分析过的老样本,从而揭示它们的共享代码,共享代码分析允许你复用以前的分析结果对新的恶意软件进行分析,这样就不用从头开始分析。了解此前看到的恶意软件来源信息,也可以帮助找出可能部署恶意软件的人。 共享代码分析,也称为相似性分析,通过估计它们共享的预编译源代码的百分比来比较两个恶意软件样本的过程。它不同于共享属性分析,共享……
基于数据科学恶意代码分析 第四章 利用恶意软件网络识别攻击活动
1. 节点和边 网络是连接对象(节点)的集合。这些节点之间的连接称为边。 当使用网络来分析恶意软件时,我们可以将每个单独的恶意软件文件定义为节点,并将感兴趣的关系(如共享代码或网络行为)定义为边。 相似的恶意软件文件共享边,因此当我们应用力导向网络( force-directed network)时,它们就会聚集在一-起。 或者,我们可以将恶意软件样本和属性……
基于数据科学恶意代码分析 第0章
官方网站:https://www.malwaredatascience.com/home 书籍代码和数据:https://www.malwaredatascience.com/code-and-data 书籍虚拟机:https://www.malwaredatascience.com/ubuntu-virtual-machine 数据科学应用于安全领域 例如……
C++ primer:第二章 变量和基本类型
2.1.3 自面值常量 字符串字面值类似实际上由常量字符构成的数组。字面值‘A’就是字符A,“A”则代表一个字符数组,该数组包含两个字符,一个是字母A,另一个是空字符,也就是字符串A. 单引号是字符,双引号是字符串。 2.2.1 变量定义 对象:指一块能存储数据并具有某种类型的内存空间 变量初始化和赋值不是同一个含义,变量初始化是创建变量时赋予其一个初始值,……
C++ primer:第一章 C++入门
这并不是一份教程,而是一份笔记,记录未掌握或不熟练知识点! 1.4.3 读取数量不定的输入数据 此循环条件实际上检测是std::cin 使用一个istream对象作为条件时,效果是检测流的状态。如果流是有效的,即流未遇到错误,那么检测成功。当遇到文件结束符,或遇到一个无效输入时,例如非整数,istream对象会变成无效。处于无效状态的istream对象会使条……
恶意代码分析实战:第十七章 反虚拟机技术
本章重点介绍反VMware技术 1 VMware痕迹 VMware虚拟环境在系统中遗留了很多痕迹,特别是在VMware Tools软件安装之后。恶意代码可以通过存在于操作系统的文件系统,注册表和进程列表的标记痕迹,探测VMware虚拟环境的存在。 VMware镜像的进程列表,且安装VMware Tools之后会有三个进程:VmwareService.exe(……
恶意代码分析实战:第十五章 对抗反汇编
4.4 滥用结构化异常处理 结构化异常处理(SEH)提供提供一种控制流的方法,该方法不能被反汇编器采用,但可以用来欺骗反汇编器。 SEH是一个函数列表,目的是处理线程中的异常。列表中的每个函数,要么处理异常,要么将异常传递给下一个函数。如果一个异常总是被传递到最后一个异常处理函数处,就会被认为是一个不能处理的异常。这种情况下,最后一个异常处理函数会负责弹出一……