网安靶场环境_DVWA-读取文件报错File not found! Cookie中有两个security键
|
1 问题复现
(1)登录DVMA后,设置DVWA Security为Low。
(2)进入File Inclusion,访问dvwa/vulnerabilities/fi目录下的的test.txt文件(自己创建的测试文件)。
(3)报错ERROR: File not found! 找不到文件。
2 抓包分析
(1)使用BurpSuit抓包。
访问test.txt文件的请求中,Cookie有两个security键;导致设置DVWA Security为Low没有成功。
(2)在浏览器中查看“设置DVWA Security为Low”时,服务端Set Cookie情况。
在Set SessionId时指定了使用路径;而Set Security是没有指定路径。
(3)Cookie的属性。
属性
| 描述
| name
| Cookie的名称,Cookie一旦创建,名称便不可更改
| value
| Cookie的值。如果值为Unicode字符,需要为字符编码。如果值为二进制数据,则需要使用BASE64编码
| maxAge
| Cookie失效的时间,单位秒。如果为正数,则该Cookie在maxAge秒之后失效。如果为负数,该Cookie为临时Cookie,关闭浏览器即失效,浏览器也不会以任何形式保存该Cookie。如果为0,表示删除该Cookie。默认为-1。
| secure
| 该Cookie是否仅被使用安全协议传输。安全协议。安全协议有HTTPS,SSL等,在网络上传输数据之前先将数据加密。默认为false。
| path
| Cookie的使用路径。如果设置为“/sessionWeb/”,则只有contextPath为“/sessionWeb”的程序可以访问该Cookie。如果设置为“/”,则本域名下contextPath都可以访问该Cookie。注意最后一个字符必须为“/”。
| domain
| 可以访问该Cookie的域名。如果设置为“.google.com”,则所有以“google.com”结尾的域名都可以访问该Cookie。注意第一个字符必须为“.”。
| comment
| 该Cookie的用处说明,浏览器显示Cookie信息的时候显示该说明。
| version
| Cookie使用的版本号。0表示遵循Netscape的Cookie规范,1表示遵循W3C的RFC 2109规范
|
3 修复服务端代码
(1)查看服务端setcookie的php代码。
发现没有给security指定使用路径。
(2)修改setcookie()中security的路径为“/”。
(3)PHP setcookie()函数。
语法:setcookie(name,value,expire,path,domain,secure)
参数
| 描述
| name
| 必需。规定 cookie 的名称。
| value
| 必需。规定 cookie 的值。
| expire
| 可选。规定 cookie 的有效期。
| path
| 可选。规定 cookie 的服务器路径。
| domain
| 可选。规定 cookie 的域名。
| secure
| 可选。规定是否通过安全的 HTTPS 连接来传输 cookie。
|
4 验证结果
(1)清除浏览器Cookie。
(2)重新登录DVMA,再次设置DVWA Security为Low。
Set SessionId的路径和Set Security的路径一致。
(3)进入File Inclusion,访问dvwa/vulnerabilities/fi目录下的的test.txt文件。
成功读取到文件内容,并且请求Cookie中只有一个security键。
来源:https://www.cnblogs.com/LaytonWang/p/17892889.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|
|
|
发表于 2023-12-11 00:39:33
举报
回复
分享
|
|
|
|