BurpSuit之CSRF检测

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BurpSuit之CSRF检测相关的知识,希望对你有一定的参考价值。

参考技术A

抓包

在history中找到相应的请求

伪造请求

右击选中的链接,选择Engagement tools--->Generate CSRF Pos选项,如下图所示:

修改提交的参数

在弹出的对话框中,修改需要提交的参数,然后生成攻击脚本,再复制url在浏览器中测试,具体步骤如下图所示:

在浏览器中测试

将上一步复制的URL粘贴到浏览器中,点击request按钮,如下图所示:

检查请求是否成功

如果请求成功,则存在CSRF漏洞。

CSRF 在刷新网页时检测到错误消息

【中文标题】CSRF 在刷新网页时检测到错误消息【英文标题】:CSRF detected error message on refreshing webpage 【发布时间】:2018-07-04 13:20:33 【问题描述】:

我正在开发一个从 facebook 获取详细信息的 Rails 应用程序。我已经从 facebook 获取了详细信息。但是当我刷新网页时,我收到了一个名为 CSRF 的错误。我使用了一些方法,但都失败了。

facebook Graph API 用于编辑操作。

这些是在员工控制器的内部类中添加的。

    skip_before_action :verify_authenticity_token

    skip_before_action :verify_authenticity_token, only: [:edit]

    protect_from_forgery :only => [:edit]

    skip_before_action :authenticate_user, only: [:edit]

    skip_before_action :authenticate_user!

当使用 authenticate_user 时(第 4 和第 5 种情况)我得到一个参数错误, Before process_action callback :authenticate_user has not been defined.

在所有其他情况下,使用 facebook 更新页面后刷新页面时的错误是 OmniAuth::Strategies::OAuth2::CallbackError

csrf_detected | CSRF detected

PS:我使用 'omniauth-facebook' 和 'koala' gem 进行集成。

【问题讨论】:

【参考方案1】:

redirected_to 到需要打印详细信息的页面。

【讨论】:

【参考方案2】:

我之前遇到过这个问题,我之前尝试过验证真实性令牌,但只有在我重定向页面时才有效 所以我请求你只重定向页面。

【讨论】:

以上是关于BurpSuit之CSRF检测的主要内容,如果未能解决你的问题,请参考以下文章

检测到跨站请求伪造 (CSRF) 时应发回啥响应

利用BURPSUITE检测CSRF漏洞

CSRF-Scanner——打造全自动检测CSRF漏洞利器

CSRF检测工具-CSRFTester(较老)

SQLMAP自动注入

Deemon:自动化CSRF安全检测框架