【问题标题】:Security concerns for JsonRequestBehavior.AllowGet when using AJAX to get JSON使用 AJAX 获取 JSON 时 JsonRequestBehavior.AllowGet 的安全问题
【发布时间】:2017-07-07 19:47:03
【问题描述】:

当我使用 AJAX 获取 JSON 信息时,我最初收到一条错误消息,指出请求被阻止,因为可能会泄露敏感信息。我在 StackOverflow 上阅读了有关 JSON 劫持和各种其他安全问题的信息。然而,这些帖子中的大多数都可以追溯到几年前,我想知道答案本身是否有点过时......坦率地说,我发现这一切都相对令人困惑。

我提供了一个我目前正在使用的示例脚本,它使用 AJAX 来获取 JSON 信息,该信息利用 JsonRequestBehavior.AllowGet 来正常工作。该脚本正在返回我要求的信息。它只返回 SalesOrder 编号,仅此而已——所以我不觉得它在传递“敏感”信息。我还应该担心任何安全漏洞吗?使用 AllowGet 是不好的做法吗?

这是脚本

    <script>
        $(document).ready(function () {
            $('#printBtn').click(function () {
                $.ajax({
                    type: 'GET',
                    url: '/Home/GetSalesOrderListAsJSON',
                    success: function(response) {
                        var stringOfSalesOrders = "";
                        var totalToMove = 0;
                        response.forEach(function(str) {
                            stringOfSalesOrders += str + ",";
                            totalToMove++;
                        });

                        alert("Number being moved: " + totalToMove);

                        $.ajax({
                            type: "POST",
                            url: "/Home/PostResults",
                            data: { s: numberOfActiveIds},
                            success: function (results) {
                                if(results == "Success") {
                                    window.location.href = '/Home/Results';
                                }
                            }
                        });
                    }
                });
            });
        });
    </script>

再一次,我知道这个问题过去曾被问过,但如果可能的话,我正在寻找一个更新的、当前的答案。如果有有价值的资源或帖子值得阅读,请分享它们,我会确保将此问题标记为重复或完全删除!

谢谢!

【问题讨论】:

  • 您可以随时使用 AntiForgeryToken 以使您的通话更“安全”

标签: javascript json ajax asp.net-mvc security


【解决方案1】:

查看此帖子: Why is JsonRequestBehavior needed?

摘自原帖:

来自原始帖子的其他有用的 cmets:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-19
    • 1970-01-01
    • 2016-12-10
    • 2019-12-19
    • 2013-05-04
    • 1970-01-01
    • 2011-03-22
    • 1970-01-01
    相关资源
    最近更新 更多