临兵漏洞扫描系统
本系统是对目标进行漏洞扫描的一个系统,前端采用vue技术,后端采用flask.核心原理是扫描主机的开放端口情况,然后根据端口情况逐个去进行poc检测,poc有110多个,包含绝大部分的中间件漏洞,本系统的poc皆来源于网络或在此基础上进行修改,在centons7环境下使用nginx和uwsgi部署,部署起来可能有点麻烦,烦请多点耐心,在腾讯云centos7上测试成功.
插件目录列表
├─ActiveMQ
│ CVE_2016_3088.py
│ 笔记.txt
│
├─Apache Flink
│ check.jar
│ Upload_Jar.py
│
├─Apache Solr
│ CVE_2017_12629.py
│ Solr_Rce.py
│
├─Axis
│ Axis.py
│
├─Citrix ADC
│ CVE_2019_19781.py
│
├─Confluence
│ CVE_2019_3396.py
│
├─Coremail
│ Coremail_Information_Leak.py
│
├─CouchDB
│ Couchdb_Unauthorized.py
│ Couchdb_Weakpwd.py
│ CVE_2017_12635.py
│
├─Dns
│ Dns_Transfer.py
│ Python_Dns_Transfer.py
│
├─Docker
│ Docker_Unauthorized.py
│
├─Druid
│ Druid_Unauthorized.py
│
├─Drupal
│ CVE_2018_7600.py
│
├─Dubbo
│ Dubbo_Unauthorized.py
│ Dubbo_Weakpwd.py
│
├─ElasticSearch
│ CVE_2015_1427.py
│ ElasticSearch_Unauthorized.py
│
├─Everything
│ Everything_List.py
│
├─F5 BIG IP
│ CVE_2020_5902.py
│
├─Fastcgi
│ File_Read.py
│
├─Flask
│ Ssti.py
│
├─Ftp
│ Ftp_Weakpwd.py
│
├─Glassfish
│ Glassfish_File_Read.py
│ Glassfish_Weakpwd.py
│
├─Grafana
│ Grafana_Weakpwd.py
│
├─Hadoop
│ Hadoop_Unauthorized.py
│
├─IIS
│ CVE_2017_7269.py
│ Iis_Shortfilename.py
│ Iis_Webdav_Put.py
│
├─Intellian
│ CVE_2020_7980.py
│
├─Javarmi
│ Javarmi_Rce.py
│
├─Jboss
│ CVE_2017_12149.py
│
├─Jenkins
│ CVE_2018_1000861.py
│ CVE_2018_1999002.py
│ Jenkins_Unauthorized.py
│ Jenkins_Usernumeration.py
│ Jenkins_Weakpwd.py
│
├─Jira
│ CVE_2019_8449.py
│
├─Joomla
│ CVE_2015_8562.py
│ CVE_2017_8917.py
│
├─Kibana
│ CVE_2019_7609.py
│
├─Kindeditor
│ Upload_File.py
│
├─Memcached
│ Memcached_Unauthorized.py
│
├─Metinfo
│ Metinfo_Anyfile_Read.py
│
├─Micosoft
│ MS15_034.py
│ MS17_010.py
│
├─Mongodb
│ Mongodb_Unauthorized.py
│
├─Mssql
│ Mssql_Weakpwd.py
│
├─Mysql
│ Mysql_Weakpwd.py
│
├─Nexus
│ CVE_2019_7238.py
│ Nexus_Weakpwd.py
│
├─Nginx
│ CVE_2017_7529.py
│ Nginx_Httproxy.py
│
├─Oracle
│ Oracle_Weakpwd.py
│
├─Phpcms
│ CVE_2018_19127.py
│
├─Phpmyadmin
│ CVE_2018_12613.py
│ Phpmyadmin_Weakpwd.py
│ WooYun_2016_199433.py
│
├─Postgresql
│ Postgresql_Weakpwd.py
│
├─Rails
│ CVE_2019_5418.py
│
├─Redis
│ Redis_Shell.py
│ Redis_Unauthorized.py
│ Redis_Weakpwd.py
│
├─Rsync
│ Rsync_Unauthorized.py
│ Rsync_Weakpwd.py
│
├─See You
│ See_Yon.py
│
├─Spring
│ CVE_2017_8046.py
│ Spring_Actuator_Unauthorized.py
│
├─Ssh
│ Ssh_Weakpwd.py
│
├─Struts2
│ S2_001.py
│ S2_005.py
│ S2_007.py
│ S2_008.py
│ S2_009.py
│ S2_012.py
│ S2_013.py
│ S2_015.py
│ S2_016.py
│ S2_019.py
│ S2_029.py
│ S2_032.py
│ S2_033.py
│ S2_037.py
│ S2_045.py
│ S2_046.py
│ S2_048.py
│ S2_052.py
│ S2_053.py
│ S2_057.py
│ Struts 漏洞列表.txt
│
├─Supervisor
│ CVE_2017_11610.py
│
├─ThinkCMF
│ Thinkcmf_Rce.py
│
├─Thinkphp5
│ Thinkphp5_5_0_22.py
│ Thinkphp5_5_0_23.py
│
├─Tomcat
│ ajpy.py
│ CVE_2017_12615.py
│ CVE_2020_1938.py
│ Tomcat_Weakpwd.py
│ __init__.py
│
├─Tongda
│ Tongda_Oa_Rce.py
│
├─Typecho
│ Typecho_Install_Code_Exec.py
│
├─Uwsgi
│ CVE_2018_7490.py
│
├─V2_Conference
│ V2_BulletinAction_Sql.py
│
├─Vbulletin
│ CVE_2019_16759.py
│
├─Weaver Ecology OA
│ Weaver_Ecology_Oa_Config.py
│ Weaver_Ecology_Oa_Rce.py
│ Weaver_Ecology_Oa_Sql.py
│
├─Weblogic
│ CVE_2017_10271.py
│ CVE_2018_2628.py
│ CVE_2019_2618.py
│ CVE_2019_2725.py
│ CVE_2019_2729.py
│ CVE_2020_2551.py
│ __init__.py
│
├─Webmin
│ CVE_2019_15107.py
│
├─Zabbix
│ CVE_2016_10134.py
│ Zabbix_Weakpwd.py
│
├─Zimbra
│ CVE_2019_9621.py
│ CVE_2019_9670.py
│ zimbra.dtd
│
└─ZooKeeper
Zookeeper_Unauthorized.py
安装python3依赖库
pip3 install -r requirements.txt
打包vue源代码(进入到vue)
npm run build(有打包好的,即vue文件夹,可直接使用,自行打包需要安装node和vue,参考https://www.runoob.com/nodejs/nodejs-install-setup.html, https://www.runoob.com/vue2/vue-install.html)
部署
nmap
安装nmap
yum install -y nmap
masscan
安装masscan
yum install -y masscan
nginx
安装nginx
yum install -y nginx
启动nginx
systemctl start nginx
开机自启动nginx
systemctl enable nginx
添加nginx用户
useradd -s /sbin/nologin -M nginx
配置
配置文件已配置好,可以直接使用,可以根据自己的需求修改文件路径及端口. 在/etc/nginx/conf.d目录下放入flask.conf和vue.conf文件 在/etc/nginx目录下放入nginx.conf文件 conf配置文件中有注释 把vue目录移到/usr/share/nginx/html中
mariadb
安装mariadb
yum install -y mariadb-server
启动mariadb
systemctl start mariadb
设置mariadb开机自启动
systemctl enable mariadb
进行数据库配置(如设置密码等)
mysql_secure_installation(具体步骤略去,可参考https://www.cnblogs.com/yhongji/p/9783065.html) 配置数据库密码后需要在flask/app文件夹下的mysql文件中配置连接maridab数据库的用户名,密码等信息
邮件
我使用的是QQ邮箱发送的邮件,需要授权码,需要自行到flask/app/sendmail.py文件中去设置,参考https://blog.csdn.net/Momorrine/article/details/79881251
uwsgi
安装uwsgi
yum install -y libpq-dev
yum install -y python3-dev
yum install -y uwsgi
yum install uwsgi-plugin-python3(安装的这个包的版本要和python的版本保持一致)
配置uwsgi
把uwsgi.ini文件放到flask文件夹的根目录下(我的flask文件夹路径是/root/flask,如果各位不是这个路径,需要到uwsgi.ini文件和flask.conf中修改文件的路径)
启动uwsgi
进入到/root/flask/目录下,uwsgi –ini uwsgi.ini(uwsgi文件的路径)