7.bWAPP – INSECURE DIRECT OBJECT REFERENCES
0x01、Insecure DOR (Change Secret)
同 XSS - Stored (Change Secret)
Low
仔细观察页面, 发现隐藏一个input标签, 作用是输入用户名, 并且配合提交的修改密码, 完成修改用户密码的操作:
这里就可以利用该用户名input标签达到修改任意用户密码的攻击,
修改login的input标签类型(type)为text:
然后就可以修改任意用户的密码了:
Medium&High
使用了随机生成的token验证当前login 的用户:
0x02、Insecure DOR (Reset Secret)
观察HTML源代码, 发现按钮有一个JS事件:
事件代码为:
function ResetSecret()
{
var xmlHttp;
// Code for IE7+, Firefox, Chrome, Opera, Safari
if(window.XMLHttpRequest)
{
xmlHttp = new XMLHttpRequest();
}
// Code for IE6, IE5
else
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlHttp.open("POST","xxe-2.php",true);
xmlHttp.setRequestHeader("Content-type","text/xml; charset=UTF-8");
xmlHttp.send("<reset><login>bee</login><secret>Any bugs?</secret></reset>");
}
观察到中的用户名也是同上一题一样, 可以达到任意用户的目的。
0x03、Insecure DOR (Order Tickets)
模拟了一个下单的功能:
仔细观察HTML源码, 发现票的单价放在在前端:
Low
修改ticket_price的价格为0,从而可以实现0元购
Medium&High
这时候票的单价就定义在服务端了, 而不是交给前端, 安全得多:
文笔生疏,措辞浅薄,望各位大佬不吝赐教,万分感谢。
免责声明:由于传播或利用此文所提供的信息、技术或方法而造成的任何直接或间接的后果及损失,均由使用者本人负责, 文章作者不为此承担任何责任。
转载声明:儒道易行 拥有对此文章的修改和解释权,如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经作者允许,不得任意修改或者增减此文章的内容,不得以任何方式将其用于商业目的。
博客:
https://rdyx0.github.io/
先知社区:
https://xz.aliyun.com/u/37846
SecIN:
https://www.sec-in.com/author/3097
CSDN:
https://blog.csdn.net/weixin_48899364?type=blog
公众号:
https://mp.weixin.qq.com/mp/appmsgalbum?__biz=Mzg5NTU2NjA1Mw==&action=getalbum&album_id=1696286248027357190&scene=173&from_msgid=2247485408&from_itemidx=1&count=3&nolastread=1#wechat_redirect
FreeBuf:
https://www.freebuf.com/author/%E5%9B%BD%E6%9C%8D%E6%9C%80%E5%BC%BA%E6%B8%97%E9%80%8F%E6%8E%8C%E6%8E%A7%E8%80%85