<网络安全>《41 网络攻防专业课<第七课 - IIS上传和Tomcat弱口令漏洞攻击与防范>》
1 中间件PUT漏洞介绍
中间件包括apache、tomcat、IIS、weblogic等,这些中间件可以设置支持的HTTP方法。(HTTP方法包括GET、POST、HEAD、DELETE、PUT、OPTIONS等)
每一个HTTP方法都有其对应的功能,在这些方法中,PUT可以直接从客户机上传文件到服务器。如果中间件开放了HTTP中的PUT方法,那么恶意攻击者就可以直接上传webshell到服务器对应的目录。
直接上传shell,也可以从侧面反映 PUT漏洞的严重危害性。
2 IIS上传漏洞利用及防范
2.1 实验环境
攻击机: kali linux192.168.1.111
靶场机器:linux 192.168. 1.102
接下来该做什么呢?
目的:获取靶场机器的root权限。
2.2 信息探测
扫描主机开放的全部端口
nmap –p- -T4 靶场IP地址
快速扫描主机全部信息
nmap -T4 –A -v 靶场IP地址
探测敏感信息
nikto -host http://靶场IP地址:端口
目录信息探测 dirb http://靶场IP:端口
2.3 深入挖掘
分析nmap 、nikto扫描结果,挖掘可以利用的信息;
使用浏览器打开 http://ip:port/敏感页面,查看敏感信息,找到可利用的位置;
2.4 漏洞扫描
owasp-zap web漏洞扫描器,自动挖掘web应用程序中的漏洞;
2.5 测试PUT漏洞
对敏感目录进行测试
curl -v -X OPTIONS http://靶场/test
利用PUT漏洞获取shell思路:
上传webshell到服务器,之后通过对应的目录遍历路径访问webshell,执行webshell。在kali linux当中获取反弹shell;
2.6 上传webshell
在test目录下直接 使用浏览器插件 Poster,上传webshell;
使用/usr/share/webshells/php/下的webshell
使用 nc 开启监听反弹shell
nc –nlvp 端口 如果是为了绕过防火墙 端口号使用443
启动终端
echo “import pty; pty.spawn(‘/bin/bash’)” > /tmp/asdf.py
python /tmp/asdf.py
2.7 提升权限
查看系统版本信息:lsb_release –a
寻找内核溢出漏洞 searchsploit 内核版本
– 继续使用nc上传溢出代码
– 执行溢出代码
查找可以提权的软件
ls -l /etc/cron.daily
chkrootkit –V
searchsploit chkrootkit
3 Tomcat弱口令利用及防范
3.1 攻击环境
Apache+Tomcat是很常用的网站解决方案,Apache用于提供Web服 务,而Tomcat是Apache 服务器的扩展,用于运行JSP 页面和Servlet。Tomcat有一个管理后台,其用户名和密码在Tomcat安装目录下的 conf\tomcat-users.xml文件中配置,不少管理员为了方便,经常采用弱口令。
下载 Java JDK1.6 安装包 , 并进行安装 , JDK 安 装目录为 :
C:\Program Files\Java\jdk1.6.0_10 ,并按照图5-3-2设置系统变量。
下载Apache-Tomcat 6.0.37,并解压缩到C:\apache-tomcat-6.0.37 目 录下。在Tomcat安装目录下的bin子目录执行“service install”命令把 Tomcat安装为服务。
以后Windows Server启动后,将自动启动Tomcat服务。
3.2 攻击过程
- 扫描Tomcat弱口令
- 上传JSP网页木马
WAR是Web应用程序的一种封装方式,JavaJDK中的jar命令可以把用户自己的JSP文件封装在WAR文件。
3.3 Tomcat弱口令利用防范
从以上攻击过程中,可以知道用户名和密码被破解是攻击的关键。Tomcat弱口令利用防范的措施是加强用户名和密码的设置,用户名也不要使用admin