目录遍历
漏洞产生原因:
在web功能设计中,很多时候我们会要将需要访问的文件定义成变量,从而让前端的功能便的更加灵活。 当用户发起一个前端的请求时,便会将请求的这个文件的值(比如文件名称)传递到后台,后台再执行其对应的文件。 在这个过程中,如果后台没有对前端传进来的值进行严格的安全考虑,则攻击者可能会通过“…/”这样的手段让后台打开或者执行一些其他的文件。 从而导致后台服务器上其他目录的文件结果被遍历出来,形成目录遍历漏洞。
-
随意点击一个链接,发现url中出现了一个file参数,因此我们可以尝试使用…/来进行目录跳转,访问其他想要访问的文件
-
访问其他文件
敏感信息泄露
如果你通过不带参数的url(比如:http://xxxx/doc)列出了doc文件夹里面所有的文件,这种情况,我们成为敏感信息泄露。 而并不归为目录遍历漏洞。
漏洞产生原因:由于后台人员的疏忽或者不当的设计,导致不应该被前端用户看到的数据被轻易的访问到。 比如:
---通过访问url下的目录,可以直接列出目录下的文件列表;
---输入错误的url参数后报错信息里面包含操作系统、中间件、开发语言的版本或其他信息;
---前端的源码(html,css,js)里面包含了敏感信息,比如后台登录地址、内网接口信息、甚至账号密码等;
类似以上这些情况,我们成为敏感信息泄露。敏感信息泄露虽然一直被评为危害比较低的漏洞,但这些敏感信息往往给攻击着实施进一步的攻击提供很大的帮助,甚至“离谱”的敏感信息泄露也会直接造成严重的损失。 因此,在web应用的开发上,除了要进行安全的代码编写,也需要注意对敏感信息的合理处理。
-
查看网页源代码
发现网页源代码中存在一些敏感信息的注释
-
登录一下,打开网页开发者选项,观察登录请求数据包的cookie
发现用户名和hash后的密码是以明文状态显示,这也造成了敏感信息泄露。因此我们可以使用彩虹表进行破解。
-
中间件造成敏感信息泄露
使用有问题的中间件(这里是Apache)搭建服务器会导致目录结构泄露等问题。