JavaScript原型链污染
1.登录路由 /getflag
请求体中的password不为空,age要小于79,并且password等于admin的密码就登录成功,获得flag
2.注册路由 /reg
这里创建的用户默认age=80,需要修改


3.更新路由 /update


漏洞位于setFn()函数中,该函数支持“路径式赋值”。
如果攻击者控制attrkey参数为proto.polluted,可修改Object的原型对象,影响所有对象,形成原型链污染漏洞。
利用这个路由,更新age属性小于79
attrkey=age&attrval=20


再修改密码和admin一致
attrkey=__proto__.pwd&attrval=admin
然后登录获取flag
password=admin&key=pwd


-END-
版权所有:晨星交流
文章标题:JavaScript原型链污染,BugkuCTF——sodirty
文章链接:https://morningstar.xin/?post=112
本站文章均为原创,未经授权请勿用于任何商业用途
文章标题:JavaScript原型链污染,BugkuCTF——sodirty
文章链接:https://morningstar.xin/?post=112
本站文章均为原创,未经授权请勿用于任何商业用途




