挖洞——某个大学上传
在翻灯塔的资产的时候看到了某个大学的某个服务存在注册,遂注册了一个账户上去看看
发现可以其中可以传输文件,常见的文件绕过点了一通发现存在白名单,通过报错把他的上传逻辑搞出来了
[8] ErrorException in Upload.php line 108
getimagesize(): Read error!
return true;
}
throw new UploadException(__('Uploaded file format is limited'));
}
protected function checkImage($force = false)
{
//验证是否为图片文件
if (in_array($this->fileInfo['type'], ['image/gif', 'image/jpg', 'image/jpeg', 'image/bmp', 'image/png', 'image/webp']) || in_array($this->fileInfo['suffix'], ['gif', 'jpg', 'jpeg', 'bmp', 'png', 'webp'])) {
$imgInfo = getimagesize($this->fileInfo['tmp_name']);
if (!$imgInfo || !isset($imgInfo[0]) || !isset($imgInfo[1])) {
throw new UploadException(__('Uploaded file is not a valid image'));
}
$this->fileInfo['imagewidth'] = isset($imgInfo[0]) ? $imgInfo[0] : 0;
$this->fileInfo['imageheight'] = isset($imgInfo[1]) ? $imgInfo[1] : 0;
return true;
} else {
return !$force;
}
的确是一个白名单。。。还过了getimagesize,不好绕
在测试过程中还发现了,他能传pdf本来想尝试下pdfxss,但是。。。

遂去问了一嘴

寄