1. 1. 恶意代码映射为基因图谱
    1. 检测方法
      1. 1. 恶意代码,转0/1码,映射为灰度图像,并提取灰度图像特征
      2. 2. 利用恶意代码灰度图特征进行聚类,并将聚类结果进行恶意代码家族标注
      3. 3. 构建CNN网络,设置网络结构参数和训练参数
      4. 4. 利用恶意代码家族灰度图像训练网络,构建检测模型
      5. 5. 使用模型检测恶意代码及其变种
  2. 2. 流量会话映射成基因图谱
    1. 检测方法
      1. 1. 将聚类后的恶意代码家族的海量样本送入沙箱进行网络会话,基因特征提取,即将会话头部1k个字节(预处理后)映射为图像
        1. HTTP和DNS协议会话除外
      2. 2. 建立检测模型
      3. 3. 使用第一步的训练数据训练模型
      4. 4. 在现网中获取实时网络会话基因特征,使用模型检测恶意外码、未知协议
  3. 3. DGA域名深度学习检测Fast-Flux僵尸主机
    1. Fast-Flux
      1. DNS RR上设定非常短的TTL,在IP集合中频繁替换,这类IP是受控主机
    2. DGA
      1. 域名生成算法,malware代码里不写入域名字符串,使用私有的随机字符串生成算法
    3. 检测方法
      1. 结合静态、动态特征的LSTM模型,捕捉防护目标网络内的DNS查询
    4. 案例
      1. 检测僵尸主机
  4. 4. 频繁模式挖掘算法构建恶意行为模式库
    1. 检测方法
      1. 1. 将各家族恶意代码送入沙箱,提取主机行为和网络行为特征
      2. 2. 利用频繁模式挖掘算法输出频繁项
      3. 3. 安全专家对频繁项集人工定义,剪出合法频繁项,输出恶意行为模式
      4. 4. 在沙箱运行过程中,提取主机行为和网络行为,与行为模式库对比检测
    2. 案例
      1. WannaCry蠕虫病毒行为检测
  5. 5. 机器学习模型检测恶意代码加密通讯
    1. 加密流量特征
      1. DNS特征
        1. 域名特征,Alex排名,TTL等
      2. TLS元数据
        1. 密码套件,TLS版本,客户端公钥长度等未加密的元数据
      3. HTTP特征
        1. HTTP URL,HTTP accept-encoding,HTTP field location,HTTP server nginx,HTTP Code 404等
      4. 包的特征信息
        1. 数据流前n个数据包的序列长度,时间序列(SPLT),信息熵等
    2. 模型建立方法
      1. 基本流程
  6. 6. 基于步态指纹和深度学习检测算法检测暗网流量
    1. 基于时序的步态指纹特征向量
      1. 1. 会话中数据包到达的时间戳序列
      2. 2. 会话中数据包发送的时间戳序列
      3. 3. 会话中数据包的大小序列
      4. 4. 会话中每秒包数,每秒字节数等
      5. 5. 会话状态序列,active/idle序列
      6. ...
    2. 模型建立方法
      1. 1. 数据获取
        1. 建立Ror流量捕获环境,分别使用不同的应用进行数据传输
          1. 浏览器
          2. 邮件
          3. 聊天工具
          4. 视频流、音频流
          5. 文件传输
          6. P2P,VoIP等
        2. 在非Tor环境进行同类别应用的数据传输,分别提取不太指纹特征数据
      2. ...
  7. 7. DNS隐秘信道检测
    1. 常用承载数据的记录类型
      1. 域名(主机名),TXT,A,CNAME等
    2. 常用编码或加密方法
      1. Base64,Base32
      2. 8-bit,16进制
      3. NetBIOS
    3. 已知DNS隧道工具
      1. DeNiSe,dns2tcp,DNScapy,DNScat-p,DNSCat-B,JHeyoka,iodine,NSTX,OzymanDNS,psudp, squeeza,tcp-over-dns,TUNS,恶意代码使用的DNS隐秘隧道
    4. 基于窗口的DNS隐秘隧道特征向量
      1. 1. 特定域名的两个连续数据包之间的时间(均值)
      2. 2. DNS隧道空间,去除二级域名的子域名长度(偏度)
      3. 3. 回应包的长度(方差)
      4. 4. qname中数字字符占比(方差)
      5. 5. 查询与响应包之间的时间(均值)
      6. ...