我不确定这是安全漏洞还是 firefeed.firebaseio.com 规则设置有问题。
在此之前,我很好奇为什么我们注册firebase时没有得到api-key。所以我的第一个问题出来了。(每个人都可以简单地擦除或编辑您的数据?如果有人知道您的 Firebase 网址)
然后我想知道规则是如何工作的,我尝试了一些东西firefeed.firebaseio.com
。因为我们可以写一些东西users/user_id/feed
,我用这段代码写进提要。
var url = new Firebase('https://firefeed.firebaseIO.com');
var authClient = new FirebaseAuthClient(url, function(error, user) {
if (error) {
console.log(error);
} else if (user) {
console.log(user);
// user authenticated with Firebase
var usersRef = url.child('/users/MYUSERID/feed');
usersRef
.set({
email: user.email,
username: user.username
});
} else {
// user is logged out
}
});
之后,我所有的提要和以下提要都消失了,在我运行代码后只留下电子邮件、用户名。我在这里附上了一张前后的照片。
我知道我只是擦除我的帐户供稿而不是其他人,因为规则设置了欺骗用户,但这危险吗?我们如何防止这种情况发生?