缺陷标题 testphp网站管理员目录列表暴露,导致数据库结构泄露。
测试平台与浏览器 Windows 10+IE 11或Chrome 45.0。
测试步骤
(1)打开testphp网站http://testphp.vulnweb.com/。
(2)在浏览器地址栏中追加admin,如图1-30所示,按Enter键。
图1-30 在URL后面追加admin
期望结果 不会出现目录结构遍历和信息泄露问题。
实际结果 出现管理员目录列表,打开creat.sql能看到数据库结构,结果如图1-31和图1-32所示。
图1-31 可以看到管理员目录列表
除了本试验中的方法,Apache服务器也可以通过配置来禁止访问某些文件/目录。
(1)增加Files选项来控制。例如,不允许访问.inc扩展名的文件,保护PHP类库。可通过以下语句实现。
图1-32 暴露网站数据库
(2)禁止访问某些指定的目录(可以用<DirectoryMatch>来进行正则匹配)。
(3)通过文件匹配来禁止,比如禁止所有针对图片的访问。
(4)针对URL相对路径的禁止访问。