【BP靶场portswigger-服务端6】信息泄露漏洞-5个实验(全)(下)

简介: 【BP靶场portswigger-服务端6】信息泄露漏洞-5个实验(全)(下)

7、用户帐号信息


1、个人信息:用户的个人资料或帐户页面通常包含敏感信息,如用户的电子邮件地址、电话号码、API密钥等。由于用户通常只能访问自己的帐户页面,因此这本身并不代表漏洞。但某些网站包含逻辑缺陷,可能允许攻击者利用这些页面查看其他用户的数据。


如网站用户名传参

GET /user/personal-info?user=carlos


2、大多数网站都会采取措施来防止攻击者通过更改此参数来访问任意用户的帐户页面,但有时加载单个数据项的逻辑并不健壮


攻击者可能无法完全加载另一个用户的帐户页面,但是用于获取和呈现用户注册的电子邮件地址的逻辑可能无法检查用户参数是否与当前登录的用户匹配。在这种情况下,简单地更改用户参数将允许攻击者在用户自己的帐户页面上显示任意用户的电子邮件地址。


8、通过备份文件泄露源代码


1、源码泄露:获得源代码访问权限使攻击者更容易理解应用程序的行为并构造高严重性攻击。敏感数据有时甚至被硬编码在源代码中。这方面的典型示例包括用于访问后端组件的API密钥和凭据。


2、开源技术框架:如果可以识别正在使用的特定开源技术,则可以轻松访问数量有限的源代码。


3、交互式泄露:有时甚至有可能导致网站暴露自己的源代码。在规划网站时,可能会发现某些源代码文件被显式引用。不幸的是,请求它们通常不会显示代码本身。当服务器处理具有特定扩展名的文件时,例如. php语言时,它通常会执行代码,而不是简单地将其作为文本发送到客户端。但在某些情况下,可以诱使网站返回文件的内容。如文本编辑器通常在编辑原始文件时生成临时备份文件。这些临时文件通常以某种方式表示,如在文件中附加代字号(~)添加到文件名或添加不同的文件扩展名。使用备份文件扩展名请求代码文件有时会允许读取响应中的文件内容。


4、涉及实验:

实验3:通过备份文件泄露源代码


实验3:通过备份文件泄露源代码


信息:


/robots.txt文件泄露了备份文件


part1:


访问/robots.txt文件


/robots.txt文件中显示Disallow: /backup


9842ded85aa74195a23d898aaea9577b.png


浏览/backup


浏览到/backup/ProductTemplate.java.bak以访问源代码


49ab0191bf25424ba7b9119e0d83dddf.png


part2:


完成实验


分析备份源代码中数据


连接构建器包含Postgres数据库的硬编码密码


eptvf6k7s238z52vork0s0yjspgiz1f3


01646540701249fb9ddac00e6c193bd7.png


单击"提交解决方案",然后输入数据库密码来解决实验室问题


d40515fbb8594c2aa0066ae7d4485457.png

c5ec8decf47e452bba9c0bddb27e0d0f.png


(BP工具)


目标---map---选中URL--互动工具---内容搜索---启动内容发现会话


最后会发现/backup目录及其内容等相关信息


f2cae5e1081e4c3c8cda0faeefa4c952.png

59e7fced155545cd92e6d38101d5d8ba.png


9、不安全配置导致信息泄露


1、配置不当:由于配置不当,网站有时容易受到攻击。由于第三方技术的广泛使用,这种情况尤其常见,而第三方技术的大量配置选项并不一定能被实现它们的人很好地理解。


2、调试功能:在其他情况下,开发人员可能忘记禁用生产环境中的各种调试选项。如HTTP痕量方法设计用于诊断目的。如果启用,Web服务器将响应使用痕量方法,方法是在响应中回显收到的确切请求。此行为通常是无害的,但偶尔会导致信息泄漏,例如可能由反向代理附加到请求的内部身份验证头的名称。


3、涉及实验:

实验4:经由信息公开的认证旁路


实验4:经由信息公开的认证旁路


管理界面存在一个绕过身份验证的漏洞(请获取头名称,然后使用它绕过实验的身份验证)


已有账号:wiener:peter


目标:访问管理界面并删除卡洛斯的帐户


part1:


使用已有账号登陆

a832c2eac182413b8fbf0da36fba75bc.png

后面加上/admin进行访问


响应显示,只有以管理员身份登录或从本地IP请求时,管理面板才可访问


fee25c65cb074e7d9dd8010373b4cbef.png


part2:


在HTTP历史记录中,找到数据包

eefa1ad9181d4f6e8a71ddfce86122ba.png


再次发送请求,但这次使用TRACE方法:

TRACE /admin


4e3072a5cf3542c380e295040ed04117.png


包含IP地址的X-Custom-IP-Authorization报头会自动附加到请求中


(用于确定请求是否来自本地主机IP地址)


part3:


"Proxy" ---> "Options"--->向下找到到“搜索和替换”--->单击“添加”


将匹配条件留空,但在“置换”字段中输入:

X-Custom-IP-Authorization: 127.0.0.1


(BP代理现在将添加此标头到发送的每个请求)


8a8d54c6cdec42fc871abe7de73d21eb.png


part4:


解决实验


(刷新刚刚的/admin页面)


浏览到主页,现在可以访问管理面板,就可以删除了


007e7951612e4478bd10288823b50fe3.png2da3efcb1f4b43158113b82b94cdb8a6.png

10、版本控制历史记录


1、版本控制系统:几乎所有的网站都是使用某种形式的版本控制系统开发的,比如Git。默认情况下,Git项目将其所有版本控制数据存储在名为.git。有时网站会在生产环境中公开此目录。在这种情况下,只需浏览到/.git.


2、下载:虽然手动浏览原始文件结构和内容通常是不切实际的,但有多种方法可以下载整个 .git 目录,然后,可以使用本地安装的Git打开它,以访问网站的版本控制历史记录。这可能包括包含已提交更改和其他感兴趣信息的日志。


3、有限性:可能无法访问完整的源代码,但是比较diff将允许阅读小的代码片段。与任何源代码一样,也可能在某些更改的行中发现硬编码的敏感数据


4、涉及实验:

实验5:版本控制历史信息泄露


实验5:版本控制历史信息泄露


获取其版本控制历史记录泄露敏感信息(获取管理员用户的密码)


目标:删除指定账号


part1:


浏览到/.git以显示实验室的Git版本控制数据


3b16dd9e679047a3b7bf3d7018bf45f0.png


part2:


下载整个目录的副本(Linux主机命令)


Linux wget命令:用于在终端中下载网络文件


wget -r https://YOUR-LAB-ID.web-security-academy.net/.git/
我的是:
wget -r https://0a49009104e59083c21b2aaf00fd0029.web-security-academy.net/.git

025b89e21e4040f9b25a7d59d1b8b899.png

     f40dd08632b7400a893c9127348bef6b.png 

part3:


先进入到文件夹中(cd命令,文件在kali中)


git status
(用于显示工作目录和暂存区的状态)


仔细查看更改后的admin.conf文件的差异(提交用环境变量ADMIN_PASSWORD替换了硬编码的管理员密码。但硬编码密码在diff中仍然清晰可见)


消息提示:“从配置中删除管理员密码”(删除了2个admin文件)


055665f5038346e49ff1295a6e040463.png

git log命令:用于显示提交日志信息


git log

9ea8f2efafe34d6cb63cb4bf8cf6edfe.png


git diff 命令:显示已写入暂存区和已经被修改但尚未写入暂存区文件的区别


git diff + 文件名(第二个)
我的是:
git diff 08d6da909e61ec2857f99e2c41084dc3b7493834


0da6a3d8c8204cce8f5838adba0188b3.png


ADMIN_PASSWORD=h2uaz3b3f199lf0ota5g


part4:


完成实验


使用管理员账号登陆,并删除指定账号

be64dda176d948f99ec655318afff001.png

440e5138c8634b5d9012e4db39316499.png


0216d1bf23e246d28e14f0a98e4780bc.png


7d62be979184459ab44139ed85f387fe.png

目录
相关文章
|
XML SQL 数据采集
【BP靶场portswigger-服务端6】信息泄露漏洞-5个实验(全)(上)
【BP靶场portswigger-服务端6】信息泄露漏洞-5个实验(全)(上)
406 0
【BP靶场portswigger-服务端6】信息泄露漏洞-5个实验(全)(上)
|
JSON 安全 Oracle
【bp靶场portswigger-服务端2】身份认证漏洞-16个实验(全)(上)
【bp靶场portswigger-服务端2】身份认证漏洞-16个实验(全)(上)
552 0
【bp靶场portswigger-服务端2】身份认证漏洞-16个实验(全)(上)
|
安全 前端开发 中间件
【bp靶场portswigger-服务端2】身份认证漏洞-16个实验(全)(下)
【bp靶场portswigger-服务端2】身份认证漏洞-16个实验(全)(下)
473 0
【bp靶场portswigger-服务端2】身份认证漏洞-16个实验(全)(下)
|
安全 Java Shell
BP靶场portswigger-服务端8】文件上传漏洞-7个实验(全)(上)
BP靶场portswigger-服务端8】文件上传漏洞-7个实验(全)(上)
354 0
BP靶场portswigger-服务端8】文件上传漏洞-7个实验(全)(上)
|
SQL 关系型数据库 MySQL
【BP靶场portswigger-服务端1】SQL注入-17个实验(全)(下)
【BP靶场portswigger-服务端1】SQL注入-17个实验(全)(下)
381 0
【BP靶场portswigger-服务端1】SQL注入-17个实验(全)(下)
|
SQL Oracle 安全
【BP靶场portswigger-服务端1】SQL注入-17个实验(全)(上)
【BP靶场portswigger-服务端1】SQL注入-17个实验(全)
326 0
【BP靶场portswigger-服务端1】SQL注入-17个实验(全)(上)
|
存储 Web App开发 移动开发
【BP靶场portswigger-客户端14】点击劫持-5个实验(全)
【BP靶场portswigger-客户端14】点击劫持-5个实验(全)
362 0
【BP靶场portswigger-客户端14】点击劫持-5个实验(全)
|
安全 算法 Oracle
【BP靶场portswigger-服务端5】业务逻辑漏洞-11个实验(全)(下)
【BP靶场portswigger-服务端5】业务逻辑漏洞-11个实验(全)(下)
397 0
【BP靶场portswigger-服务端5】业务逻辑漏洞-11个实验(全)(下)
|
供应链 安全 数据安全/隐私保护
【BP靶场portswigger-服务端5】业务逻辑漏洞-11个实验(全)(上)
【BP靶场portswigger-服务端5】业务逻辑漏洞-11个实验(全)(上)
780 0
【BP靶场portswigger-服务端5】业务逻辑漏洞-11个实验(全)(上)
|
存储 JSON JavaScript
【BP靶场portswigger-客户端15】基于DOM的漏洞-7个实验(全)
【BP靶场portswigger-客户端15】基于DOM的漏洞-7个实验(全)
291 0
【BP靶场portswigger-客户端15】基于DOM的漏洞-7个实验(全)