Home

Awesome

Moriarty

Moriarty is a comprehensive .NET tool that extends the functionality of Watson and Sherlock, originally developed by @_RastaMouse. It is designed to enumerate missing KBs, detect various vulnerabilities, and suggest potential exploits for Privilege Escalation in Windows environments. Moriarty combines the capabilities of Watson and Sherlock, adding enhanced scanning for newer vulnerabilities and integrating additional checks.

Supported Versions

Installation and Build Instructions

First, clone the Moriarty repository to your local machine using Git:

git clone https://github.com/BC-SECURITY/Moriarty.git

Building the Project

After cloning the repository, you can build the Moriarty executable using Visual Studio.

Using Visual Studio

  1. Open Moriarty.sln in Visual Studio.
  2. Right-click on the solution in Solution Explorer and select "Restore NuGet Packages" to ensure all dependencies are up to date.
  3. Set the build configuration to "Release".
  4. Build the solution by selecting "Build > Build Solution" from the menu.

Usage

Help Menu

C:\> Moriarty.exe --help

███    ███  ██████  ██████  ██  █████  ██████  ████████ ██    ██
████  ████ ██    ██ ██   ██ ██ ██   ██ ██   ██    ██     ██  ██
██ ████ ██ ██    ██ ██████  ██ ███████ ██████     ██      ████
██  ██  ██ ██    ██ ██   ██ ██ ██   ██ ██   ██    ██       ██
██      ██  ██████  ██   ██ ██ ██   ██ ██   ██    ██       ██
                                                 v1.2
                                                 BC Security

Usage: Moriarty.exe [options]
Options:
  -h, --help       Display this help message.
  -d, --debug      Run in debug mode for additional output.
  -l, --list-vulns List all vulnerabilities that are scanned for.

Examples:
  Moriarty.exe -d
  Moriarty.exe --list-vulns

Scan

C:\> Moriarty.exe
███    ███  ██████  ██████  ██  █████  ██████  ████████ ██    ██
████  ████ ██    ██ ██   ██ ██ ██   ██ ██   ██    ██     ██  ██
██ ████ ██ ██    ██ ██████  ██ ███████ ██████     ██      ████
██  ██  ██ ██    ██ ██   ██ ██ ██   ██ ██   ██    ██       ██
██      ██  ██████  ██   ██ ██ ██   ██ ██   ██    ██       ██

                                                 v1.2
                                                 BC Security

 [*] OS Version: 22H2 (22621)
 [*] Enumerating installed KBs...
 [+] CVE-2023-36664 : VULNERABLE
  [>] https://github.com/jakabakos/CVE-2023-36664-Ghostscript-command-injection

 [+] PrintNightmare (CVE-2021-1675, CVE-2021-34527) : VULNERABLE
  [>] https://github.com/xbufu/PrintNightmareCheck/tree/main

 [*] Vulnerabilities found: 2/37
 [+] Scan Complete!
 

CVEs and Vulnerabilities

Moriarty scans for a variety of CVEs and vulnerabilities. Below is a table detailing each, along with a more detailed description and links to the CVE database.

CVE/Vulnerability IDDescription
MS10-015Vulnerability in Windows Kernel related to privilege elevation, allowing attackers to execute arbitrary code.
MS10-092Vulnerability in Windows Task Scheduler allowing for arbitrary code execution with escalated privileges.
MS13-053Multiple vulnerabilities in Windows Kernel-Mode Drivers that could allow elevation of privilege.
MS13-081Multiple vulnerabilities in Windows Kernel-Mode Drivers that could allow remote code execution.
MS14-058Vulnerabilities in Kernel-Mode Driver that could allow remote code execution through specially crafted TrueType font files.
MS15-051Vulnerability in Windows Kernel-Mode Drivers allowing for elevation of privilege by bypassing the security features of Windows.
MS15-078Vulnerability in Windows Font Driver allowing remote code execution through maliciously crafted OpenType fonts.
MS16-016Vulnerability in WebDAV that could allow elevation of privilege through improper handling of memory.
MS16-032Vulnerability in Secondary Logon process that could allow elevation of privilege by running a specially crafted application.
MS16-034Vulnerabilities in Windows Kernel-Mode Driver that could allow elevation of privilege due to the way kernel-mode drivers handle objects in memory.
MS16-135Vulnerability in Windows Kernel-Mode Drivers that could allow elevation of privilege due to improper handling of certain types of objects in memory.
CVE-2017-7199A privilege escalation vulnerability in Windows due to the way certain applications handle process tokens.
CVE-2019-0836
CVE-2019-0836Elevation of privilege vulnerability in Windows AppX Deployment Server, allowing attackers to overwrite system files.
CVE-2019-1064An elevation of privilege vulnerability in Windows due to improper handling of symbolic links.
CVE-2019-1130An elevation of privilege vulnerability in Windows due to the way the Windows CSRSS handles certain requests.
CVE-2019-1253Elevation of privilege vulnerability in Windows AppX Deployment Server due to improper permissions settings.
CVE-2019-1315An elevation of privilege vulnerability in Windows Error Reporting (WER) due to improper handling of hard links.
CVE-2019-1385Elevation of privilege vulnerability due to improper handling of objects in memory in Windows.
CVE-2019-1388A vulnerability in Windows UAC that allows bypassing of the UAC dialog, leading to elevation of privilege.
CVE-2019-1405An elevation of privilege vulnerability in Windows UPnP Service due to improper handling of objects in memory.
CVE-2020-0668An elevation of privilege vulnerability due to improper handling of symbolic links in Windows.
CVE-2020-0683Elevation of privilege vulnerability in Windows due to improper handling of file paths.
CVE-2020-0796A remote code execution vulnerability in SMBv3 known as 'SMBGhost'.
CVE-2020-1013A local privilege escalation vulnerability in Windows Update Orchestrator Service.
CVE-2020-1013PrintNightmare, a remote code execution vulnerability in Windows Print Spooler.
CVE-2021-26855ProxyLogon - A server-side request forgery (SSRF) vulnerability in Exchange Server allowing remote code execution.
CVE-2021-26857A vulnerability in Exchange Server that could allow an attacker to perform remote code execution.
CVE-2021-26858A post-authentication arbitrary file write vulnerability in Exchange Server.
CVE-2021-27065A post-authentication arbitrary file write vulnerability in Exchange Server could lead to remote code execution.
CVE-2021-44228Log4Shell, a remote code execution vulnerability in Apache Log4j.
CVE-2021-36934HiveNightmare - A vulnerability that allows for local privilege escalation due to overly permissive Access Control Lists (ACLs) on system files, including the Security Accounts Manager (SAM).
CVE-2022-34718Windows TCP/IP Remote Code Execution Vulnerability.
CVE-2022-40140A vulnerability in Microsoft Exchange Server leading to remote code execution.
CVE-2022-22965Spring4Shell, a remote code execution vulnerability in Spring Framework.
CVE-2023-36664Artifex Ghostscript through 10.01.2 mishandles permission validation for pipe devices (with the %pipe% prefix or the pipe character prefix).
CVE-2023-23397Microsoft Outlook Elevation of Privilege Vulnerability.