Apache SSI 远程命令执行漏洞

工具及相关资源

.1 测试工具:vulhub

工具名称:vulhub

工具用途:模拟漏洞环境

相关信息:https://vulhub.org

2 测试工具:Nmap

工具名称:Nmap

工具用途:端口扫描,服务识别,操作系统指纹识别

相关信息:http://nmap.org/

3测试工具:httprint

工具名称:Httprint

工具用途:通过远程http指纹判断http服务类型

相关信息:http://www.net-square.com/httprint/

4 测试工具:Tamper IE

工具名称:Tamper IE

工具用途:HTTP数据包修改、转发工具(Firefox插件)

相关信息:http://www.bayden.com/TamperIE/

测试工具:安全检测工具集

工具名称  科技整理的安全检测工具集

工具用途:跨站及SQL注入测试、远程溢出测试、暴力破解测试、嗅探分析

相关信息:www.anyuntec.com

Apache SSI 远程命令执行漏洞

SSI----即server-side includes

功能:

SSI提供了一种对现有HTML文档增加动态内容的方法,不需要编写复杂的JSP/PHP/ASP等程序或者调用CGI程序。

当目标服务器开启了SSI与CGI支持,我们就可以上传shtml,利用<!--#exec cmd=”id” -->语法执行命令。

使用SSI(Server Side Include)的html文件扩展名,SSI(Server Side Include),通常称为"服务器端嵌入"或者叫"服务器端包含",是一种类似于ASP的基于服务器的网页制作技术。默认扩展名是 .stm、.shtm 和 .shtml。

危险系数:高

渗透过程

1.找到目标


0X00 搭建漏洞环境

在官网https://vulhub.org/漏洞环境中搜索Apache SSI 远程命令执行漏洞

可以看到漏洞位置为httpd/ssi-rce

进入ssi-rce目录下

2.搭建漏洞环境

docker-compose up -d


环境启动后,访问http://your-ip:8080/upload.php,即可看到一个上传表单。

0X01漏洞复现

正常上传PHP文件是不允许的,我们可以上传一个shell.shtml文件:

<!--#exec cmd="ls" --> 

返回值200,上传成功


访问ls.shtml可见命令执行成功。


安全建议

针对上述发现的安全问题,建议立即采取措施进行修补,以避免发生安全问题,下面的安全建议措施可供参考:

序号漏洞名称加固建议

1·序号漏洞名称:Apache SSI 远程命令执行漏洞             加固建议:关闭ssl

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容