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

    實戰 | 記一次小程序cms安全事件應急響應

    VSole2021-11-30 11:54:28

    1、安全事件發生

    2021年11月16日,上級發來不良檢測記錄,內容包含為某站點存在涉DuBo違規內容,該站點為基于ThinkPHP 5.0.10框架的小程序管理系統,下面以xcx.test.cn作為代替

    經過對比原始版本的源碼,以及命令ls -alh確認,index.php于11月15日23:16分出現文件修改,確認該web服務器遭到非法攻擊。

    后果:修改內容為在head內添加了meta標簽和修改了title標簽,標簽內容為非法內容,搜索引擎的爬蟲在爬取該站點時會爬取meta標簽的內容,那么用戶在百度搜索關鍵詞時,會檢索出不良內容。

    2、安全事件溯源

    2.1 暫停服務

    首先進入寶塔關閉Apache與MySQL服務,其他途徑告知用戶系統正在維護

    2.2 保存現場環境

    進入到寶塔的網站管理界面,點擊被入侵站點,點擊備份站點(數據庫同理備份)。

    因為備份文件過大,則把全部備份通過寶塔的“騰訊云COSFS 2.0”插件,轉儲到cos里,在通過訪問cos下載備份文件。

    2.3 提取WEB日志

    ssh連接進入服務器,提取寶塔的web日志,路徑/www/wwwlogs/xcx.test.cn/ ,提取xcx.test.cn-access_log與xcx.test.cn-error_log到本地

    2.4 find命令檢索被文件修改

    使用find . -mtime -300 -name “*.php”檢索/www/wwwroot/xcx.test.cn/網站目錄下被修改過的PHP文件,以快速確認webshell落地路徑

    從圖中可以發現,在十一月份分別不同天數,有三個文件被添加或修改過,對比原始源碼發現,除了index.php原本不存在圖中另外兩個文件。

    2.5 分析webshell文件1

    路徑:/public/plugin/PHPExcel/PHPExcel/CalcEngine/index.php

    分析該文件,總共分為兩個部分

    s函數:對$dapeng的字符串進行rot13解碼

    m函數與get1_str函數:該函數作用是eval執行PHP代碼,通過組合變量$dp和$dapeng1成新的系統函數,把rot13解碼的字符串,從十六進制轉換為字符串文本(既為PHP代碼)。

    PS:該圖為十六進制轉碼后的PHP代碼

    從圖中可以得知,這里的變量file_path是上一層的index.php的$file_path,此處先備份網站首頁index.php另存為index.bk.html,并把index.php的權限修改為0666,既所有用戶可讀可寫權限,猜測此處目的防止因為權限原因無法修改首頁。

    2.6 分析webshell文件2

    路徑./public/webuploader/server/preview/dd887179e09b2326595305d8dd475763.php
    

    分析該文件,可以得知是一個PHP遠程文件包含+eval執行

    Ps:該文件在后面日志分析得出,該文件為黑客第一個上傳的木馬。

    從該路徑/public/webuploader/server/preview/可猜測,黑客應該是使用webuploader下的fileupload.php或fileupload2.php或presiew.php里其中的一個php文件的上傳漏洞,把webshell上傳到服務器

    2.7 分析access日志之攻擊手法

    從access日志來看,該web站點一直由來自不同地區,不同國家的IP地址用web漏洞掃描器一直進行掃描

    由于剛剛提到webshell文件2的路徑在webuploader/server下,而該文件夾下恰好有三個相關的上傳文件,我們分別在access_log中搜尋fileupload.php或fileupload2.php或presiew.php

    結果均為無結果:

    我們猜測,黑客在使用presiew.php的原文件名應該為preview.php,通過對比1月份的備份包與本月的備份包,其中得出1月份的preview.php與presiew.php的文件內容完全一致,可以確認是被黑客修改了名稱,preview.php內是有關文件上傳的PHP代碼。

    那么回到vscode繼續檢索preview.php得到結果

    結果還是比較多,在精確搜索一下,只顯示有200回響的

    成功篩選出4條記錄,分別是

    其中第1與第2條IP地址均為浙江省金華市婺城區 電信

    第3條與第4條IP地址均為深圳市騰訊云

    然后對比user-agent,第1、2條為

    第3、4條為

    請注意上述兩條USER-AGENT都是非常舊的系統和瀏覽器版本,理應不符合該系統的對象用戶,可初步判別均為異常流量。

    通過相同UA頭檢索,發現UA為”Mac OS X 10_15_7”的主機,正在不斷的從2021年6月21號到2021年11月16日,一直使用爬蟲/web掃描工具進行掃描測試。

    可以看出圖中的相關日志,該UA都在同一天訪問有關sql數據庫的管理頁,通過檢索可知,有關“Mac OS X 10”的UA有6838條,可以判斷是爬蟲工具。

    繼續檢索UA頭為”Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/2X.0”的相關行日志共兩條,請注意下面兩條日志的時間與webshell木馬的dd887179e09b2326595305d8dd475763.php時間。

    從上圖中可以看出,第二條日志的時間與webshell的修改時間完全重合,且同時說明在11月1日該站點已經被滲透,

    跟隨這個UA繼續檢索日志,又發現訪問了另外一個木馬CalcEngine/index.php

    故判斷UA為“Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/2X.0”就是黑客攻擊我企站點的UA。

    在這一些不同行的日志里,除了IP歸屬地為浙江省金華市婺城區 電信外,其他的IP歸屬地均為國外,所以金華市的這個IP很有可能是黑客的真實IP地址。

    總結:黑客使用preview.php分時段上傳了木馬dd475763.php與CalcEngine/index.php,然后在11月15日23點16分通過dd475763.php修改了public/index.php

    2.8 分析access日志之留種后門分析

    根據來源地址為dd88719e.php,查找

    referer:https://xcx.test.cn/webuploader/server/preview/dd887179e09b2326595305d8dd475763.php 

    查找出以下幾個后門

    (1)111.php

    (2)banner3.php(經典大馬)

    (3)picture3_6.php(此處與preview.php文件內容一致)

    (4)config.php(WebShell)

    通過$_REQUEST[admin]傳參到eval函數,實現命令執行。

    使用D_SAFE補充驗證

    2.9 分析preview.php

    1)首先該文件的首行應該是if判斷session是否為管理員,但在該文件內并沒有寫校驗,故存在越權漏洞。只要知道路徑,任何人都可使用該php來上傳文件。

    2)存在上傳文件后綴無限制

    從圖中可以看出,通過正則表達式,變量$base64是文件內容,變量$type是文件后綴,從紅色框住的if語句里,完全沒有任何的過濾,

    故payload為data:image/php;base64,PD9waHAgcGhwaW5mbygpOz8+

    3)不校驗上傳文件內容

    從截圖得知,上傳后的文件名是文件內容的md5值,而代碼中也不做文件內容檢查,即可直接寫<?php phpinfo();?>

    2.10 preview.php攻擊手法復現

    復現完成

    三、修復建議

    1.過濾presiew.php文件內上傳的文件后綴名傳參,并加入session校驗。2.對webuploader/下所有文件進行審計后發現,fileupload.php和fileupload2.php都有文件上傳漏洞,故建議對上傳文件進行過濾3.對上傳目錄./preview/和./upload/禁止執行php。4.禁止非大陸地區的IP地址訪問。
    
    webshellwebuploader
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    后果:修改內容為在head內添加了meta標簽和修改了title標簽,標簽內容為非法內容,搜索引擎的爬蟲在爬取該站點時會爬取meta標簽的內容,那么用戶在百度搜索關鍵詞時,會檢索出不良內容。
    webshell新工具 -- PyShell
    2023-07-24 10:21:11
    0x01 工具介紹PyShell是多平臺Python WebShell。該工具可以幫助您在web服務器上獲得shell式的界面,以便遠程訪問。與其他webshell不同的是,該工具的主要目標是在服務器端使用盡可能少的代碼,而不考慮使用的語言或服務器的操作系統。您可以在 Windows 和 Linux 中使用不同類型的 shell,具有命令歷史記錄、上傳和下載文件,甚至可以像在目錄中一樣移動標準外殼。
    場景:己經拿到了一個webshell,但是無法正常執行命令,因為被360安全大腦的主動防御攔截了。由于目標是 java 環境,這里可以嘗試利用 jsp 執行系統命令上線,具體做法是先寫一個 jsp的腳本然后放到 weblogic 的 webshell 路徑下,如果找不到 webshell 可以使用文件查找命令dir c:\ /s /b |find "fuck4.jsp"
    Webshell-Sniper是一款使用Python編寫的基于終端的Webshell管理器,和以往我們分享的Webshell管理工具有所不同,所有操作都在終端中完成。使用它可對您的網站進行遠程管理。雖然它沒有圖形化的GUI也沒有WEB界面,但這樣的操作也是另有一翻感覺。功能基于終端的shell交互反向連接shell數據庫管理Webshell-Sniper安裝與使用環境服務端 :. 需要注意的是,Webshell-Sniper服務端只支持Unix系統環境。
    0x01 工具介紹該工具沒什么技術含量,學了一點javafx,使用jdk8開發出了幾個簡單功能用來管理webshell。工具整合并改寫了各類webshell,支持各個語言的cmd、蟻劍、冰蝎、哥斯拉,又添加了實際中應用到的一些免殺技巧,以方便實際需要。0x02 安裝與使用直接下載releases版即可。
    Webshell 檢測綜述
    2022-12-15 09:45:32
    通過Webshell,攻擊者可以在目標服務器上執行一些命令從而完成信息嗅探、數據竊取或篡改等非法操作,對Web服務器造成巨大危害。Webshell惡意軟件是一種長期存在的普遍威脅,能夠繞過很多安全工具的檢測。許多研究人員在Webshell檢測領域進行了深入研究,并提出了一些卓有成效的方法。本文以PHP Webshell為例。
    動態函數PHP中支持一個功能叫 variable function ,變量函數的意思。//最終是system;當一個變量后邊帶括號,那他就被視作一個函數。編譯器會解析出變量的值,然后會去找當前是否存在名為“system()”的函數并執行它。這里就不給實例了,很多免殺案例中都用到了這個特性。也是被瘋狂查殺的特征。回調函數回調函數,簡單來說就是一個函數不是由我直接調用,而是通過另一個函數去調用它。
    前言提到webshell免殺,方法無外乎對靜態特征的變形,編碼,或利用語言特性繞過。計算機中有很多符號,它們在編程語言中占據一席之地,這些符號作為運算符號,標識符號或起到特殊含義。本文以PHP為例介紹一些利用符號免殺方法。免殺WAF檢測通過對安全狗、護衛神、D盾等常見軟WAF的測試,發現WAF查殺主要依賴兩種檢測方法1.靜態檢測:通過匹配特征來查找webshell。如危險函數,文件特征碼等。例如 ${$my_var[8]}與${$my_var}[8]的區分${xxx} 括起來的要當成變量處理。
    通過URL信息獲取如果能獲取到惡意請求的URL信息,就可以根據URL信息定位到Webshell文件。URL信息可以通過態勢感知、WAF等監測預警系統獲取,也可以通過對系統異常時間段的Web日志進行審計獲取。通過掃描工具掃描獲取通過Webshell查殺工具進行掃描,可以定位到部分免殺能力不強的Webshell文件。默認情況下,Windows將僅在索引位置中查找最近修改的文件。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类