Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2021-26855 PoC — Microsoft Exchange Server Remote Code Execution Vulnerability

Source
Associated Vulnerability
Title: Microsoft Exchange Server Remote Code Execution Vulnerability (CVE-2021-26855)
Description:Microsoft Exchange Server Remote Code Execution Vulnerability
Description
PoC exploit code for CVE-2021-26855
Readme
# CVE-2021-26855-PoC
PoC exploit code for CVE-2021-26855. 

Original code was developed by https://github.com/GreyOrder. 

----------
CVE-2021-26855 ssrf simple use of golang exercises
Affected version

    Exchange Server 2013 is less than CU23
    Exchange Server 2016 is less than CU18
    Exchange Server 2019 is less than CU7

Conditions of use

This vulnerability is different from previous exchange vulnerabilities. This vulnerability does not require a user identity that can log in. It can obtain internal user resources without authorization. It can be used with CVE-2021-27065 to implement remote command execution.

Vulnerability trigger requirements

    Vulnerability in the target server
    The target exchange server must be a load balancing server, that is, two or more servers are used at the same time
    The target email address. Note that the address needs to be an email address in the domain instead of an email address. There is a difference between the two. After testing, it is not the case, as long as it is the correct email address, except in special circumstances
    The attacker must also identify the Fully Qualified Domain Name (FQDN) of the internal Exchange server. In fact, only the server host name is required, because the host name can be resolved within the domain.

Among the above four items, FQDN can be captured by ntlm type2 message; email addresses can be directly enumerated. An additional explanation for FQDN, because I only use ntlm type2 to capture system information, the FQDN obtained by the tool by default is the currently accessed machine, so the vulnerability cannot be directly triggered. You need to manually judge based on the FQDN name and use -n to replace other exchanges. Server host name.
Instructions for use

To exploit this vulnerability, it is more convenient to use a scripting language such as ruby ​​python. It is written in golang to learn golang, so this small tool can only be regarded as a semi-finished product and will be updated when there is time.

This tool currently supports the following functions:

    Vulnerability detection (just simply check whether it can be hit, and it cannot be used for detection)
    User enumeration
    Simple mail id and subject reading
    Mail download (upgraded, now a standard eml file)
    Read the contacts saved by the user (note that it is not global, only the contacts saved by the target)
    Folder specified, not arbitrary, please refer to https://docs.microsoft.com/en-us/exchange/client-developer/web-service-reference/distinguishedfolderid for details

For other uses, please modify the xml content yourself.

usage:

go run CVE-2021-26855-PoC.go -h <target ip>

  -h string required, target address or domain name
  
  -U string Optional, need to enumerate user list
  
  -d optional, download mail
  
  -l Optional, list the mailing list
  
  -n string is optional, you need to specify FQND to fill in
  
  -t string Optional, request delay time (default "1")
  
  -u string Optional, specify the target (default "administrator")
  
  -c is optional, read the contacts saved by the current user, not all
  
  -f string Optional, specify the folder to view (default "inbox")
File Snapshot

Log in to view the POC file snapshot cached by Shenlong Bot

Log in to view
Remarks
    1. It is advised to access via the original source first.
    2. Local POC snapshots are reserved for subscribers — if the original source is unavailable, the local mirror is part of the paid plan.
    3. Mirroring, verifying, and maintaining this POC archive takes ongoing effort, so local snapshots are a paid feature. Your subscription keeps the archive online — thank you for the support. View subscription plans →