├── .github
├── conf
│ └── .goreleaser.yml
└── workflows
│ └── release.yml
├── .gitignore
├── Common
├── Config.go
├── Flag.go
├── Log.go
├── Output.go
├── Parse.go
├── ParseIP.go
├── ParsePort.go
├── Ports.go
├── Proxy.go
├── Types.go
└── i18n.go
├── Core
├── ICMP.go
├── LocalScanner.go
├── PluginUtils.go
├── PortFinger.go
├── PortInfo.go
├── PortScan.go
├── Registry.go
├── Scanner.go
├── ServiceScanner.go
├── WebScanner.go
└── nmap-service-probes.txt
├── LICENSE.txt
├── Plugins
├── ActiveMQ.go
├── Base.go
├── Cassandra.go
├── DCInfo.go
├── DCInfoUnix.go
├── Elasticsearch.go
├── FTP.go
├── FindNet.go
├── IMAP.go
├── Kafka.go
├── LDAP.go
├── LocalInfo.go
├── MS17010-Exp.go
├── MS17010.go
├── MSSQL.go
├── Memcached.go
├── MiniDump.go
├── MiniDumpUnix.go
├── Modbus.go
├── Mongodb.go
├── MySQL.go
├── Neo4j.go
├── NetBIOS.go
├── Oracle.go
├── POP3.go
├── Postgres.go
├── RDP.go
├── RabbitMQ.go
├── Redis.go
├── Rsync.go
├── SMB.go
├── SMB2.go
├── SMTP.go
├── SNMP.go
├── SSH.go
├── SmbGhost.go
├── Telnet.go
├── VNC.go
├── WebPoc.go
└── WebTitle.go
├── README.md
├── README_EN.md
├── TestDocker
├── ActiveMQ
│ ├── Dockerfile
│ ├── README.txt
│ ├── activemq.xml
│ └── users.properties
├── Cassandra
│ └── README.txt
├── Elasticsearch
│ ├── Dockerfile
│ └── README.txt
├── FTP
│ └── README.txt
├── IMAP
│ ├── Dockerfile
│ └── README.txt
├── Kafka
│ ├── README.txt
│ ├── docker-compose.yml
│ └── kafka_jaas.conf
├── LDAP
│ ├── Dockerfile
│ ├── README.txt
│ └── bootstrap.ldif
├── MSSQL
│ ├── Dockerfile
│ └── README.txt
├── Memcached
│ ├── Dockerfile
│ └── README.txt
├── Modbus
│ └── README.txt
├── Mongodb
│ ├── Dockerfile
│ └── README.txt
├── MySQL
│ ├── Dockerfile
│ ├── README.txt
│ └── my.cnf
├── Neo4j
│ ├── Dockerfile
│ └── docker-compose.yml
├── Oracle
│ ├── Dockerfile
│ └── README.txt
├── POP3
│ ├── Dockerfile
│ └── README.txt
├── Postgre
│ ├── Dockerfile
│ └── README.md
├── RabbitMQ
│ ├── Dockerfile
│ └── README.txt
├── Redis
│ ├── Dockerfile
│ ├── README.txt
│ └── redis.conf
├── Rsync
│ ├── Dockerfile
│ └── README.txt
├── SMTP
│ ├── Dockerfile
│ ├── README.txt
│ └── start.sh
├── SNMP
│ ├── Dockerfile
│ └── README.txt
├── SSH
│ ├── Dockerfile
│ └── README.txt
├── Telnet
│ ├── Dockerfile
│ └── README.md
├── Tomcat
│ ├── Dockerfile
│ ├── README.txt
│ ├── context.xml
│ └── tomcat-users.xml
├── VNC
│ ├── Dockerfile
│ ├── README.txt
│ └── supervisord.conf
├── Weblogic
│ ├── Dockerfile
│ ├── README.txt
│ ├── create-domain.py
│ └── start.sh
└── Zabbix
│ └── docker-compose.yml
├── WebScan
├── InfoScan.go
├── WebScan.go
├── info
│ └── Rules.go
├── lib
│ ├── Check.go
│ ├── Client.go
│ ├── Eval.go
│ ├── Shiro.go
│ ├── http.pb.go
│ └── http.proto
└── pocs
│ ├── 74cms-sqli-1.yml
│ ├── 74cms-sqli-2.yml
│ ├── 74cms-sqli.yml
│ ├── CVE-2017-7504-Jboss-serialization-RCE.yml
│ ├── CVE-2022-22947.yml
│ ├── CVE-2022-22954-VMware-RCE.yml
│ ├── CVE-2022-26134.yml
│ ├── Hotel-Internet-Manage-RCE.yml
│ ├── Struts2-062-cve-2021-31805-rce.yml
│ ├── active-directory-certsrv-detect.yml
│ ├── activemq-cve-2016-3088.yml
│ ├── activemq-default-password.yml
│ ├── airflow-unauth.yml
│ ├── alibaba-canal-default-password.yml
│ ├── alibaba-canal-info-leak.yml
│ ├── alibaba-nacos-v1-auth-bypass.yml
│ ├── alibaba-nacos.yml
│ ├── amtt-hiboss-server-ping-rce.yml
│ ├── apache-ambari-default-password.yml
│ ├── apache-axis-webservice-detect.yml
│ ├── apache-druid-cve-2021-36749.yml
│ ├── apache-flink-upload-rce.yml
│ ├── apache-httpd-cve-2021-40438-ssrf.yml
│ ├── apache-httpd-cve-2021-41773-path-traversal.yml
│ ├── apache-httpd-cve-2021-41773-rce.yml
│ ├── apache-kylin-unauth-cve-2020-13937.yml
│ ├── apache-nifi-api-unauthorized-access.yml
│ ├── apache-ofbiz-cve-2018-8033-xxe.yml
│ ├── apache-ofbiz-cve-2020-9496-xml-deserialization.yml
│ ├── aspcms-backend-leak.yml
│ ├── backup-file.yml
│ ├── bash-cve-2014-6271.yml
│ ├── bt742-pma-unauthorized-access.yml
│ ├── cacti-weathermap-file-write.yml
│ ├── chinaunicom-modem-default-password.yml
│ ├── cisco-cve-2020-3452-readfile.yml
│ ├── citrix-cve-2019-19781-path-traversal.yml
│ ├── citrix-cve-2020-8191-xss.yml
│ ├── citrix-cve-2020-8193-unauthorized.yml
│ ├── citrix-xenmobile-cve-2020-8209.yml
│ ├── coldfusion-cve-2010-2861-lfi.yml
│ ├── confluence-cve-2015-8399.yml
│ ├── confluence-cve-2019-3396-lfi.yml
│ ├── confluence-cve-2021-26084.yml
│ ├── confluence-cve-2021-26085-arbitrary-file-read.yml
│ ├── consul-rexec-rce.yml
│ ├── consul-service-rce.yml
│ ├── coremail-cnvd-2019-16798.yml
│ ├── couchcms-cve-2018-7662.yml
│ ├── couchdb-cve-2017-12635.yml
│ ├── couchdb-unauth.yml
│ ├── craftcms-seomatic-cve-2020-9757-rce.yml
│ ├── datang-ac-default-password-cnvd-2021-04128.yml
│ ├── dedecms-carbuyaction-fileinclude.yml
│ ├── dedecms-cve-2018-6910.yml
│ ├── dedecms-cve-2018-7700-rce.yml
│ ├── dedecms-guestbook-sqli.yml
│ ├── dedecms-membergroup-sqli.yml
│ ├── dedecms-url-redirection.yml
│ ├── discuz-ml3x-cnvd-2019-22239.yml
│ ├── discuz-v72-sqli.yml
│ ├── discuz-wechat-plugins-unauth.yml
│ ├── discuz-wooyun-2010-080723.yml
│ ├── django-CVE-2018-14574.yml
│ ├── dlink-850l-info-leak.yml
│ ├── dlink-cve-2019-16920-rce.yml
│ ├── dlink-cve-2019-17506.yml
│ ├── dlink-cve-2020-25078-account-disclosure.yml
│ ├── dlink-cve-2020-9376-dump-credentials.yml
│ ├── dlink-dsl-2888a-rce.yml
│ ├── docker-api-unauthorized-rce.yml
│ ├── docker-registry-api-unauth.yml
│ ├── dotnetcms-sqli.yml
│ ├── draytek-cve-2020-8515.yml
│ ├── druid-monitor-unauth.yml
│ ├── drupal-cve-2014-3704-sqli.yml
│ ├── drupal-cve-2018-7600-rce.yml
│ ├── drupal-cve-2019-6340.yml
│ ├── dubbo-admin-default-password.yml
│ ├── duomicms-sqli.yml
│ ├── dvr-cve-2018-9995.yml
│ ├── e-office-v10-sql-inject.yml
│ ├── e-office-v9-upload-cnvd-2021-49104.yml
│ ├── e-zkeco-cnvd-2020-57264-read-file.yml
│ ├── ecology-arbitrary-file-upload.yml
│ ├── ecology-filedownload-directory-traversal.yml
│ ├── ecology-javabeanshell-rce.yml
│ ├── ecology-springframework-directory-traversal.yml
│ ├── ecology-syncuserinfo-sqli.yml
│ ├── ecology-v8-sqli.yml
│ ├── ecology-validate-sqli.yml
│ ├── ecology-workflowcentertreedata-sqli.yml
│ ├── ecology-workflowservicexml.yml
│ ├── ecshop-cnvd-2020-58823-sqli.yml
│ ├── ecshop-collection-list-sqli.yml
│ ├── ecshop-login-sqli.yml
│ ├── ecshop-rce.yml
│ ├── eea-info-leak-cnvd-2021-10543.yml
│ ├── elasticsearch-cve-2014-3120.yml
│ ├── elasticsearch-cve-2015-1427.yml
│ ├── elasticsearch-cve-2015-3337-lfi.yml
│ ├── elasticsearch-cve-2015-5531.yml
│ ├── elasticsearch-unauth.yml
│ ├── etcd-unauth.yml
│ ├── etcd-v3-unauth.yml
│ ├── etouch-v2-sqli.yml
│ ├── exchange-cve-2021-26855-ssrf.yml
│ ├── eyou-rce.yml
│ ├── ezoffice-dpwnloadhttp.jsp-filedownload.yml
│ ├── f5-cve-2021-22986.yml
│ ├── f5-cve-2022-1388.yml
│ ├── f5-tmui-cve-2020-5902-rce.yml
│ ├── fangweicms-sqli.yml
│ ├── fckeditor-info.yml
│ ├── feifeicms-lfr.yml
│ ├── finecms-sqli.yml
│ ├── finereport-directory-traversal.yml
│ ├── finereport-v8-arbitrary-file-read.yml
│ ├── flexpaper-cve-2018-11686.yml
│ ├── flink-jobmanager-cve-2020-17519-lfi.yml
│ ├── fortigate-cve-2018-13379-readfile.yml
│ ├── frp-dashboard-unauth.yml
│ ├── gateone-cve-2020-35736.yml
│ ├── gilacms-cve-2020-5515.yml
│ ├── gitlab-graphql-info-leak-cve-2020-26413.yml
│ ├── gitlab-ssrf-cve-2021-22214.yml
│ ├── gitlist-rce-cve-2018-1000533.yml
│ ├── glassfish-cve-2017-1000028-lfi.yml
│ ├── go-pprof-leak.yml
│ ├── gocd-cve-2021-43287.yml
│ ├── h2-database-web-console-unauthorized-access.yml
│ ├── h3c-imc-rce.yml
│ ├── h3c-secparh-any-user-login.yml
│ ├── h5s-video-platform-cnvd-2020-67113-unauth.yml
│ ├── hadoop-yarn-unauth.yml
│ ├── hanming-video-conferencing-file-read.yml
│ ├── harbor-cve-2019-16097.yml
│ ├── hikvision-cve-2017-7921.yml
│ ├── hikvision-gateway-data-file-read.yml
│ ├── hikvision-info-leak.yml
│ ├── hikvision-intercom-service-default-password.yml
│ ├── hikvision-showfile-file-read.yml
│ ├── hikvision-unauthenticated-rce-cve-2021-36260.yml
│ ├── hjtcloud-arbitrary-fileread.yml
│ ├── hjtcloud-directory-file-leak.yml
│ ├── huawei-home-gateway-hg659-fileread.yml
│ ├── ifw8-router-cve-2019-16313.yml
│ ├── iis-put-getshell.yml
│ ├── influxdb-unauth.yml
│ ├── inspur-tscev4-cve-2020-21224-rce.yml
│ ├── jboss-cve-2010-1871.yml
│ ├── jboss-unauth.yml
│ ├── jeewms-showordownbyurl-fileread.yml
│ ├── jellyfin-file-read-cve-2021-21402.yml
│ ├── jenkins-cve-2018-1000600.yml
│ ├── jenkins-cve-2018-1000861-rce.yml
│ ├── jenkins-unauthorized-access.yml
│ ├── jetty-cve-2021-28164.yml
│ ├── jira-cve-2019-11581.yml
│ ├── jira-cve-2019-8442.yml
│ ├── jira-cve-2019-8449.yml
│ ├── jira-cve-2020-14179.yml
│ ├── jira-cve-2020-14181.yml
│ ├── jira-ssrf-cve-2019-8451.yml
│ ├── joomla-cnvd-2019-34135-rce.yml
│ ├── joomla-component-vreview-sql.yml
│ ├── joomla-cve-2015-7297-sqli.yml
│ ├── joomla-cve-2017-8917-sqli.yml
│ ├── joomla-cve-2018-7314-sql.yml
│ ├── joomla-ext-zhbaidumap-cve-2018-6605-sqli.yml
│ ├── jumpserver-unauth-rce.yml
│ ├── jupyter-notebook-unauthorized-access.yml
│ ├── kafka-manager-unauth.yml
│ ├── kibana-cve-2018-17246.yml
│ ├── kibana-unauth.yml
│ ├── kingdee-eas-directory-traversal.yml
│ ├── kingsoft-v8-default-password.yml
│ ├── kingsoft-v8-file-read.yml
│ ├── kong-cve-2020-11710-unauth.yml
│ ├── kubernetes-unauth.yml
│ ├── kyan-network-monitoring-account-password-leakage.yml
│ ├── landray-oa-custom-jsp-fileread.yml
│ ├── lanproxy-cve-2021-3019-lfi.yml
│ ├── laravel-cve-2021-3129.yml
│ ├── laravel-debug-info-leak.yml
│ ├── laravel-improper-webdir.yml
│ ├── maccms-rce.yml
│ ├── maccmsv10-backdoor.yml
│ ├── metinfo-cve-2019-16996-sqli.yml
│ ├── metinfo-cve-2019-16997-sqli.yml
│ ├── metinfo-cve-2019-17418-sqli.yml
│ ├── metinfo-file-read.yml
│ ├── metinfo-lfi-cnvd-2018-13393.yml
│ ├── minio-default-password.yml
│ ├── mongo-express-cve-2019-10758.yml
│ ├── mpsec-isg1000-file-read.yml
│ ├── msvod-sqli.yml
│ ├── myucms-lfr.yml
│ ├── nagio-cve-2018-10735.yml
│ ├── nagio-cve-2018-10736.yml
│ ├── nagio-cve-2018-10737.yml
│ ├── nagio-cve-2018-10738.yml
│ ├── natshell-arbitrary-file-read.yml
│ ├── netentsec-icg-default-password.yml
│ ├── netentsec-ngfw-rce.yml
│ ├── netgear-cve-2017-5521.yml
│ ├── nextjs-cve-2017-16877.yml
│ ├── nexus-cve-2019-7238.yml
│ ├── nexus-cve-2020-10199.yml
│ ├── nexus-cve-2020-10204.yml
│ ├── nexus-default-password.yml
│ ├── nexusdb-cve-2020-24571-path-traversal.yml
│ ├── nhttpd-cve-2019-16278.yml
│ ├── node-red-dashboard-file-read-cve-2021-3223.yml
│ ├── novnc-url-redirection-cve-2021-3654.yml
│ ├── nps-default-password.yml
│ ├── ns-asg-file-read.yml
│ ├── nsfocus-uts-password-leak.yml
│ ├── nuuo-file-inclusion.yml
│ ├── odoo-file-read.yml
│ ├── openfire-cve-2019-18394-ssrf.yml
│ ├── opentsdb-cve-2020-35476-rce.yml
│ ├── panabit-gateway-default-password.yml
│ ├── panabit-ixcache-default-password.yml
│ ├── pandorafms-cve-2019-20224-rce.yml
│ ├── pbootcms-database-file-download.yml
│ ├── php-cgi-cve-2012-1823.yml
│ ├── phpcms-cve-2018-19127.yml
│ ├── phpmyadmin-cve-2018-12613-file-inclusion.yml
│ ├── phpmyadmin-setup-deserialization.yml
│ ├── phpok-sqli.yml
│ ├── phpshe-sqli.yml
│ ├── phpstudy-backdoor-rce.yml
│ ├── phpstudy-nginx-wrong-resolve.yml
│ ├── phpunit-cve-2017-9841-rce.yml
│ ├── powercreator-arbitrary-file-upload.yml
│ ├── prometheus-url-redirection-cve-2021-29622.yml
│ ├── pulse-cve-2019-11510.yml
│ ├── pyspider-unauthorized-access.yml
│ ├── qibocms-sqli.yml
│ ├── qilin-bastion-host-rce.yml
│ ├── qizhi-fortressaircraft-unauthorized.yml
│ ├── qnap-cve-2019-7192.yml
│ ├── rabbitmq-default-password.yml
│ ├── rails-cve-2018-3760-rce.yml
│ ├── razor-cve-2018-8770.yml
│ ├── rconfig-cve-2019-16663.yml
│ ├── resin-cnnvd-200705-315.yml
│ ├── resin-inputfile-fileread-or-ssrf.yml
│ ├── resin-viewfile-fileread.yml
│ ├── rockmongo-default-password.yml
│ ├── ruijie-eg-cli-rce.yml
│ ├── ruijie-eg-file-read.yml
│ ├── ruijie-eg-info-leak.yml
│ ├── ruijie-eweb-rce-cnvd-2021-09650.yml
│ ├── ruijie-nbr1300g-cli-password-leak.yml
│ ├── ruijie-uac-cnvd-2021-14536.yml
│ ├── ruoyi-management-fileread.yml
│ ├── saltstack-cve-2020-16846.yml
│ ├── saltstack-cve-2021-25282-file-write.yml
│ ├── samsung-wea453e-default-pwd.yml
│ ├── samsung-wea453e-rce.yml
│ ├── samsung-wlan-ap-wea453e-rce.yml
│ ├── sangfor-ad-download.php-filedownload.yml
│ ├── sangfor-ba-rce.yml
│ ├── sangfor-edr-arbitrary-admin-login.yml
│ ├── sangfor-edr-cssp-rce.yml
│ ├── sangfor-edr-tool-rce.yml
│ ├── satellian-cve-2020-7980-rce.yml
│ ├── seacms-before-v992-rce.yml
│ ├── seacms-rce.yml
│ ├── seacms-sqli.yml
│ ├── seacms-v654-rce.yml
│ ├── seacmsv645-command-exec.yml
│ ├── secnet-ac-default-password.yml
│ ├── seeyon-a6-employee-info-leak.yml
│ ├── seeyon-a6-test-jsp-sql.yml
│ ├── seeyon-ajax-unauthorized-access.yml
│ ├── seeyon-cnvd-2020-62422-readfile.yml
│ ├── seeyon-oa-a8-m-information-disclosure.yml
│ ├── seeyon-oa-cookie-leak.yml
│ ├── seeyon-session-leak.yml
│ ├── seeyon-setextno-jsp-sql.yml
│ ├── seeyon-unauthoried.yml
│ ├── seeyon-wooyun-2015-0108235-sqli.yml
│ ├── seeyon-wooyun-2015-148227.yml
│ ├── shiro-key.yml
│ ├── shiziyu-cms-apicontroller-sqli.yml
│ ├── shopxo-cnvd-2021-15822.yml
│ ├── showdoc-default-password.yml
│ ├── showdoc-uploadfile.yml
│ ├── skywalking-cve-2020-9483-sqli.yml
│ ├── solarwinds-cve-2020-10148.yml
│ ├── solr-cve-2017-12629-xxe.yml
│ ├── solr-cve-2019-0193.yml
│ ├── solr-fileread.yml
│ ├── solr-velocity-template-rce.yml
│ ├── sonarqube-cve-2020-27986-unauth.yml
│ ├── sonicwall-ssl-vpn-rce.yml
│ ├── spark-api-unauth.yml
│ ├── spark-webui-unauth.yml
│ ├── spon-ip-intercom-ping-rce.yml
│ ├── spring-actuator-heapdump-file.yml
│ ├── spring-cloud-cve-2020-5405.yml
│ ├── spring-cloud-cve-2020-5410.yml
│ ├── spring-core-rce.yml
│ ├── spring-cve-2016-4977.yml
│ ├── springboot-cve-2021-21234.yml
│ ├── springboot-env-unauth.yml
│ ├── springcloud-cve-2019-3799.yml
│ ├── sql-file.yml
│ ├── struts2-045.yml
│ ├── struts2-046-1.yml
│ ├── supervisord-cve-2017-11610.yml
│ ├── swagger-ui-unauth.yml
│ ├── tamronos-iptv-rce.yml
│ ├── telecom-gateway-default-password.yml
│ ├── tensorboard-unauth.yml
│ ├── terramaster-cve-2020-15568.yml
│ ├── terramaster-tos-rce-cve-2020-28188.yml
│ ├── thinkadmin-v6-readfile.yml
│ ├── thinkcmf-lfi.yml
│ ├── thinkcmf-write-shell.yml
│ ├── thinkphp-v6-file-write.yml
│ ├── thinkphp5-controller-rce.yml
│ ├── thinkphp5023-method-rce.yml
│ ├── tianqing-info-leak.yml
│ ├── tomcat-cve-2017-12615-rce.yml
│ ├── tomcat-cve-2018-11759.yml
│ ├── tomcat-manager-weak.yml
│ ├── tongda-insert-sql-inject.yml
│ ├── tongda-meeting-unauthorized-access.yml
│ ├── tongda-oa-v11.9-api.ali.php-upload.yml
│ ├── tongda-user-session-disclosure.yml
│ ├── tongda-v2017-uploadfile.yml
│ ├── tpshop-directory-traversal.yml
│ ├── tpshop-sqli.yml
│ ├── tvt-nvms-1000-file-read-cve-2019-20085.yml
│ ├── typecho-rce.yml
│ ├── ueditor-cnvd-2017-20077-file-upload.yml
│ ├── uwsgi-cve-2018-7490.yml
│ ├── vbulletin-cve-2019-16759-bypass.yml
│ ├── vbulletin-cve-2019-16759.yml
│ ├── vmware-vcenter-arbitrary-file-read.yml
│ ├── vmware-vcenter-cve-2021-21985-rce.yml
│ ├── vmware-vcenter-unauthorized-rce-cve-2021-21972.yml
│ ├── vmware-vrealize-cve-2021-21975-ssrf.yml
│ ├── weaver-E-Cology-getSqlData-sqli.yml
│ ├── weaver-ebridge-file-read.yml
│ ├── weaver-oa-eoffice-v9-upload-getshell.yml
│ ├── weblogic-console-weak.yml
│ ├── weblogic-cve-2017-10271.yml
│ ├── weblogic-cve-2019-2725.yml
│ ├── weblogic-cve-2019-2729-1.yml
│ ├── weblogic-cve-2019-2729-2.yml
│ ├── weblogic-cve-2020-14750.yml
│ ├── weblogic-ssrf.yml
│ ├── webmin-cve-2019-15107-rce.yml
│ ├── weiphp-path-traversal.yml
│ ├── weiphp-sql.yml
│ ├── wifisky-default-password-cnvd-2021-39012.yml
│ ├── wordpress-cve-2019-19985-infoleak.yml
│ ├── wordpress-ext-adaptive-images-lfi.yml
│ ├── wordpress-ext-mailpress-rce.yml
│ ├── wuzhicms-v410-sqli.yml
│ ├── xdcms-sql.yml
│ ├── xiuno-bbs-cvnd-2019-01348-reinstallation.yml
│ ├── xunchi-cnvd-2020-23735-file-read.yml
│ ├── yapi-rce.yml
│ ├── yccms-rce.yml
│ ├── yonyou-grp-u8-sqli-to-rce.yml
│ ├── yonyou-grp-u8-sqli.yml
│ ├── yonyou-nc-arbitrary-file-upload.yml
│ ├── yonyou-nc-bsh-servlet-bshservlet-rce.yml
│ ├── yonyou-u8-oa-sqli.yml
│ ├── youphptube-encoder-cve-2019-5127.yml
│ ├── youphptube-encoder-cve-2019-5128.yml
│ ├── youphptube-encoder-cve-2019-5129.yml
│ ├── yungoucms-sqli.yml
│ ├── zabbix-authentication-bypass.yml
│ ├── zabbix-cve-2016-10134-sqli.yml
│ ├── zabbix-default-password.yml
│ ├── zcms-v3-sqli.yml
│ ├── zeit-nodejs-cve-2020-5284-directory-traversal.yml
│ ├── zeroshell-cve-2019-12725-rce.yml
│ ├── zimbra-cve-2019-9670-xxe.yml
│ └── zzcms-zsmanage-sqli.yml
├── go.mod
├── go.sum
├── image
├── 1.png
├── 2.0-1.png
├── 2.0-2.png
├── 2.png
├── 2020-12-12-13-34-44.png
├── 3.png
├── 4.png
├── 5.png
├── gpt-4o
│ ├── 4o-1.png
│ ├── 4o-2.png
│ ├── 4o-3.png
│ ├── 4o-4.png
│ ├── 4o-5.png
│ ├── 4o-6.png
│ ├── 4o-7.png
│ ├── 4o-8.png
│ └── final.png
├── live.png
├── netbios.png
├── netbios1.png
└── sponsor.png
└── main.go
/.gitignore:
--------------------------------------------------------------------------------
1 | result.txt
2 | main
3 | .idea
4 | fscan.exe
5 | fscan
6 | makefile
7 | fscanapi.csv
8 |
--------------------------------------------------------------------------------
/Plugins/DCInfoUnix.go:
--------------------------------------------------------------------------------
1 | //go:build !windows
2 |
3 | package Plugins
4 |
5 | import "github.com/shadow1ng/fscan/Common"
6 |
7 | func DCInfoScan(info *Common.HostInfo) (err error) {
8 | return nil
9 | }
10 |
--------------------------------------------------------------------------------
/Plugins/MiniDumpUnix.go:
--------------------------------------------------------------------------------
1 | //go:build !windows
2 |
3 | package Plugins
4 |
5 | import "github.com/shadow1ng/fscan/Common"
6 |
7 | func MiniDump(info *Common.HostInfo) (err error) {
8 | return nil
9 | }
10 |
--------------------------------------------------------------------------------
/Plugins/WebPoc.go:
--------------------------------------------------------------------------------
1 | package Plugins
2 |
3 | import (
4 | "github.com/shadow1ng/fscan/Common"
5 | "github.com/shadow1ng/fscan/WebScan"
6 | )
7 |
8 | // WebPoc 直接执行Web漏洞扫描
9 | func WebPoc(info *Common.HostInfo) error {
10 | if Common.DisablePocScan {
11 | return nil
12 | }
13 | WebScan.WebScan(info)
14 | return nil
15 | }
16 |
--------------------------------------------------------------------------------
/TestDocker/ActiveMQ/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM rmohr/activemq:5.15.9
2 |
3 | # 复制配置文件
4 | COPY users.properties /opt/activemq/conf/users.properties
5 | COPY activemq.xml /opt/activemq/conf/activemq.xml
6 |
7 | # 暴露端口
8 | EXPOSE 61616 61613
9 |
10 | # 设置启动命令
11 | CMD ["/opt/activemq/bin/activemq", "console"]
--------------------------------------------------------------------------------
/TestDocker/ActiveMQ/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t activemq-weak .
2 | docker run -d --name activemq-test -p 61616:61616 -p 8161:8161 -p 61613:61613 activemq-weak
--------------------------------------------------------------------------------
/TestDocker/ActiveMQ/users.properties:
--------------------------------------------------------------------------------
1 | admin=Aa123456789
2 | test=test123
3 | root=root123
4 | system=admin123
--------------------------------------------------------------------------------
/TestDocker/Cassandra/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t cassandra-weak .
2 | docker run -d --name cassandra-test -e CASSANDRA_AUTHENTICATOR=AllowAllAuthenticator -p 9042:9042 -p 9160:9160 cassandra:3.11
--------------------------------------------------------------------------------
/TestDocker/Elasticsearch/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM docker.elastic.co/elasticsearch/elasticsearch:7.9.3
2 |
3 | # 设置环境变量允许单节点运行
4 | ENV discovery.type=single-node
5 |
6 | # 允许任意IP访问
7 | ENV network.host=0.0.0.0
8 |
9 | # 设置弱密码
10 | ENV ELASTIC_PASSWORD=elastic123
11 |
12 | # 暴露端口
13 | EXPOSE 9200 9300
14 |
15 | # 设置默认用户名elastic和密码elastic123
16 | RUN echo 'elastic:elastic123' > /usr/share/elasticsearch/config/users
17 |
18 | # 关闭xpack安全功能,使其可以无认证访问
19 | RUN echo 'xpack.security.enabled: false' >> /usr/share/elasticsearch/config/elasticsearch.yml
--------------------------------------------------------------------------------
/TestDocker/Elasticsearch/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t elastic-test .
2 | docker run -d -p 9200:9200 -p 9300:9300 elastic-test
--------------------------------------------------------------------------------
/TestDocker/FTP/README.txt:
--------------------------------------------------------------------------------
1 | docker run -d -p 20:20 -p 21:21 -e FTP_USER=admin -e FTP_PASS=123456 -e PASV_ADDRESS=127.0.0.1 --name ftp bogem/ftp
2 | Mac上可能有问题
--------------------------------------------------------------------------------
/TestDocker/IMAP/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t weak-imap .
2 | docker run -d --name imap-test -p 143:143 -p 993:993 weak-imap
--------------------------------------------------------------------------------
/TestDocker/Kafka/README.txt:
--------------------------------------------------------------------------------
1 | docker-compose up -d
--------------------------------------------------------------------------------
/TestDocker/Kafka/kafka_jaas.conf:
--------------------------------------------------------------------------------
1 | KafkaServer {
2 | org.apache.kafka.common.security.plain.PlainLoginModule required
3 | username="admin"
4 | password="admin123"
5 | user_admin="admin123"
6 | user_test="test123"
7 | user_kafka="kafka123";
8 | };
--------------------------------------------------------------------------------
/TestDocker/LDAP/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM osixia/openldap:1.5.0
2 |
3 | # 环境变量设置
4 | ENV LDAP_ORGANISATION="Example Inc"
5 | ENV LDAP_DOMAIN="example.com"
6 | ENV LDAP_BASE_DN="dc=example,dc=com"
7 | # 设置一个弱密码
8 | ENV LDAP_ADMIN_PASSWORD="Aa123456789"
9 | # 允许匿名访问
10 | ENV LDAP_READONLY_USER="true"
11 | ENV LDAP_READONLY_USER_USERNAME="readonly"
12 | ENV LDAP_READONLY_USER_PASSWORD="readonly"
13 |
14 | # 暴露端口
15 | EXPOSE 389 636
16 |
17 | # 创建初始化脚本
18 | COPY bootstrap.ldif /container/service/slapd/assets/config/bootstrap/ldif/custom/
--------------------------------------------------------------------------------
/TestDocker/LDAP/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t ldap-weak .
2 | docker run -d --name ldap-test -p 389:389 -p 636:636 ldap-weak
--------------------------------------------------------------------------------
/TestDocker/LDAP/bootstrap.ldif:
--------------------------------------------------------------------------------
1 | dn: ou=users,dc=example,dc=com
2 | objectClass: organizationalUnit
3 | ou: users
4 |
5 | dn: cn=admin,ou=users,dc=example,dc=com
6 | objectClass: inetOrgPerson
7 | cn: admin
8 | sn: admin
9 | uid: admin
10 | userPassword: admin123
11 |
12 | dn: cn=test,ou=users,dc=example,dc=com
13 | objectClass: inetOrgPerson
14 | cn: test
15 | sn: test
16 | uid: test
17 | userPassword: test123
18 |
19 | dn: cn=root,ou=users,dc=example,dc=com
20 | objectClass: inetOrgPerson
21 | cn: root
22 | sn: root
23 | uid: root
24 | userPassword: root123
--------------------------------------------------------------------------------
/TestDocker/MSSQL/Dockerfile:
--------------------------------------------------------------------------------
1 | # 使用SQL Server官方镜像
2 | FROM mcr.microsoft.com/mssql/server:2022-latest
3 |
4 | # 设置环境变量
5 | ENV ACCEPT_EULA=Y
6 | ENV MSSQL_SA_PASSWORD=P@ssword123
7 | ENV MSSQL_PID=Express
8 |
9 | # 开放1433端口
10 | EXPOSE 1433
11 |
12 | # 健康检查
13 | HEALTHCHECK --interval=30s --timeout=3s \
14 | CMD /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P P@ssword123 -Q "SELECT 1" || exit 1
--------------------------------------------------------------------------------
/TestDocker/MSSQL/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t mssql-server .
2 | docker run -d \
3 | -p 1433:1433 \
4 | --name mssql-container \
5 | mssql-server
--------------------------------------------------------------------------------
/TestDocker/Memcached/Dockerfile:
--------------------------------------------------------------------------------
1 | # 使用Memcached官方镜像
2 | FROM memcached:latest
3 |
4 | # 开放11211端口
5 | EXPOSE 11211
6 |
7 | # 设置启动参数
8 | # -m 64: 分配64MB内存
9 | # -c 1024: 最大同时连接数1024
10 | # -v: 显示版本信息
11 | CMD ["memcached", "-m", "64", "-c", "1024", "-v"]
--------------------------------------------------------------------------------
/TestDocker/Memcached/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t memcached-server .
2 | docker run -d \
3 | -p 11211:11211 \
4 | --name memcached-container \
5 | memcached-server
--------------------------------------------------------------------------------
/TestDocker/Modbus/README.txt:
--------------------------------------------------------------------------------
1 | docker run --rm -p 5020:5020 oitc/modbus-server:latest
--------------------------------------------------------------------------------
/TestDocker/Mongodb/Dockerfile:
--------------------------------------------------------------------------------
1 | # 使用MongoDB官方镜像
2 | FROM mongo:latest
3 |
4 | # 设置环境变量
5 | ENV MONGO_INITDB_ROOT_USERNAME=admin
6 | ENV MONGO_INITDB_ROOT_PASSWORD=123456
7 |
8 | # 开放27017端口
9 | EXPOSE 27017
10 |
11 | # 健康检查
12 | HEALTHCHECK --interval=30s --timeout=3s \
13 | CMD mongosh --eval 'db.runCommand("ping").ok' localhost:27017/test --quiet
--------------------------------------------------------------------------------
/TestDocker/Mongodb/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t mongodb-server .
2 | docker run -d \
3 | -p 27017:27017 \
4 | --name mongodb-container \
5 | mongodb-server
--------------------------------------------------------------------------------
/TestDocker/MySQL/Dockerfile:
--------------------------------------------------------------------------------
1 | # 使用MySQL官方镜像
2 | FROM mysql:latest
3 |
4 | # 设置环境变量
5 | ENV MYSQL_ROOT_PASSWORD=Password
6 | ENV MYSQL_DATABASE=mydb
7 |
8 | # 开放3306端口
9 | EXPOSE 3306
10 |
11 | # MySQL配置
12 | # 允许远程访问
13 | COPY my.cnf /etc/mysql/conf.d/my.cnf
14 |
15 | # 健康检查
16 | HEALTHCHECK --interval=30s --timeout=3s \
17 | CMD mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" -e "SELECT 1" || exit 1
--------------------------------------------------------------------------------
/TestDocker/MySQL/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t mysql-server .
2 | docker run -d -p 3306:3306 --name mysql-container mysql-server
--------------------------------------------------------------------------------
/TestDocker/MySQL/my.cnf:
--------------------------------------------------------------------------------
1 | [mysqld]
2 | bind-address = 0.0.0.0
--------------------------------------------------------------------------------
/TestDocker/Neo4j/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM neo4j:4.4
2 |
3 | ENV NEO4J_AUTH=neo4j/123456
4 | ENV NEO4J_dbms_security_procedures_unrestricted=apoc.*
5 | ENV NEO4J_dbms_security_auth_enabled=true
6 |
7 | EXPOSE 7474 7687
8 |
9 | CMD ["neo4j"]
--------------------------------------------------------------------------------
/TestDocker/Neo4j/docker-compose.yml:
--------------------------------------------------------------------------------
1 | version: '3'
2 | services:
3 | neo4j:
4 | image: neo4j:4.4
5 | ports:
6 | - "7474:7474"
7 | - "7687:7687"
8 | environment:
9 | - NEO4J_AUTH=neo4j/123456
10 | - NEO4J_dbms_security_auth_enabled=true
11 | container_name: neo4j-weak
--------------------------------------------------------------------------------
/TestDocker/Oracle/Dockerfile:
--------------------------------------------------------------------------------
1 | # 使用Oracle官方容器镜像
2 | FROM container-registry.oracle.com/database/express:21.3.0-xe
3 |
4 | # 设置环境变量
5 | ENV ORACLE_PWD=123456
6 | ENV ORACLE_CHARACTERSET=AL32UTF8
7 |
8 | # 开放1521端口
9 | EXPOSE 1521 5500
10 |
11 | # 健康检查
12 | HEALTHCHECK --interval=30s --timeout=30s --start-period=5m --retries=3 \
13 | CMD nc -z localhost 1521 || exit 1
--------------------------------------------------------------------------------
/TestDocker/Oracle/README.txt:
--------------------------------------------------------------------------------
1 | 首先需要在Oracle Container Registry网站注册并接受许可协议:
2 | https://container-registry.oracle.com
3 |
4 | docker login container-registry.oracle.com
5 |
6 | docker build -t oracle-db .
7 |
8 | docker run -d \
9 | -p 1521:1521 \
10 | --name oracle-container \
11 | oracle-db
--------------------------------------------------------------------------------
/TestDocker/POP3/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t pop3-test .
2 | docker run -d --name pop3-server -p 110:110 -p 995:995 pop3-test
--------------------------------------------------------------------------------
/TestDocker/Postgre/Dockerfile:
--------------------------------------------------------------------------------
1 | # 使用PostgreSQL官方镜像
2 | FROM postgres:latest
3 |
4 | # 设置环境变量
5 | ENV POSTGRES_USER=postgres
6 | ENV POSTGRES_PASSWORD=123456
7 | ENV POSTGRES_DB=mydb
8 |
9 | # 开放5432端口
10 | EXPOSE 5432
11 |
12 | # 健康检查
13 | HEALTHCHECK --interval=30s --timeout=3s \
14 | CMD pg_isready -U postgres || exit 1
--------------------------------------------------------------------------------
/TestDocker/Postgre/README.md:
--------------------------------------------------------------------------------
1 | docker build -t postgres-server .
2 | docker run -d \
3 | -p 5432:5432 \
4 | --name postgres-container \
5 | postgres-server
--------------------------------------------------------------------------------
/TestDocker/RabbitMQ/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM rabbitmq:3-management
2 |
3 | # 环境变量设置默认的用户名和密码
4 | ENV RABBITMQ_DEFAULT_USER=admin
5 | ENV RABBITMQ_DEFAULT_PASS=123456
6 |
7 | # 开放标准端口
8 | # 5672: AMQP 协议端口
9 | # 15672: HTTP API 端口和管理UI
10 | EXPOSE 5672 15672
--------------------------------------------------------------------------------
/TestDocker/RabbitMQ/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t rabbitmq-weak .
2 | docker run -d --name rabbitmq-test -p 5672:5672 -p 15672:15672 rabbitmq-weak
--------------------------------------------------------------------------------
/TestDocker/Redis/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t redis-server .
2 | docker run -d \
3 | -p 6379:6379 \
4 | --name redis-container \
5 | redis-server
--------------------------------------------------------------------------------
/TestDocker/Redis/redis.conf:
--------------------------------------------------------------------------------
1 | bind 0.0.0.0
2 | port 6379
3 | protected-mode no
4 | dir /data
5 | daemonize no
--------------------------------------------------------------------------------
/TestDocker/Rsync/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t rsync-test .
2 | docker run -d --name rsync-server -p 873:873 rsync-test
--------------------------------------------------------------------------------
/TestDocker/SMTP/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t smtp-weak .
2 | docker run -d --name smtp-test -p 25:25 smtp-weak
--------------------------------------------------------------------------------
/TestDocker/SMTP/start.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | service postfix start
3 | tail -f /var/log/mail.log
--------------------------------------------------------------------------------
/TestDocker/SNMP/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM ubuntu:20.04
2 |
3 | # 安装SNMP服务
4 | RUN apt-get update && \
5 | DEBIAN_FRONTEND=noninteractive apt-get install -y snmpd && \
6 | rm -rf /var/lib/apt/lists/*
7 |
8 | # 备份原配置
9 | RUN cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.orig
10 |
11 | # 创建新的配置文件
12 | RUN echo "rocommunity public default" > /etc/snmp/snmpd.conf && \
13 | echo "rocommunity private default" >> /etc/snmp/snmpd.conf && \
14 | echo "rocommunity cisco default" >> /etc/snmp/snmpd.conf && \
15 | echo "rocommunity community default" >> /etc/snmp/snmpd.conf && \
16 | # 允许从任何地址访问
17 | echo "agentAddress udp:161,udp6:[::1]:161" >> /etc/snmp/snmpd.conf
18 |
19 | # 开放SNMP端口
20 | EXPOSE 161/udp
21 |
22 | # 启动SNMP服务
23 | CMD ["snmpd", "-f", "-Lo", "-C", "-c", "/etc/snmp/snmpd.conf"]
--------------------------------------------------------------------------------
/TestDocker/SNMP/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t snmp-weak .
2 | docker run -d --name snmp-test -p 161:161/udp snmp-weak
--------------------------------------------------------------------------------
/TestDocker/SSH/Dockerfile:
--------------------------------------------------------------------------------
1 | # 使用Ubuntu最新版本作为基础镜像
2 | FROM ubuntu:latest
3 |
4 | # 安装必要的软件包
5 | RUN apt-get update && apt-get install -y \
6 | openssh-server \
7 | && rm -rf /var/lib/apt/lists/*
8 |
9 | # 创建SSH所需的目录
10 | RUN mkdir /var/run/sshd
11 |
12 | # 允许root用户SSH登录并设置密码
13 | RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
14 | RUN echo 'root:Aa123456789' | chpasswd
15 |
16 | # 开放22端口
17 | EXPOSE 22
18 |
19 | # 启动SSH服务
20 | CMD ["/usr/sbin/sshd", "-D"]
--------------------------------------------------------------------------------
/TestDocker/SSH/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t ubuntu-ssh .
2 | docker run -d -p 2222:22 ubuntu-ssh
--------------------------------------------------------------------------------
/TestDocker/Telnet/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM busybox:latest
2 |
3 | # 安装必要的包
4 | RUN ["busybox", "telnetd", "--help"]
5 |
6 | # 创建测试用户
7 | RUN adduser -D -h /home/test test && \
8 | echo "test:123456" | chpasswd
9 |
10 | # 创建弱密码管理员
11 | RUN adduser -D -h /home/admin admin && \
12 | echo "admin:admin" | chpasswd
13 |
14 | # 暴露 Telnet 端口
15 | EXPOSE 23
16 |
17 | # 启动 Telnet 服务
18 | CMD ["busybox", "telnetd", "-F", "-l", "/bin/sh"]
--------------------------------------------------------------------------------
/TestDocker/Telnet/README.md:
--------------------------------------------------------------------------------
1 | docker build -t telnet-test .
2 | docker run -d -p 23:23 --name telnet-server telnet-test
--------------------------------------------------------------------------------
/TestDocker/Tomcat/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM tomcat:9.0-jdk8
2 |
3 | # 删除默认应用
4 | RUN rm -rf /usr/local/tomcat/webapps/*
5 |
6 | # 复制tomcat-users.xml配置文件
7 | COPY tomcat-users.xml /usr/local/tomcat/conf/
8 |
9 | # 允许远程访问manager
10 | COPY context.xml /usr/local/tomcat/webapps.dist/manager/META-INF/
11 | COPY context.xml /usr/local/tomcat/webapps.dist/host-manager/META-INF/
12 |
13 | # 复制默认应用
14 | RUN cp -r /usr/local/tomcat/webapps.dist/* /usr/local/tomcat/webapps/
15 |
16 | EXPOSE 8080
17 | CMD ["catalina.sh", "run"]
--------------------------------------------------------------------------------
/TestDocker/Tomcat/README.txt:
--------------------------------------------------------------------------------
1 | docker build -t tomcat-weak .
2 | docker run -d --name tomcat-test -p 8080:8080 tomcat-weak
--------------------------------------------------------------------------------
/TestDocker/Tomcat/context.xml:
--------------------------------------------------------------------------------
1 |
2 |