以前搭建过好几次xunfeng,也看过几次他的源码,最近团队准备做巡风的二次开发,就要再好好看下他的源码了,我们知道巡风主要有两个功能,资产发现和漏洞扫描,我主要负责漏洞扫描这块,就先简单记录下这块的大致流程

一:看源码tip

看源码,第一步看他的启动程序,可以看run.sh,巡风的启动程序主要就五块
mongodb启动:这里mongodb可以直接用二进制文件启动,导入导出,默认启动在本地的65521端口
web.py启动:flask启动网页
Nascan: 资产扫描
Vulscan:漏洞扫描
Aider:辅助模块,还不了解

二: vulscan流程

就上个我看源码的时候画的图吧

总的来说,其实巡风源码还是很简单的,过程看上图就可以,就讲下我自己对巡风的感觉
1: 巡风的资产扫描和漏洞扫描都是基于数据库中特定字段的改变,会有心跳线程,就是上面的monitor(),不断的去检查数据库中字段。用户在页面上的操作,都是先改变数据库内容而已。所以比如开启某个漏扫任务,可能没法马上开始
2: 从数据库字段中可以看到,原来团队应该打算跟定时周期扫描资产一样,做一个定时周期扫描漏洞的功能,在页面上没有这个功能,接下来我这边会加一下这个功能
想想好像源码也没啥好说的。。还是比较简单的

xunfeng(巡风)源码解读之vulscan相关推荐

  1. Bert系列(三)——源码解读之Pre-train

    https://www.jianshu.com/p/22e462f01d8c pre-train是迁移学习的基础,虽然Google已经发布了各种预训练好的模型,而且因为资源消耗巨大,自己再预训练也不现 ...

  2. html 源码知识,源码解读

    用Node.js写一个web服务器,我前面已经写过两篇文章了: 第一篇是不使用任何框架也能搭建一个web服务器,主要是熟悉Node.js原生API的使用:使用Node.js原生API写一个web服务器 ...

  3. 源码解读之Pre-train

    pre-train是迁移学习的基础,虽然Google已经发布了各种预训练好的模型,而且因为资源消耗巨大,自己再预训练也不现实(在Google Cloud TPU v2 上训练BERT-Base要花费近 ...

  4. Bert系列(二)——源码解读之模型主体

    本篇文章主要是解读模型主体代码modeling.py.在阅读这篇文章之前希望读者们对bert的相关理论有一定的了解,尤其是transformer的结构原理,网上的资料很多,本文内容对原理部分就不做过多 ...

  5. linux下free源码,linux命令free源码解读:Procps free.c

    linux命令free源码解读 linux命令free源码解读:Procps free.c 作者:isayme 发布时间:September 26, 2011 分类:Linux 我们讨论的是linux ...

  6. nodeJS之eventproxy源码解读

    1.源码缩影 !(function (name, definition) { var hasDefine = typeof define === 'function', //检查上下文环境是否为AMD ...

  7. PyTorch 源码解读之即时编译篇

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 作者丨OpenMMLab 来源丨https://zhuanlan.zhihu.com/ ...

  8. Alamofire源码解读系列(九)之响应封装(Response)

    本篇主要带来Alamofire中Response的解读 前言 在每篇文章的前言部分,我都会把我认为的本篇最重要的内容提前讲一下.我更想同大家分享这些顶级框架在设计和编码层次究竟有哪些过人的地方?当然, ...

  9. Feflow 源码解读

    Feflow 源码解读 Feflow(Front-end flow)是腾讯IVWEB团队的前端工程化解决方案,致力于改善多类型项目的开发流程中的规范和非业务相关的问题,可以让开发者将绝大部分精力集中在 ...

最新文章

  1. java condition_(原创)Java的ReentrantLock(可重入锁)下的Condition
  2. 在将计算机技术应用于会计工作的初期,所开发的会计核算软件主要用于,电算化考前试七.doc...
  3. 字符串多模式精确匹配(脏字/敏感词汇搜索算法)——TTMP算法 之理论(转)...
  4. ext不能选中复制属性_复制拷贝文件不怕再出错,一个超级好用的小工具,支持多线程工作...
  5. 【BZOJ2004】公交线路(动态规划,状态压缩,矩阵快速幂)
  6. Beetlex.Redis之Stream功能详解
  7. 算法(2)-二叉树的遍历(递归/迭代)python实现
  8. 学习戴铭博文《从 ReactiveCocoa 中能学到什么?不用此库也能学以致用》的总结...
  9. 如何在验证集加噪声_图像去噪:如何去其糟粕,取其精华?
  10. for循环提高内存访问效率的做法
  11. 【深度学习】机器视觉开源代码集合
  12. 树莓派无法打开摄像头模块,无法识别摄像头
  13. JavaScript 进阶 - 第3天
  14. Phython是什么?
  15. 如何连接手机和电脑,用电脑控制安卓手机
  16. Oracle Golden Gate 系列七 -- 配置 GG Manager process
  17. sgg-hbase-01
  18. 基于CUDA的N-Body问题并行程序设计及性能优化
  19. 一文告诉你,“沉浸式夜游”为何不得不做?沉浸式夜游该如何做?
  20. 工业锅炉计算机控制的研究与设计,工业锅炉的节能与微机控制

热门文章

  1. request_irq()、free_irq()
  2. [转载][ZZ]计算机视觉研究群体及专家主页汇总_拔剑-浆糊的传说_新浪博客
  3. 并发进程数、资源数、每个进程最大可得资源数问题[考试、测试题]
  4. F#:微軟的下一代重量級語言
  5. 前端:CSS基础知识
  6. python批量修改图片文件名
  7. mysql书单推荐_MySQL必看书籍推荐
  8. 味尚拉面,半干面的代表,劲道无比,美味可口
  9. 计算机莫名其妙的游戏网页弹出,最近电脑老是自动弹出游戏网页,怎么处理?
  10. inno setup 安装/卸载 弹出网页