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>");
        }

观察到<reset>中的用户名也是同上一题一样,  可以达到任意用户的目的。

0x03、Insecure DOR (Order Tickets)

模拟了一个下单的功能:

仔细观察HTML源码,  发现票的单价放在在前端:

Low

修改ticket_price的价格为0:

达到0购的支付漏洞。

Medium&High

这时候票的单价就定义在服务端了,  而不是交给前端,  安全得多:

猜你喜欢

转载自blog.csdn.net/angry_program/article/details/104755615
今日推荐