.. raw:: html
.. image:: ./pictures/logo.png
.. raw:: html
.. image:: https://img.shields.io/badge/python-3.6-blue.svg :target: https://www.python.org/downloads/release/python-366/ :alt: Python 3.6
.. image:: https://readthedocs.org/projects/jok3r/badge/?version=latest :target: https://jok3r.readthedocs.io/en/latest/ :alt: Documentation ReadTheDocs
.. image:: https://img.shields.io/microbadger/image-size/koutto/jok3r.svg :target: https://hub.docker.com/r/koutto/jok3r/ :alt: Docker Size
.. image:: https://img.shields.io/docker/cloud/build/koutto/jok3r.svg :alt: Docker Build Status
.. raw:: html
警告:项目仍处于v3 Beta版本。仍在积极开发中,可能存在错误。
大量测试正在进行中:详见 https://github.com/koutto/jok3r/blob/master/tests/TESTS.rst。欢迎提出想法、报告错误、贡献代码!
.. contents:: :local: :depth: 1
Jok3r 是一个 Python3 CLI 应用程序,旨在帮助渗透测试人员进行网络基础设施和Web黑盒安全测试。
目标是在网络/Web渗透测试中尽可能节省时间,通过自动化尽可能多的安全测试来快速识别低挂果漏洞,从而将更多时间用于更有趣和棘手的事情!
它基于这样一个观察结果:目前存在许多针对常见网络服务的黑客开源工具/脚本(来自各种来源),可以执行从指纹识别到利用的各种任务。因此,Jok3r 的想法是将这些开源工具以智能方式组合起来,以获取更相关的成果。
.. image:: pictures/video-01.png :target: https://www.youtube.com/watch?v=FlbeBj5FPtI
.. image:: pictures/video-02.png :target: https://www.youtube.com/watch?v=z4cf_8EQ59Q
.. image:: ./pictures/visio/architecture/jok3r-architecture.png :alt: Jok3r架构
.. image:: ./pictures/visio/flowchart/jok3r-flow-chart.svg :width: 700px :alt: Jok3r流程图
重要提示:推荐使用Jok3r的方式是拉取Docker镜像,这样您无需担心依赖问题和安装工具箱中的各种黑客工具。所有测试均基于Docker Hub提供的容器进行!
.. image:: https://raw.githubusercontent.com/koutto/jok3r/master/pictures/docker-logo.png
Docker镜像可在Docker Hub获取,每次更新后自动重新构建:https://hub.docker.com/r/koutto/jok3r/。该镜像最初基于官方Kali Linux Docker镜像(kalilinux/kali-linux-docker)。
.. image:: https://images.microbadger.com/badges/image/koutto/jok3r.svg :target: https://microbadger.com/images/koutto/jok3r :alt: Docker镜像大小
拉取Jok3r Docker镜像:
.. code-block:: console
sudo docker pull koutto/jok3r
运行新的Docker容器:
.. code-block:: console
sudo docker run -i -t --name jok3r-container -w /root/jok3r -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --shm-size 2g --net=host koutto/jok3r
注意:
-e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix 是为了能够在Docker容器中启动GUI应用程序(例如打开Web浏览器查看报告)。需要在主机上运行 xhost +local:root。
--shm-size 2g 用于增加共享内存大小,避免在Docker容器中阅读报告时浏览器崩溃。
--net=host 用于共享主机接口,这是反向连接所必需的(例如,测试RCE时向容器发送Ping、获取反向Shell)。
重新启动已停止的容器:
.. code-block:: console
sudo docker start -i jok3r-container
在容器内打开多个Shell:
.. code-block:: console
sudo docker exec -it jok3r-container bash
要更新,只需从Docker Hub拉取最新的Docker镜像,然后从该新镜像运行一个新容器:
.. code-block:: console
sudo docker pull koutto/jok3r
sudo docker run -i -t --name jok3r-container-updated -w /root/jok3r -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --shm-size 2g --net=host koutto/jok3r
注意:当然,您可以通过命令 sudo docker cp 从旧容器中检索本地数据库 local.db(包含已保存的任务、目标等)。
.. code-block:: console
python3 jok3r.py toolbox --show-all
.. code-block:: console
python3 jok3r.py toolbox --install-all --auto
.. code-block:: console
python3 jok3r.py toolbox --update-all
.. code-block:: console
python3 jok3r.py toolbox --update-all --auto
.. code-block:: console
python3 jok3r.py info --services
.. code-block:: console
python3 jok3r.py info --checks <service>
.. code-block:: console
python3 jok3r.py info --attack-profiles <service>
.. code-block:: console
python3 jok3r.py info --products
在本地数据库中创建新任务:
.. code-block:: console
python3 jok3r.py db
jok3rdb[default]> mission -a mayhem
[+] 任务 "mayhem" 已成功添加
[*] 当前选中任务为 mayhem
jok3rdb[mayhem]>
单个目标:
.. code-block:: console
python3 jok3r.py attack -t https://www.example.com/ --add2db mayhem
.. code-block:: console
python3 jok3r.py attack -t 192.168.1.42:1433 -s mssql --add2db mayhem --fast
.. code-block:: console
python3 jok3r.py attack -t 192.168.1.142:21 -s ftp --cat-only recon,vulnscan --add2db mayhem
多个目标:
.. code-block:: console
python3 jok3r.py attack -m mayhem --profile red-team --fast
.. code-block:: console
python3 jok3r.py attack -m mayhem --fast
.. code-block:: console
python3 jok3r.py attack -m mayhem -f "port=21,2121;service=ftp" --fast
.. code-block:: console
python3 jok3r.py attack -m mayhem -f "port=2121;service=ftp" -f "ip=192.168.1.42;service=http"
.. code-block:: console
python3 jok3r.py db
jok3rdb[default]> mission mayhem
[*] 当前选中任务为 mayhem
.. code-block:: console
jok3rdb[mayhem]> nmap results.xml
.. code-block:: console
jok3rdb[mayhem]> shodan ip
.. code-block:: console
jok3rdb[mayhem]> services
jok3rdb[mayhem]> hosts
jok3rdb[mayhem]> products
jok3rdb[mayhem]> creds
.. code-block:: console
jok3rdb[mayhem]> results --search '<search_string>'
.. code-block:: console
jok3rdb[mayhem]> vulns
.. code-block:: console
jok3rdb[mayhem]> report
假设您开始一个渗透测试,包含若干服务器。以下是使用JoK3r的典型示例:
对范围内的服务器运行Nmap扫描。
在本地数据库中创建一个新任务(例如"mayhem"):
.. code-block:: console
python3 jok3r.py db
jok3rdb[default]> mission -a mayhem
[+] 任务 "mayhem" 已成功添加
[*] 当前选中任务为 mayhem
jok3rdb[mayhem]>
3. 将Nmap扫描结果导入数据库:
.. code-block:: console
jok3rdb[mayhem]> nmap results.xml
4. 然后可以快速概览范围内所有服务和主机,添加注释,如果对目标已有一些了解(灰盒渗透测试)则添加一些凭据等。
.. code-block:: console
jok3rdb[mayhem]> hosts
[...]
jok3rdb[mayhem]> services
[...]
5. 现在,可以对范围内的某些目标运行安全检查。例如,要针对范围内所有Java-RMI服务运行检查,可以执行以下命令:
.. code-block:: console
python3 jok3r.py attack -m mayhem -f "service=java-rmi" --fast
6. 可以通过实时输出查看安全检查的完整结果,也可以稍后使用以下命令从数据库中查看:
.. code-block:: console
jok3rdb[mayhem]> results
7. 随时可以显示从安全检查输出中自动提取的数据,即检测到的产品、凭据和漏洞。
.. code-block:: console
jok3rdb[mayhem]> products
[...]
jok3rdb[mayhem]> creds
[...]
jok3rdb[mayhem]> vulns
[...]
8. 随时可以生成HTML报告,其中包含任务范围内所有目标的摘要、HTTP服务的网页截图以及所有已运行安全检查的完整输出:
.. code-block:: console
jok3rdb[mayhem]> report
文档编写中...
更新日期:2019年7月12日
仍有大量检查待实现,服务需陆续添加!!工作持续进行中……
AJP(默认8009/tcp)_FTP(默认21/tcp)_HTTP(默认80/tcp)_Java-RMI(默认1099/tcp)_JDWP(默认9000/tcp)_MSSQL(默认1433/tcp)_MySQL(默认3306/tcp)_Oracle(默认1521/tcp)_PostgreSQL(默认5432/tcp)_RDP(默认3389/tcp)_SMB(默认445/tcp)_SMTP(默认25/tcp)_SNMP(默认161/udp)_SSH(默认22/tcp)_.. code-block:: console
+------------------------+--------------+--------------------------------------------------------------------------+-------------------+
| Name | Category | Description | Tool used |
+------------------------+--------------+--------------------------------------------------------------------------+-------------------+
.. code-block:: console
+-------------------+--------------+--------------------------------------------------------------------------+-------------------+
| Name | Category | Description | Tool used |
+-------------------+--------------+--------------------------------------------------------------------------+-------------------+
.. code-block:: console
+------------------------+--------------+--------------------------------------------------------------------------+-------------------++------------------------------------------+--------------+------------------------------------------------------------------------------------------------+-------------------------------+
| 名称 | 分类 | 描述 | 使用的工具 | +------------------------------------------+--------------+------------------------------------------------------------------------------------------------+-------------------------------+ | nmap-recon | 侦察 | 使用 Nmap HTTP 脚本进行侦察 | nmap | | load-balancing-detection | 侦察 | HTTP 负载均衡器检测 | halberd | | waf-detection | 侦察 | 识别并指纹识别保护网站的 WAF 产品 | wafw00f | | waf-detection2 | 侦察 | 识别并指纹识别保护网站的 WAF 产品 | identifywaf | | cloudmare-recon | 侦察 | CloudFlare 真实 IP 捕捉器 | cloudmare | | fingerprinting-multi-whatweb | 侦察 | 识别 CMS、博客平台、JS 库、Web 服务器等 | whatweb | | fingerprinting-appserver | 侦察 | 指纹识别应用服务器(JBoss、ColdFusion、Weblogic、Tomcat、Railo、Axis2、Glassfish) | clusterd | | webdav-detection-msf | 侦察 | 检测 Web 服务器上的 WebDAV | metasploit | | fingerprinting-multi-wig | 侦察 | 指纹识别多个 CMS 和 Web/应用服务器 | wig | | fingerprinting-cms-cmseek | 侦察 | 检测 CMS(支持 130+)、检测 Drupal 版本、对 WordPress/Joomla 进行高级扫描 | cmseek | | fingerprinting-cms-fingerprinter | 侦察 | 精确指纹识别 CMS 版本(基于文件校验和) | fingerprinter | | fingerprinting-drupal | 侦察 | 指纹识别 Drupal 7/8:枚举用户、节点、默认文件、模块、主题 | drupwn | | fingerprinting-domino | 侦察 | 指纹识别 IBM/Lotus Domino 软件 | domiowned | | crawling-fast | 侦察 | 快速爬取网站,分析感兴趣的文件/目录 | dirhunt | | crawling-fast2 | 侦察 | 爬取网站并提取 URL、文件、情报及端点 | photon | | vulners-lookup | 漏洞查询 | 在 Vulners.com 上查找漏洞(语言、框架、JS 库、CMS、服务器、应用服务器) | vulners-lookup | | cvedetails-lookup | 漏洞查询 | 在 Cvedetails.com 上查找漏洞(语言、框架、JS 库、CMS、服务器、应用服务器) | cvedetails-lookup | | default-creds-web-multi | 默认凭证 | 检查各种 Web 接口上的默认凭据 | changeme | | default-creds-appserver | 默认凭证 | 检查应用服务器上的默认/常见凭据 | web-brutator | | ssl-check | 漏洞扫描 | 检查 SSL/TLS 配置 | testssl | | headers-analysis | 漏洞扫描 | 检查 HTTP 头 | h2t | | vulnscan-multi-nikto | 漏洞扫描 | 检查多个 Web 漏洞/错误配置 | nikto | | webdav-scan-davscan | 漏洞扫描 | 扫描 HTTP WebDAV | davscan | | webdav-internal-ip-disclosure | 漏洞扫描 | 检查 WebDAV 内部 IP 泄露 | metasploit | | webdav-website-content | 漏洞扫描 | 检测通过 WebDAV 泄露其内容的 Web 服务器 | metasploit | | http-put-check | 漏洞扫描 | 检测危险 HTTP PUT 方法的支持 | metasploit | | apache-optionsbleed-check | 漏洞扫描 | 测试 Apache httpd 中的 Optionsbleed 漏洞(CVE-2017-9798) | optionsbleed | | shellshock-scan | 漏洞扫描 | 检测 Web 服务器是否易受 Shellshock 漏洞影响(CVE-2014-6271) | shocker | | iis-shortname-scan | 漏洞扫描 | 扫描 IIS 短文件名(8.3)泄露漏洞 | iis-shortname-scanner | | iis-internal-ip-disclosure | 漏洞扫描 | 检查 IIS 内部 IP 泄露 | metasploit | | tomcat-user-enum | 漏洞扫描 | 枚举 Tomcat 4.1.0-4.1.39、5.5.0-5.5.27 和 6.0.0-6.0.18 上的用户 | metasploit | | jboss-vulnscan-multi | 漏洞扫描 | 扫描 JBoss 应用服务器的多个漏洞 | metasploit | | jboss-status-infoleak | 漏洞扫描 | 查询 JBoss 状态 Servlet 以收集敏感信息(JBoss 4.0、4.2.2 和 4.2.3) | metasploit | | jenkins-infoleak | 漏洞扫描 | 以未认证方式枚举远程 Jenkins-CI 安装 | metasploit | | cms-multi-vulnscan-cmsmap | 漏洞扫描 | 检查 CMS WordPress、Drupal、Joomla 中的漏洞 | cmsmap | | wordpress-vulnscan | 漏洞扫描 | 扫描 CMS WordPress 中的漏洞 | wpscan | | wordpress-vulnscan2 | 漏洞扫描 | 扫描 CMS WordPress 中的漏洞 | wpseku | | joomla-vulnscan | 漏洞扫描 | 扫描 CMS Joomla 中的漏洞 | joomscan | | joomla-vulnscan2 | 漏洞扫描 | 扫描 CMS Joomla 中的漏洞 | joomlascan | | joomla-vulnscan3 | 漏洞扫描 | 扫描 CMS Joomla 中的漏洞 | joomlavs | | drupal-vulnscan | 漏洞扫描 | 扫描 CMS Drupal 中的漏洞 | droopescan | | magento-vulnscan | 漏洞扫描 | 检查 CMS Magento 中的错误配置(部分可用) | magescan | | silverstripe-vulnscan | 漏洞扫描 | 扫描 CMS Silverstripe 中的漏洞 | droopescan | | vbulletin-vulnscan | 漏洞扫描 | 扫描 CMS vBulletin 中的漏洞 | vbscan | | liferay-vulnscan | 漏洞扫描 | 扫描 CMS Liferay 中的漏洞 | liferayscan | | angularjs-csti-scan | 漏洞扫描 | 扫描 AngularJS 客户端模板注入 | angularjs-csti-scanner | | jquery-fileupload-rce-cve2018-9206 | 漏洞利用 | 利用 jQuery File Upload 小部件 <= 9.22 中的任意文件上传漏洞(CVE-2018-9206) | jqshell | | struts2-rce-cve2017-5638 | 漏洞利用 | 利用 Apache Struts2 Jakarta Multipart 解析器 RCE 漏洞(CVE-2017-5638) | jexboss | | struts2-rce-cve2017-9791 | 漏洞利用 | 利用 Apache Struts2 Plugin Showcase OGNL RCE 漏洞(CVE-2017-9791) | metasploit | | struts2-rce-cve2017-9805 | 漏洞利用 | 利用 Apache Struts2 REST 插件 XStream RCE 漏洞(CVE-2017-9805) | struts-pwn-cve2017-9805 | | struts2-rce-cve2018-11776 | 漏洞利用 | 利用 Apache Struts2 错误配置 RCE 漏洞(CVE-2018-11776) | struts-pwn-cve2018-11776 | | rails-rce-cve2019-5420 | 漏洞利用 | 在 Ruby on Rails 上利用文件内容泄露(CVE-2019-5418)+ RCE(CVE-2019-5420) | jok3r-pocs | | appserver-auth-bypass | 漏洞利用 | 尝试利用应用服务器的认证绕过漏洞 | clusterd | | tomcat-rce-cve2017-12617 | 漏洞利用 | Apache Tomcat JSP 上传绕过 RCE 漏洞利用(CVE-2017-12617) | jok3r-pocs | | jboss-misconfig-exploit | 漏洞利用 | 尝试利用 JBoss 应用服务器预认证错误配置(jmx|web|admin-console, JMXInvokerServlet) | jexboss | | jboss-path-traversal-cve2014-7816 | 漏洞利用 | 利用 Jboss Wildfly 8.1.0 的路径遍历漏洞(仅 Windows)(CVE-2014-7816) | metasploit | | jboss-deserialize-cve2015-7501 | 漏洞利用 | JBoss Deserialize RCE 漏洞利用(CVE-2015-7501) | jok3r-pocs | | glassfish-path-traversal-cve2017-1000028 | 漏洞利用 | 利用 Glassfish <= 4.1 的路径遍历漏洞(CVE-2017-1000028) | metasploit | | jenkins-unauthenticated-console | 漏洞利用 | 检测并利用未认证的 Jenkins-CI 脚本控制台 | metasploit | | jenkins-cli-deserialize-cve2015-8103 | 漏洞利用 | 在 Jenkins CLI RMI 中利用 Java 反序列化漏洞(未认证)(CVE-2015-8103) | jexboss | | jenkins-cli-deserialize2-cve2015-8103 | 漏洞利用 | 在 Jenkins CLI RMI 中利用 Java 反序列化漏洞(未认证)(CVE-2015-8103) | jok3r-pocs | | jenkins-groovy-xml-rce-cve2016-0792 | 漏洞利用 | 利用 Jenkins Groovy XML RCE 漏洞(CVE-2016-0792) | jok3r-pocs | | jenkins-deserialize-cve2017-1000353 | 漏洞利用 | 利用 Jenkins Java 反序列化 RCE 漏洞(CVE-2017-1000353) | jok3r-pocs | | jenkins-rce-cve2018-1000861 | 漏洞利用 | 利用 Jenkins 未认证 RCE 漏洞,通过方法调用实现(CVE-2018-1000861) | jok3r-pocs | | weblogic-t3-open-jdbc-datasource | 漏洞利用 | 通过 Weblogic T3(s) 列出可用 JNDI,并尝试通过开放 JDBC 数据源获取 SQL Shell | jndiat | | weblogic-t3-deserialize-cve2015-4852 | 漏洞利用 | 在 Weblogic T3(s) 中利用 Java 反序列化漏洞(未认证)(CVE-2015-4852) | jok3r-pocs | | weblogic-t3-deserialize-cve2016-3510 | 漏洞利用 | 在 Weblogic T3 中利用 Java 反序列化漏洞(未认证)(CVE-2016-3510) | jok3r-pocs | | weblogic-t3-deserialize-cve2017-3248 | 漏洞利用 | 在 Weblogic T3(s) 中利用 Java 反序列化漏洞(未认证)(CVE-2017-3248) | exploit-weblogic-cve2017-3248 | | weblogic-t3-deserialize-cve2018-2628 | 漏洞利用 | 在 Weblogic T3(s) 中利用 Java 反序列化漏洞(未认证)(CVE-2018-2628) | jok3r-pocs | | weblogic-t3-deserialize-cve2018-2893 | 漏洞利用 | 在 Weblogic T3(s) 中利用 Java 反序列化漏洞(未认证)(CVE-2018-2893) | jok3r-pocs | | weblogic-rce-cve2018-2894 | 漏洞利用 | 利用 Weblogic 中允许部署 webshell 的漏洞(CVE-2018-2894) | jok3r-pocs | | weblogic-wls-wsat-cve2017-10271 | 漏洞利用 | 在 Weblogic 中利用 WLS-WSAT 漏洞(未认证)(CVE-2017-10271) | jok3r-pocs | | websphere-deserialize-cve2015-7450 | 漏洞利用 | 在 Websphere 中利用 Java 反序列化漏洞(未认证)(CVE-2015-7450) | jok3r-pocs | | coldfusion-xxe-cve2009-3960 | 漏洞利用 | 在 Coldfusion 7/8/9 中利用 XXE 漏洞(CVE-2009-3960) | metasploit | | coldfusion-path-traversal-cve2010-2861 | 漏洞利用 | 在 Coldfusion 中利用路径遍历漏洞(CVE-2010-2861) | metasploit | | coldfusion-path-traversal-cve2013-3336 | 漏洞利用 | 在 Coldfusion 9/10 中利用路径遍历漏洞并提取凭据(CVE-2013-3336) | metasploit | | iis-webdav-win2003-bof | 漏洞利用 | 在 Windows 2003 R2 上的 IIS 6.0 WebDAV 中利用缓冲区溢出漏洞(CVE-2017-7269) | metasploit | | drupal-sqli-drupalgeddon | 漏洞利用 | 利用 Drupalgeddon SQL 注入在 CMS Drupal 7.x <= 7.31 中添加管理员(CVE-2014-3704) | jok3r-pocs | | drupal-rce-drupalgeddon2 | 漏洞利用 | 在 CMS Drupal 7.x < 7.58 & 8.x < 8.1 中利用 Drupalgeddon2 RCE 漏洞(CVE-2018-7600) | drupwn | | drupal-rce-rest-cve2019-6340 | 漏洞利用 | 在 CMS Drupal 8.5.x < 8.5.11 & 8.6.x < 8.6.10 中利用 REST RCE 漏洞(CVE-2019-6340) | drupwn | | joomla-comfields-sqli-rce | 漏洞利用 | 在 Joomla >= 3.7.0 的 com_fields 组件中利用 SQL 注入实现 RCE(CVE-2017-8917) | metasploit | | bruteforce-htaccess | 暴力破解 | 若返回 401 未授权,则暴力破解 HTTP 认证(htaccess) | web-brutator | | bruteforce-appserver | 暴力破解 | 暴力破解应用服务器认证(默认无锁定) | web-brutator | | bruteforce-domino | 暴力破解 | 暴力破解 IBM/Lotus Domino 软件认证 | domiowned | | bruteforce-wordpress | 暴力破解 | 暴力破解 WordPress 账户(需检测到用户名) | wpseku | | bruteforce-joomla | 暴力破解 | 暴力破解 Joomla 的 "admin" 账户 | xbruteforcer | | bruteforce-drupal | 暴力破解 | 暴力破解 Drupal 的 "admin" 账户 | xbruteforcer | | bruteforce-opencart | 暴力破解 | 暴力破解 Opencart 的 "admin" 账户 | xbruteforcer | | bruteforce-magento | 暴力破解 | 暴力破解 Magento 的 "admin" 账户 | xbruteforcer | | discovery-server | 发现 | 针对检测到的 Web/应用服务器暴力破解 Web 路径 | dirsearch | | discovery-cms | 发现 | 针对检测到的 CMS 暴力破解 Web 路径 | dirsearch | | discovery-language-directories | 发现 | 针对检测到的语言和目录暴力破解 Web 路径 | dirsearch | | discovery-general | 发现 | 针对配置、数据库、静态文件、杂项等暴力破解 Web 路径 | dirsearch | | appserver-postauth-deploy | 后利用 | 在应用服务器上部署 webshell(需凭据) | clusterd | | wordpress-shell-upload | 后利用 | 在 WordPress 上上传 shell(需管理员凭据) | wpforce | +------------------------------------------+--------------+------------------------------------------------------------------------------------------------+-------------------------------+
.. code-block:: console+--------------------------------+--------------+-------------------------------------------------------------------------------------------------------+------------+ | Name | Category | Description | Tool used | +--------------------------------+--------------+-------------------------------------------------------------------------------------------------------+------------+ | nmap-recon | recon | Attempt to dump all objects from Java-RMI service | nmap | | rmi-enum | recon | Enumerate RMI services | barmie | | jmx-info | recon | Get information about JMX and the MBean server | twiddle | | jmx-default-creds | defaultcreds | Check default/common credentials on JMX | jmxbf | | jmx-bruteforce-creds | bruteforce | Bruteforce creds to connect to JMX registry | jmxbf | | exploit-rmi-default-config | exploit | Exploit default config in RMI Registry to load classes from any remote URL (not working against JMX) | metasploit | | exploit-jmx-insecure-config | exploit | Exploit JMX insecure config. Auth disabled: should be vuln. Auth enabled: vuln if weak config | metasploit | | jmx-auth-disabled-deploy-class | exploit | Deploy malicious MBean on JMX service with auth disabled (alternative to msf module) | sjet | | tomcat-jmxrmi-deserialize | exploit | Exploit JMX-RMI deserialize in Tomcat (CVE-2016-3427, CVE-2016-8735), req. JmxRemoteLifecycleListener | jexboss | | rmi-deserialize-all-payloads | exploit | Attempt to exploit Java deserialize against Java RMI Registry with all ysoserial payloads | ysoserial | | tomcat-jmxrmi-manager-creds | postexploit | Retrieve Manager creds on Tomcat JMX (req. auth disabled or creds known on JMX) | jmxploit | +--------------------------------+--------------+-------------------------------------------------------------------------------------------------------+------------+
.. code-block:: console
+------------+----------+-----------------------------------------------------+-----------------+
| Name | Category | Description | Tool used |
+------------+----------+-----------------------------------------------------+-----------------+
| nmap-recon | recon | Recon using Nmap JDWP scripts | nmap |
| jdwp-rce | exploit | Gain RCE on JDWP service (show OS/Java info as PoC) | jdwp-shellifier |
+------------+----------+-----------------------------------------------------+-----------------+
.. code-block:: console
+-------------------------+--------------+--------------------------------------------------------------------------------------------------------------+-------------------+
| Name | Category | Description | Tool used |
+-------------------------+--------------+--------------------------------------------------------------------------------------------------------------+-------------------+
| nmap-recon | recon | Recon using Nmap MSSQL scripts | nmap |
| mssqlinfo | recon | Get technical information about a remote MSSQL server (use TDS protocol and SQL browser Server) | msdat |
| vulners-lookup | vulnlookup | Vulnerabilities lookup on Vulners.com (requires product name+version) | vulners-lookup |
| cvedetails-lookup | vulnlookup | Vulnerabilities lookup on Cvedetails.com (requires product name+version) | cvedetails-lookup |
| default-creds | defaultcreds | Check default/common credentials on MSSQL server | msdat |
| bruteforce-creds | bruteforce | Bruteforce MSSQL accounts ("sa" or known users) | msdat |
| postauth-audit | postexploit | Check permissive privileges, methods allowing command execution, weak accounts after authenticating on MSSQL | msdat |
| postauth-rce-xpcmdshell | postexploit | Try to execute system command via xp_cmdshell (whoami && net user) | msdat |
+-------------------------+--------------+--------------------------------------------------------------------------------------------------------------+-------------------+
.. code-block:: console
+----------------------------------+--------------+--------------------------------------------------------------------------+-------------------+
| Name | Category | Description | Tool used |
+----------------------------------+--------------+--------------------------------------------------------------------------+-------------------+
| nmap-recon | recon | Recon using Nmap MySQL scripts | nmap |
| vulners-lookup | vulnlookup | Vulnerabilities lookup on Vulners.com (requires product name+version) | vulners-lookup |
| cvedetails-lookup | vulnlookup | Vulnerabilities lookup on Cvedetails.com (requires product name+version) | cvedetails-lookup |
| mysql-auth-bypass-cve2012-2122 | exploit | Exploit password bypass vulnerability in MySQL - CVE-2012-2122 | metasploit |
| default-creds | defaultcreds | Check default/common credentials on MySQL server | hydra |
| bruteforce-creds | bruteforce | Bruteforce MySQL accounts ("root" or known users) | hydra |
| mysql-hashdump | postexploit | Retrieve usernames and password hashes from MySQL database (req. creds) | metasploit |
| mysql-interesting-tables-columns | postexploit | Search for interesting tables and columns in database | jok3r-scripts |
+----------------------------------+--------------+--------------------------------------------------------------------------+-------------------+
.. code-block:: console
+--------------------------+--------------+--------------------------------------------------------------------------------------------------------------+-------------------+
| Name | Category | Description | Tool used |
+--------------------------+--------------+--------------------------------------------------------------------------------------------------------------+-------------------+
| tnscmd | recon | Connect to TNS Listener and issue commands Ping, Status, Version | odat |
| vulners-lookup | vulnlookup | Vulnerabilities lookup on Vulners.com (requires product name+version) | vulners-lookup |
| cvedetails-lookup | vulnlookup | Vulnerabilities lookup on Cvedetails.com (requires product name+version) | cvedetails-lookup |
| tnspoisoning | vulnscan | Test if TNS Listener is vulnerable to TNS Poisoning (CVE-2012-1675) | odat |
| default-creds | defaultcreds | Check default/common credentials on Oracle server | odat |
| bruteforce-creds | bruteforce | Bruteforce Oracle accounts (might block some accounts !) | odat |
| postauth-audit | postexploit | Check for privesc vectors, config leading to command execution, weak accounts after authenticating on Oracle | odat |
| search-columns-passwords | postexploit | Search for columns storing passwords in the database | odat |
+--------------------------+--------------+--------------------------------------------------------------------------------------------------------------+-------------------+
.. code-block:: console
+------------------------------------+--------------+-------------------------------------------------------------------------------+-------------------+
| Name | Category | Description | Tool used |
+------------------------------------+--------------+-------------------------------------------------------------------------------+-------------------+
| vulners-lookup | vulnlookup | Vulnerabilities lookup on Vulners.com (requires product name+version) | vulners-lookup |
| cvedetails-lookup | vulnlookup | Vulnerabilities lookup on Cvedetails.com (requires product name+version) | cvedetails-lookup |
| dbname-flag-injection-cve2013-1899 | vulnscan | Check for command-line flag injection on PostgreSQL 9.0|1|2 (CVE-2013-1899) | metasploit |
| default-creds | defaultcreds | Check default/common credentials on PostgreSQL server | hydra |
| bruteforce-creds | bruteforce | Bruteforce PostgreSQL accounts | hydra |
| postauth-rce-cve2019-9193 | postexploit | Try to execute system command post-authentication by exploiting CVE-2019-9193 | psql |
+------------------------------------+--------------+-------------------------------------------------------------------------------+-------------------+
.. code-block:: console
+----------+----------+-----------------------------------------------------------------------+------------+
| Name | Category | Description | Tool used |
+----------+----------+-----------------------------------------------------------------------+------------+
| ms12-020 | vulnscan | Check for MS12-020 RCE vulnerability (any Windows before 13 Mar 2012) | metasploit |
+---------+----------+-----------------------------------------------------------------------+------------+
.. code-block:: console
+-----------------------------------+-------------+----------------------------------------------------------------------------------------------+------------+
| Name | Category | Description | Tool used |
+-----------------------------------+-------------+----------------------------------------------------------------------------------------------+------------+
| nmap-recon | recon | Recon using Nmap SMB scripts and check for vulns (MS17-010, MS10-061, MS10-054, MS08-067...) | nmap |
| anonymous-enum-smb | recon | Attempt to perform enum (users, shares...) without account | nullinux |
| detect-ms17-010 | vulnscan | Detect MS17-010 SMB RCE | metasploit |
| samba-rce-cve2015-0240 | vulnscan | Detect RCE vuln (CVE-2015-0240) in Samba 3.5.x and 3.6.X | metasploit |
| exploit-rce-ms08-067 | exploit | Exploit for RCE vuln MS08-067 on SMB | metasploit |
| exploit-rce-ms17-010-eternalblue | exploit | Exploit for RCE vuln MS17-010 EternalBlue on SMB | metasploit |
| exploit-sambacry-rce-cve2017-7494 | exploit | Exploit for SambaCry RCE on Samba <= 4.5.9 (CVE-2017-7494) (no creds if guest account) | metasploit |
| auth-enum-smb | postexploit | Authenticated enumeration (users, groups, shares) on SMB | nullinux |
| auth-shares-perm | postexploit | Get R/W permissions on SMB shares | smbmap |
| smb-exec | postexploit | Attempt to get a remote shell (psexec-like, requires Administrator creds) | impacket |
+-----------------------------------+-------------+----------------------------------------------------------------------------------------------+------------+
.. code-block:: console
+----------------+----------+--------------------------------------------------------------------------------------------+----------------+
| Name | Category | Description | Tool used |
+----------------+----------+--------------------------------------------------------------------------------------------+----------------+
| smtp-cve | vulnscan | Scan for vulnerabilities (CVE-2010-4344, CVE-2011-1720, CVE-2011-1764, open-relay) on SMTP | nmap |
| smtp-user-enum | vulnscan | Attempt to perform user enumeration via SMTP commands EXPN, VRFY and RCPT TO | smtp-user-enum |
+----------------+----------+--------------------------------------------------------------------------------------------+----------------+
.. code-block:: console
+--------------------------+-------------+---------------------------------------------------------------------+------------+
| Name | Category | Description | Tool used |
+--------------------------+-------------+---------------------------------------------------------------------+------------+
| common-community-strings | bruteforce | Check common community strings on SNMP server | metasploit |
| snmpv3-bruteforce-creds | bruteforce | Bruteforce SNMPv3 credentials | snmpwn |
| enumerate-info | postexploit | Enumerate information provided by SNMP (and check for write access) | snmp-check |
+--------------------------+-------------+---------------------------------------------------------------------+------------+
.. code-block:: console
+----------------------------------+--------------+--------------------------------------------------------------------------------------------+------------------------------+
| Name | Category | Description | Tool used |
+----------------------------------+--------------+--------------------------------------------------------------------------------------------+------------------------------+
| vulns-algos-scan | vulnscan | Scan supported algorithms and security info on SSH server | ssh-audit |
| vulners-lookup | vulnlookup | Vulnerabilities lookup on Vulners.com (requires product name+version) | vulners-lookup |
| cvedetails-lookup | vulnlookup | Vulnerabilities lookup on Cvedetails.com (requires product name+version) | cvedetails-lookup |
| user-enum-timing-attack | exploit | Try to perform OpenSSH (versions <= 7.2 and >= 5.*) user enumeration timing attack OpenSSH | osueta |
| user-enum-cve2018-15473 | exploit | Attempt to exploit OpenSSH <= 7.7 user enumeration (CVE-2018-15473) | ssh-user-enum-cve-2018-15473 |
| auth-bypass-libssh-cve2018-10933 | exploit | Attempt authentication bypass (CVE-2018-10933) in libssh 0.6+ (fixed in 0.7.6 and 0.8.4) | libssh-scanner |
| default-ssh-key | defaultcreds | Try to authenticate on SSH server using known SSH keys | changeme |
| default-creds | defaultcreds | Check default/common credentials on SSH | hydra |
| bruteforce-creds | bruteforce | Bruteforce SSH accounts | hydra |
+----------------------------------+--------------+--------------------------------------------------------------------------------------------+------------------------------+
.. code-block:: console
+-------------------------+------------+----------------------------------------------------------------------------------+-----------+
| Name | Category | Description | Tool used |
+-------------------------+------------+----------------------------------------------------------------------------------+-----------+
| nmap-recon | recon | Recon using Nmap Telnet scripts | nmap |
| default-creds | bruteforce | Check default credentials on Telnet (dictionary from https://cirt.net/passwords) | patator |
| bruteforce-root-account | bruteforce | Bruteforce "root" account on Telnet | patator |
+-------------------------+------------+----------------------------------------------------------------------------------+-----------+
.. code-block:: console+-----------------+------------+-------------------------------------------------------------------------------------------------+----------------+ | 名称 | 分类 | 描述 | 使用的工具 | +-----------------+------------+-------------------------------------------------------------------------------------------------+----------------+ | nmap-recon | 侦察 | 使用Nmap VNC脚本进行侦察 | nmap | | vuln-lookup | 漏洞扫描 | 在Vulners.com(NSE脚本)和exploit-db.com(有很多误报!)中查找漏洞 | vuln-databases | | bruteforce-pass | 暴力破解 | 暴力破解VNC密码 | patator | +-----------------+------------+-------------------------------------------------------------------------------------------------+----------------+
参见 Changelog <https://github.com/koutto/jok3r/blob/master/CHANGELOG.rst>_
Telnet(默认21/tcp)_VNC(默认5900/tcp)_