Giter Site home page Giter Site logo

deep-learning-of-dga's Introduction

Research on automatic detection technology of DGA

基于深度学习对dga恶意域名检测研究

blog:https://blog.csdn.net/qq_39936434/article/details/103310765

仓库目录

  • data(本项目研究的数据)
  • image
  • mycode(本项目的代码)
    • myDeepLearning(深度学习)
      • deepLearning_blog (博客)
      • 实践代码
    • myGAN(GAN)
      • blog_GAN(博客)
      • 实践代码
    • myMacineLearning(机器学习)
      • machin_learning_blog(博客)
      • 实践代码
    • myTools(工具)
  • paper(参考文献)

前言

​ 因为毕设而接触了该课题,发现很有趣。该仓库专注于DGA域名检测技术的研究,内容包括:传统机器学习、深度学习与生成对抗网络GAN。

本仓库所做的研究

​ 本仓库研究以传统机器学习为起点,按照历史存在的问题的演变顺序一步步推进。

传统机器学习

​ 传统机器学习解决的问题:

​ (1)实现自动化检测技术,效率比传统的黑名单检验、逆向等方法高出一大截

​ 本仓库的贡献:

​ (1)对兜哥的《Web安全之机器学习入门》关于DGA部分的代码基于多种特征提取进行复现

​ 传统机器学习所存在的问题:

​ (1)基于手工提取的监督学习算法存在输入样本被攻击的问题

​ (2)缺乏即时的训练数据,往往攻击发生过后才能获取训练样本

深度学习

​ 深度学习解决的问题:

​ (1)无监督算法无需人工特征提取,输入一定量的数据模型可以自己训练,一定程度解决了训练缺乏的问题

​ (2)自动进行特征提取,有时能以人类没想到的角度提取特征,提高检测效率

​ 本仓库的贡献:

​ (1)同样复现了兜哥的 《Web安全之深度学习实战》 关于DGA检测部分代码

​ (2)并且在此基础上使用深度学习方法与传统机器学习的检测方法进行对比,通过AUC,准确率等多种指标印证

​ (3)对多个算法比较中最优的模型——MLP,进行超参数调参,提高模型检测能力

​ 深度学习所存在的问题:

​ (1)虽然模型可以自己学习并训练数据,但是其初始化调参时仍然需要输入样本进行基本的训练,所以任然存在输入样本被攻击的问题

对抗生成网络GAN

​ 对抗网络GAN解决的问题:

​ (1)分为鉴别网络和生成网络,相互博弈训练。既能训练高检测的模型,也可生成高价值的对抗样本。增强了模型的防御能力和扩充了有效训练数据集。

​ 本仓库的贡献:

​ (1)复现国内公开的demo,但是该demo是一个失败的实验

​ (2)使用GAN技术进行对抗性域名生成,效果比(1)的好,但是总体仍然不能达到符合人类语言习惯的域名

​ (3)借鉴国外的成功demo,使用更加稳定的WGAN-GP技术成功生成符合需求的对抗性域名

数据集

360实验室

其他

AI-Security-Learning

AI-for-Security-Learning

Domain Generation Algorithms

deep-learning-of-dga's People

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.