目录
目录浏览(目录遍历)漏洞
任意文件读取/下载漏洞
利用任意文件读取漏洞Getshell
目录浏览漏洞是由于网站存在配置缺陷,导致网站目录可以被任意浏览,这会导致网站很多隐私文件与目录泄露,比如数据库备份文件、配置文件等,攻击者利用该信息可以为进一步入侵网站做准备。
目录浏览漏洞的探测 :可以利用web漏洞扫描器扫描web应用进行检测,也可通过搜索,网站标题包含 “index of” 关键词的网站进行访问
目录浏览漏洞的危害:攻击者通过访问网站某一目录时,该目录没有默认首页文件或没有正确设置默认首页文件,将会把整个目录结构列出来,将网站结构完全暴露给攻击者;攻击者可能通过浏览目录结构,访问到某些隐秘文件(如phpinfo文件、服务器探针文件、网站管理员后台访问地址、数据库连接文件等)。
目录浏览漏洞的预防:
任意文件读取/下载漏洞比目录浏览漏洞危害更大,他不仅会泄露网站的目录结构,而且攻击者可以直接获得网站文件的内容。攻击者可以因此获取到很多机密的文件,比如配置文件,比如 /etc/passwd、/root/.bash_history文件等。
任意文件读取/下载漏洞的挖掘:
任意文件读取/下载漏洞的危害:下载服务器任意文件,如脚本代码、服务及系统配置文件等。可用得到的代码进一步代码审计,得到更多可利用漏洞。
Windows:
C:\boot.ini //查看系统版本
C:\Windows\System32\inetsrv\MetaBase.xml //IIS配置文件
C:\Windows\repair\sam //存储系统初次安装的密码
C:\Program Files\mysql\my.ini //Mysql配置
C:\Program Files\mysql\data\mysql\user.MYD //Mysql root
C:\Windows\php.ini //php配置信息
C:\Windows\my.ini //Mysql配置信息
...
Linux:
/etc/passwd #查看用户文件
/etc/shadow #查看密码文件,如果能读取该文件说明是root权限
/etc/my.cnf
/etc/httpd/conf/httpd.conf #查看apache的配置文件
/root/.bash_history #查看历史命令
/root/.mysql_history #mysql历史命令记录文件
/var/lib/mlocate/mlocate.db #本地所有文件信息
/etc/ssh/sshd_config #ssh配置文件,如果对外开放可看到端口
/proc/self/fd/fd[0-9]*(文件标识符)
/proc/mounts
/porc/config.gz
/root/.ssh/authorized_keys
/root/.ssh/id_rsa
/root/.ssh/id_ras.keystore
/root/.ssh/known_hosts
程序的配置文件
apache:
/etc/httpd/conf/httpd.conf
/etc/apache2/httpd.conf
/etc/apache2/apache2.conf
nginx:
/etc/nginx/nginx.conf
/usr/local/nginx/conf/nginx.conf
/usr/local/etc/nginx/nginx.conf
redis:
/etc/redis.conf
index.php?f=../../../../../../etc/passwd
针对Linux系统任意文件下载的几种思路:
任意文件读取/下载漏洞的预防:
任意文件读取/下载漏洞的场景:出现在文件读取或者展示图片等对文件读取交互的功能块。
想直接利用任意文件读取来Getshell还是比较难的。如果目标网站是Tomcat的话,可以利用文件读取漏洞来读取Tomcat的tomcat-users.xml配置文件,然后得到Tomcat管理页面的账号密码,登录,上传War包Getshell。具体上传war包getshell,传送门:https://blog.csdn.net/qq_36119192/article/details/90446112#%E5%BC%B1%E5%8F%A3%E4%BB%A4%2BGetshell
然而,如何能知道Tomcat的tomcat-users.xml配置文件的绝对路径呢?这确实很难找。这里有一个思路就是,我们可以通过读取 .bash_history文件来查看管理员的历史命令,来得到Tomcat的安装路径,从而得知tomcat-users.xml的绝对路径。
传送门:https://blog.csdn.net/xiaoi123/article/details/80803390
来源:谢公子的博客
责编:Zuo