一次工作中的APP CSRF 任意文件删除漏洞案例
一次工作中的APP CSRF 任意文件删除漏洞案例
function type2_dele(id){
$.getJSON('dele_us_type2.htm',{strategyId:id},function(data){
if(data.flag){
alert("删除成功!");
searchData(2);
}
});
}
function type3_dele(id){
$.getJSON('dele_us_type3.htm',{viewImgId:id},function(data){
if(data.flag){
alert("删除成功!");
searchData(3);
}
dele_us_type2应该是被管理员删除了
其中的viewImgId参数就是删除的randow用户随机图片
默认返回的json,http://www.XXX.com/dele_us_type3.htm?viewImgId=就是flase
这里只是写了一个判断,判断如果成功图像属性,即删除成功
并没有对声明的type3_dele 函数viewImgId进行token的判断
这就造成了可以进行交互性测试
首先准备用户1,用户1,就是攻击方,发起攻击的用户
准备用户2,受害方,就是受害的用户
而dele_us_type3.htm就在用户相片,首先,在受害方APP程序传两张图片
任意
然后通过APP抓包
得到数据
为此,写个程序演示
这就是受害方的数据
其中注意:
"ID_VIEW_IMG":"f0ad1f7e785911180178ac2d1a3b0054"
我们要测试的就是这个
我们要在受害方2退出cookie情况下,登录受害1的用户(理论上如果存在这种缺陷也可以不用登录)
删除受害2的数据
受害方为APP
攻击方为网页
我们先进行攻击方的POST方法,我们尝试删除
这时候攻击方已经加载POST的cookie,实现了自动登录
接下来读取受害者的数据
然后我们退出受害者的cookie
接下来需要做的就是尝试删除
f0ad1f7e785911180178ac2d1a3b0054
图片
在程序输入f0ad1f7e785911180178ac2d1a3b0054
这时候我们再次登录受害者的账号
发现两张照片已经变成了一张照片,证明漏洞利用成功
<< 上一篇
下一篇 >>