2011-11-22 112 views
8

我在审核我的网站w3af保护我的网站

它说它在我的网站上发现了几个问题,但我怀疑这是真的。

的问题之一是:

的网址:http://localhost/en/login很容易受到跨站点请求伪造。它允许攻击者在将数据发送到服务器时从POST到GET交换方法。

我很确定它不容易受到csrf攻击,因为我已经在我的表单中使用了crsf保护(带有被检查令牌的字段)。

所以我想知道什么是该消息有关:

它允许攻击者从POST交换方法将数据发送到服务器得到的。

我不在乎攻击者是否能够从POST切换到GET或者我?

如果我可以请你解释我为什么这样做?它如何被利用?

+0

你在使用$ _REQUEST而不是_POST吗? –

+0

@MarcB:是的。但我不明白这是如何被利用的(考虑csrf预防领域)。 – PeeHaa

+0

@Macmade:你能解释我为什么关心它吗? – PeeHaa

回答

3

从没有w3af经验的角度来看,我会认为它有一些非常基本的规则写入它,它会检查这些规则并向他们报告。

在这种情况下,它可能会检查您是否已经使用$_REQUEST代替$_POST$_GET,然后,如果它发现它报告错误,不管你做出了这个安全的努力。

每个人都会编码不同,因此让软件理解你的代码的上下文将是一个了不起的成就,可能超出了这个智能。这并不意味着对软件的攻击,但说实话,如果我想出了一些能够理解别人代码的上下文和意图的程序,我不会在sourceforge上提供它:p

有关系吗?也许取决于你对网站的安全程度(见上面的Marc B(+1)评论)。

- 编辑 -

通过使用$_REQUEST,而不是指定$_POST$_GET你已经离开自己容易受到攻击的区域,很容易关闭。不仅如此,而且$_REQUEST还包括$_COOKIE。这已被覆盖here而不是我复制别人的答案。

+0

告诉我为什么+1因为我有csrf保护内置...我不明白。另请参阅我对Marc B的评论的评论。如何在csrf保护到位时利用它。或者我在这里错过了一些巨大的东西(也可以是这种情况,它有时会发生:)) – PeeHaa

+0

我已经更新了我的回复; –

+0

哦@PeeHaa顺便给w3af +1。只是看了一下,它看起来很棒。 –