这两天看了很多web漏洞扫描器编写的文章,比如W12scan以及其前身W8scan,还有猪猪侠的自动化攻击背景下的过去、现在与未来,以及网上很多优秀的扫描器和博客,除了之前写了一部分的静湖ABC段扫描器,接下来有空的大部分时间都会用于编写这个扫描器,相当于是对自己的一个阶段性挑战吧,也算是为了完善自己的技术栈。

因为想把扫描器做成web应用,像W12scan,bugscan,AWVS那样的,部署好了之后登陆,添加需要扫描的url,自动化进行漏洞扫描,首先需要将扫描器的web界面完成,也就是前后端弄好,漏洞扫描作为后面添加进去的功能,在原基础上进行修改。

因为时间不是很宽裕,所以选择Flask框架进行web的开发,学习的视频是:

https://study.163.com/course/courseMain.htm?courseId=1004091002

找了很久的视频,要么就是太短了,对于很多地方没有讲透彻,要么就是几百集的教程丢过来,过于繁杂。

文档可以看官方文档,或者是这个:

http://www.pythondoc.com/flask-mega-tutorial/

当然遇到不会的问题还需要谷歌搜索一下,发挥自己的主观能动性。

接下来慢慢更新这一篇博客,先学Flask,哪里不会点技能树的哪里吧。当然也不能放弃代码审计,CTF和网课的学习

2020/4/2更新

框架快搭建好了,先做了登录界面

然后扫描器的基础功能也在readme里面写好了,侧重的功能模块是信息搜集和FUZZ模块

碎遮 Web漏洞扫描器

环境要求:

python版本要求:3.x,python运行需要的类库在requirements.txt中,执行

pip3 install -r requirements.txt

进行类库的下载
主要功能: 一,输入源采集: 1,基于流量清洗 2,基于日志提取 3,基于爬虫提取 二,输入源信息搜集(+) 1,被动信息搜集:(公开渠道可获得信息,与目标系统不产生直接交互) 1,whois 信息 获取关键注册人的信息 chinaz 2,在线子域名挖掘(这里不会ban掉自身IP,放进被动信息搜集中) 3,绕过CDN查找真实IP 4,DNS信息搜集 5,旁站查询 6,云悉指纹 7,备案信息 8,搜索引擎搜索 9,备案查询 2,主动信息搜集: 1,旁站C段服务简单扫描 2,子域名爆破 3,CMS指纹识别 4,敏感目录,文件扫描 5,端口及运行服务 6,服务器及中间件信息 7,WAF检测 8,敏感信息泄露 .svn,.git 等等 9,登录界面发现 三,SQL注入漏洞 四,XSS漏洞检测 五,命令执行类漏洞 六,文件包含类漏洞 七,登录弱密码爆破 八,FUZZ模块
可视化界面: 使用flask+javascript+html+css编写 启动index.py,在浏览器中访问127.0.0.1:5000访问

  准备开始模块的编写,加油趴

整个项目现在完成了1/3的样子,因为自己缺乏架构的经验,所以暂时只能走一步看一步,最开始使用MySQL数据库准备换成redis非关系型数据库加快读写速度,扫描器在写的过程中丰富了自己对于各方面知识的掌握

贴上W12scan的代码架构镇楼

从架构图里面跟自己扫描器的想法进行了一些验证和补充。自己写的时候应该不会用到elastic,可以考虑使用redis和MySQL数据库两个相互进行配合存储数据。

另外在扫描范围上要进行合法范围的扩大化。

最新文章

  1. 【错误总结】java.lang.NoClassDefFoundError: org/objectweb/asm/ClassVisitor
  2. tomcat7 启动项目报错 java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig()
  3. vector中pair的排序方法
  4. 使用iBATIS3.0完成增删改查
  5. 使用spool导出数据
  6. hadoop-集群管理(1)——配置文件
  7. Python 优雅的操作字典【转】
  8. Flume学习 & Kafka & Storm 等 & Log4J 配置
  9. Java_Utils框架
  10. MYSQL 多表更新 UPDATE SET like concat('%',abc,'%');
  11. Android中Tomcat的简单配置和使用
  12. PagerSlidingTabStrip
  13. SVM推导
  14. 多线程下的NSOperation和NSOperationQueue的使用
  15. hadoop的WordCount样例
  16. Android Support Library更新到v22.1之AppCompat新特性
  17. C# 对象数据转换Json帮助类 JsonHelp
  18. react-router详细解释
  19. 一次国际化记录以及平铺JSON数据
  20. 记-统计svn与git的log日志中的代码行变更

热门文章

  1. 【译】关于Rust模块的清晰解释
  2. Sublime Text 3 安装插件与快捷键总结
  3. git clone克隆github仓库慢,问题解决
  4. CSS3之animation属性
  5. javascript多物体运动案例:多物体淡入淡出
  6. http 请求体数据处理2--ngx
  7. socket connect tcp_v4_connect
  8. 为什么关不掉所有的OSD
  9. Window常用账号密码修改(Git)
  10. 进程池与回调函数与正则表达式和re爬虫例子