文件安全-下载&删除-黑白盒
1、下载=读取(获取源码)
文件下载
利用:下载敏感文件(数据库配置,中间件配置,系统密匙等文件信息)
常规下载URL:https://67.202.70.133/files/readfile.php(直接访问,会被默认以php执行文件解析,不能下载到本地,也不能看到源码)
可能存在安全URL:https://67.202.70.133/files/readfile.php?file=readfile.php (下载协议下载php文件 ,源码被下载至本地可以被看到)
https://67.202.70.133/files/readfile.php?file=…/index.php
https://67.202.70.133/files/readfile.php?file=…/configuration.php
依次通过下载index.php主页文件,根据源码泄露信息,确认是Joomle搭建的=
查找Joomle默认的数据库配置文件,并进行下载configuration.php,发现泄露数据库密码用户名等隐私信息
文件读取
1)常见的敏感信息路径:
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/Unix系统:
/root/.ssh/authorized_keys //如需登录到远程主机,需要到.ssh目录下,新建authorized_keys文件,并将id_rsa.pub内容复制进去
/root/.ssh/id_rsa //ssh私钥,ssh公钥是id_rsa.pub
/root/.ssh/id_ras.keystore //记录每个访问计算机用户的公钥
/root/.ssh/known_hosts
//ssh会把每个访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts。当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告, 避免你受到DNS Hijack之类的攻击。
/etc/passwd // 账户信息
/etc/shadow // 账户密码文件
/etc/my.cnf //mysql 配置文件
/etc/httpd/conf/httpd.conf // Apache配置文件
/root/.bash_history //用户历史命令记录文件
/root/.mysql_history //mysql历史命令记录文件
/proc/self/fd/fd[0-9]*(文件标识符)
/proc/mounts //记录系统挂载设备
/porc/config.gz //内核配置文件
/var/lib/mlocate/mlocate.db //全文件路径
/porc/self/cmdline //当前进程的cmdline参数
2)文件读取的靶场注册登录及应用:
实验室:文件路径遍历,简单案例 |网络安全学院 (portswigger.net)
访问实验室即可开启靶场
任意以url的方式打开页面上的图片https://0ae3006a032d097482c3eea700df003b.web-security-academy.net/image?filename=20.jpg发现可以进行替换文件名
开启burp抓包,并将抓取的数据包发送至Repeater处,修改其文件头GET /image?filename=../../../etc/passwd HTTP/2
则返回数据包中会显示,linux服务器中的账户信息
2、文件删除(常出现后台中—鸡肋危险)
可能存在安全问题:前台或后台有删除功能应用
利用:常规删除重装锁定配合程序重装或高危操作
1)登录后台,找到可以删除的页面操作,点击删除,并进行抓包,发现数据包中,的删除操作可以进行执行文件名替换(替换为其他文件进行删除),可以将其替换为源码中的install_lock.txt文件,是一个标识文件,通常用于记录或标记应用程序或系统的安装状态。这类文件通常在安装或初始化过程中创建,并用于防止重复安装或初始化。
2)因为删除文件有过滤,在切换为想要删除install_lock.txt文件,要通过加减../试探该文件的存在位置,最后试探的结果为:GET /gws3vo/admin_template.php?action=del&filedir=../templets../../install/install_lock.txt HTTP/1.1
3)查看对应目标目录下的install_lock.txt文件,已经被删除,再次访问install目录发现需要重装
4)该操作十分危险容易造成网站崩溃,例如:如果删除了页面首页index.php源代码,造成访问失效,访问首页页面则没有图形化等操作