Git Product home page Git Product logo

apt_dns's Introduction

APT_DNS

1. 总体思路

    1. 从相关数据集中提取相应的特征,如DNS域名、DNS时间戳、客户端IP、主机IP等。
    2. 利用DNS的时间戳这一特征,使用后缀树字符串检测和傅里叶进行检测。(这个在之前的项目中代码已写好)
    3. 利用DNS域名、主机IP、客户端IP,生成图拟使用改进的BP算法进行图挖掘,发现潜在的恶意域名。

2. 数据集

现在手头上只有纳姐的那个很不得的APT数据和那个很大的2017的模拟流量集,暂定先用户2017的。

  • 如果有找到更OK的,就换。

  • 如果谢娇那边有打算自己生成数据集,我们这边也可以帮忙跟着一起,到时候就用自己生成的。

3. 特征提取

根据算法,只要是从DNS数据中提取一下特征:

  • 域名
  • 客户端IP
  • 主机IP
  • 时间戳

同时,由于图检测中的输入是图,还需要建立域名-客户端IP-主机IP这么一个关联图

4. 周期性检测

  • 主实验

    后缀树+傅里叶

  • 对比试验

    周期检测中的单个检测算法

5. 图检测

  • 主实验

稍微调研了一下,初步拟定使用这个用域名-客户端IP-主机IP图进行检测的改良过的BPMC算法

当然大家也可以集思广益再做一丢丢的改进啊啥啥的

Multi-Confirmations and DNS Graph Mining for Malicious Domain Detection

https://link.springer.com/chapter/10.1007/978-3-030-22868-2_46#Sec2

  • 对比实验

根据论文里的,我们可以用以下做对比试验:

  1. 用二分图的改进的BP算法

DNS graph mining for malicious domain detection

https://ieeexplore.ieee.org/document/8258515#full-text-header

  1. 置信度传播算法(belief propagation algorithm)
  2. 标签传播算法(label propagation algorithm)

当然还需要再继续做调研,看哪些还可以用来做实验(

6. 机器学习

根据前面拟定采用的四个算法,最终是会产生4个置信度(结果)。所以如果要把他结合起来,就需要机器学习。(我没想到更好的,如果有好的,就用更好的。- -)

这边的话就暂时把这四个整合成一个置信度向量,用那几个常见的机器学习算法或CNN去进行二分类。

apt_dns's People

Contributors

elizabeth1214akane avatar emission2019 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.