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

    記一次對TP的另一種滲透想法

    VSole2021-11-10 14:17:28

    前言

    因為前陣子發表了一篇關于Thinkphp的文章到公眾號里面,南5給我扔過來一個站讓我試試。

    初步想法

    首先看了一下這個站,長這樣


    典型的金融詐騙類網站,第一個想法就是暴破,隨便了一個用戶名和密碼,抓包看了看,沒有枚舉,沒有枚舉。


    可能過程比較不好做,但是我想既然這個站能給到我,說明還是有可以利用的地方。

    繼續探測

    對目標域名進行目錄隨意的書寫,發現報錯了,竟然是Thinkphp的Debug,版本為5.0.5


    竟然是5.0.5的版本,還開放了Debug,那么我的第一反應就是嘗試這個版本的公開rce的exp,如下描述:

    waf對eval進行了攔截,禁止了assert函數對eval函數后面的括號進行了正則過濾,對file\_get\_contents函數后面 的括號進行了正則過濾。
    http://website/?%20s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&va%20rs[1][]=2.php&vars[1][1]=
    

    試了一下這個exp,直接被攔,還是被某免費版的防火墻攔的。

    這也就是說明這站的基本防護有防火墻,需要繞過防火墻。公開的exp是不行了,那么就試試TP最常見的以POST方式傳參的exp。

    _method=__construct&method=get&filter=call_user_func&get[]=phpinfo
    


    竟然成了,也就是說是可以rce的。那么接下來就有一點要看了,看看PHP有沒有開啟 disable_function ,或者說 disable_function 有沒有禁用掉更多的函數。

    我把禁用的函數全部列出來了,基本上常見的都沒了:

    passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_al ter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcnt l_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued, pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_ge t_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_ex ec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv


    失敗的日志包含

    既然 disable_function 禁用掉這么多的函數,那么就用我之前遇到的一種方法來嘗試一下:利用文件包含的方法, 包含出日志,最后往日志中寫馬。首先看看能不能包含日志,我用 think\__include_file 函數進行包含,因為日志的路徑在Debug頁面中本來就有。


    成功包含出日志了。下一步往日志里面寫馬,需要注意的是不能寫一句話的馬,需要進行加密,推薦哥斯拉


    下面進行日志包含


    “很好”,沒有出來,直接報錯,看來這個方法是沒有把日志寫進去的。

    file_put_contents

    這個函數的解釋如下:

    file_put_contents() 函數把一個字符串寫入文件中。該函數訪問文件時,遵循以下規則:如果設置了 FILE_USE_INCLUDE_PATH,那么將檢查 *filename* 副本的內置路徑 如果文件不存在,將創建一個文件 打開文件 如果設置了 LOCK_EX,那么將鎖定文件 如果設置了 FILE_APPEND,那么將移至文件末尾。否則,將會清除文件的內容 向文件中寫入數據 關閉文件并對所有文件解鎖 如果成功,該函數將返回寫入文件中的字符數。如果失敗,則返回 False。

    也就是說不存在的文件話,會創建一個文件,然后還可以將文件內容追加到文件末尾。這個函數沒有在禁用函數里 面。此時,南5說讓我考慮一下session。這個我第一次聽說,于是,我問了一下度娘,有一篇文章有講到如何用session 來繞過禁用函數。

    session包含直接getshell

    首先,我利用上面講到的函數來將馬寫入session中,馬通過base64加密后再用url進行加密,在此我用的哥斯拉的馬


    按道理應該在網站根目錄下創建了一個名字為1.php的文件,那么我們先包含一次看看


    成功包含出了session。這個時候直接訪問目下的1.php,成功解析了。

    上哥斯拉直接連,成功


    本次實戰不僅僅為了getshell,也是為了學習利用tp5的不同的getshell方法。尤其是對session包含的方法,體會到了不一樣的感覺。

    session
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    會話機制Cookie/Session:在web應用中,常用的會話追蹤機制是Cookie和Session
    跨語言移植一直是技術領域內難以解決的問題,需要解決語言之間的約束,好在先前我們成功使用 Go 實現了 IIOP 協議通信,有了前車之鑒,所以這次我們將繼續使用跨語言方式實現 Flask Session 偽造。本文以 Apache Superset 權限繞過漏洞(CVE-2023-27524) 為例講述我們是如何在 Go 中實現 Flask 框架的 Session 驗證、生成功能的。
    在一次瀏覽某推中發現了發現了了一個web challenge的賞金ctf,這里從來學習一下由于使session_start()報錯引發的危害。page=showMeTheCode程序分析index.php define; class Session{ public static $id = null; protected static $isInit = false; protected static $started = false; public static function start(){ self::$isInit = true; if (!
    域內定位個人PC的三種方式
    [VNCTF2022]gocalc0復現
    2022-05-07 16:02:38
    看雪論壇作者ID:H3h3QAQ
    跨站請求偽造,也被稱為“OneClick Attack”或者Session Riding,通常縮寫為CSRF或者XSRF,是一種對網站的惡意利用。 一、CSRF介紹 CSRF(Cross-site request forgery) 跨站請求偽造,也被稱為“OneClick Attack”或者Session Riding,通常縮寫為CSRF或者XSRF,是一種對網站的惡意利用。
    微軟SMB和空會話介紹?
    2022-06-06 07:06:54
    空會話意味著對網絡資源的訪問是在沒有身份驗證的情況下授予的。也稱為匿名或訪客訪問,最常見的是IPC$ "Windows Named Pipe"共享。人們傾向于認為用戶名是唯一的身份驗證機制,在工作組中,這基本上是正確的。
    1.驗證碼復用 漏洞描述 當服務器端受理請求后,沒有將上一次保存的session及時清空,將會導致驗證碼可重復使用 通常情況下在網站注冊、登錄、找回密碼等頁面都會設計驗證碼驗證。如果設計不合理,將會刀子驗證碼在驗證成功一次之后,下次使用的就不在驗證也就說可以重復使用。 案例: 可以看到此處前端登錄雖有驗證碼驗證,但是只驗證一次。后續可一直使用該驗證碼。 測試方法:發送到repeater
    IPC$ (Internet Process Connection) 是共享“命名管道”的資源,它是為了讓進程間通信而開放的命名管道,通過提供可信任的用戶名和口令,連接雙方可以建立安全的通道并以此通道進行加密數據的交換,從而實現對遠程計算機的訪問。IPC$是NT2000的一項新功能,它有一個特點,即在同一時間內,兩個IP之間只允許建立一個連接。
    AuthMatrix 是一個Burp Suite擴展,用于檢測權限授權問題,設置好session就能進行自動化測試。相似功能的插件還有:BurpSuite Authz。Authz會先訪問一遍接口抓包,然后“Send request(s) to Authz”,設置低權限的cookie,“Run”就會使用低權限的cookie去請求,結果會匹配給出相似度百分比,可以查看每個請求的詳細,半自動測試。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类