upload-labs:一个想帮你总结所有类型的上传漏洞的靶场。
它是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共20关,每一关都包含着不同上传方式。
- 搭建环境:Linux || docker
1、拉取upload-labs镜像:
docker pull c0ny1/upload-labs
2、创建docker容器:
docker run -d -p 81:80 c0ny1/upload-labs
-p:意为端口映射,格式为 宿主机端口:容器端口。
由于我的Linux的80端口已占用,所以服务映射到闲置的81端口。
3、查看容器的启动情况:
通过客户端浏览器访问:
已正常启动!
4、但是,当上传文件时,会出现下图所示的报错,即使上传合法的文件也是报错。
这是因为Upload-labs没有存放文件的“upload”文件夹。
5、解决:
① 进入upload-labs容器:
docker exec -it [CONTAINER ID] /bin/bash #查看CONTAINER ID命令docker ps
② 创建upload文件夹:mkdir upload
③ 给upload赋权限:chmod 777 upload
此时,一切正常。靶场搭建完毕!