一、实验目的与要求
- 能根据报告找到难度适中的漏洞,搭建弱点环境,并验证该漏洞;
2.能给出该漏洞的修复建议。
二、实验原理与内容
- 漏洞原理
漏洞原理通常指的是计算机系统、软件、网络或其他技术系统中存在的安全缺陷,这些缺陷可以被恶意用户或攻击者利用来获取未授权的访问权限、破坏系统、窃取数据或进行其他恶意行为。漏洞可以存在于软件的编码中,也可以是由于配置不当、设计缺陷或者硬件问题导致的。
2.参考漏洞来源
参考漏洞来源通常指的是在进行安全研究、软件开发或系统维护时,需要参考和了解可能存在的安全漏洞及其来源。这样做可以帮助开发者、安全研究人员或系统管理员采取预防措施,修复已知问题,以及提高整体的安全性。
三、实验内容
- 搭建弱点环境。
- 详细的漏洞验证过程。
- 修复、防御方法。
四、实验设备与软件环境
- 学生笔记本;
- VMware WorkStation Pro;
- Windows7或其他Windows系统;
- Ubantu
五、环境搭建
1、安装docker.io
命令:sudo apt install docker.io
查看是否安装成功
docker -v
2、查看是否安装pip
pip -V
然后根据他下面提示的安装命令进行安装:
sudo apt install python-pip
再次输入pip -V查看是否安装成功
3、安装docker-compose
进入root
输入:su
然后输入密码
再root目录下输入命令:pip install docker-compose
出现报错:
pyrsistent requires Python '>=3.5' but the running Python is 2.7.17
根据提示,我们的python版本要>=3.5的而我们运行的版本是2.7.17
解决:
1.首先进入/usr/bin目录下:
cd /usr/bin
2.显示所有python版本
ls -l | grep python
python版本指向2.7
然后我们设置python指向3.6
sudo rm -rf python
sudo ln -s /usr/bin/python3 /usr/bin/python
然后查看是否更改好:
pip -V
然后再输入命令:pip install docker-compose
出现异常:
根据内容是提示pip版本太低,
所以我们输入:pip install --upgrade pip
进行更新,更新完后
再输入命令:pip install docker-compose
查看是否安装成功
docker-compose -v
4、下载靶场文件
git clone GitHub - vulhub/vulhub: Pre-Built Vulnerable Environments Based on Docker-Compose
出现错误:网络问题。没有出现网络错误环境就搭建好了,可以直接进入实验。
解决办法:进入这个网站Vulhub - Docker-Compose file for vulnerability environment
可以直接把压缩包下载下来,解压到home目录下。
六、实验过程与结果
接下来就针对某个漏洞进行docker启用并复现漏洞
访问:[++++Vulhub - Docker-Compose file for vulnerability environment++++](#Vulhub - Docker-Compose file for vulnerability environment)
要复现Apache HTTPD未知后缀名漏洞,找到进入路径
按照以上路径,从ubantu进入
不知道路径的可以从home文件夹下找到目录,然后右击打开终端
cd apache_parsing_vulnerability
启动docker(会自动构造漏洞环境)
docker-compose up -d
直接运行会出现报错
要进入root目录,才可以运行。
查看靶机ip
ifconfig
打开物理机浏览器访问该ip,打开靶机环境
打开浏览器访问ip
在桌面上新建一个文档, 保存名为1.php.jpeg
输入内容:
<?php phpinfo();?>
打开刚才漏洞环境,上传该文件
文件上传成功,复制红框内的文件路径,
和IP拼接为新的url http://172.17.0.1/uploadfiles/1.php.jpeg
访问 http://172.17.0.1/uploadfiles/1.php.jpeg ,出现如下界面,说明1.php.jpeg文件被执行了,说明该系统存在后缀名解析漏洞
其他漏洞复现都可以访问Vulhub - Docker-Compose file for vulnerability environment,就搭建环境遇到的问题会比较多。