【问题标题】:Detecting suspicious behaviour in a web application - what to look for?检测 Web 应用程序中的可疑行为 - 寻找什么?
【发布时间】:2011-02-17 04:59:15
【问题描述】:

我想问一下我们当中积极主动(或偏执;)的人:您在寻找什么,以及如何寻找?

我主要考虑的是可以通过编程方式监视的内容,而不是手动检查日志。

例如:

  • 手动/自动黑客尝试。
  • 数据略读。
  • 机器人注册(已逃避验证码等)。
  • 其他不受欢迎的行为。

只是想知道大多数人会认为什么是实用和有效的。

预防性的东西(如用户输入卫生)当然是至关重要的,但在这个问题的情况下,我更感兴趣的是检测潜在的威胁。在这种情况下,我对防盗警报器感兴趣,而不是锁。

我所说的这种事情的一个例子存在于 SO 上。如果您在短时间内对问题进行过多修改,它会显示验证码以确保您不是机器人。

【问题讨论】:

    标签: security web-applications bots


    【解决方案1】:

    了解您的应用程序是否会出现问题的最佳方法是主动找出问题所在。首先从威胁模型开始。威胁模型对于在攻击者之前发现潜在问题至关重要。

    为了了解应用程序威胁形势,我将采取以下步骤: - 首先识别应用程序中的所有进程(即身份验证、事务处理等) - 第二,数据流最高和最关键的流程。对我来说,数据流图是直观了解潜在攻击来源的最大帮助。 - 第三,分析您的流程。为此,我推荐使用 Microsoft 的威胁建模工具之类的工具。它擅长迫使您查看所有可能的攻击媒介。 - 第四,制定计划来解决您发现的问题。

    这个过程非常有用,因为开发应用程序的人比攻击者更了解如何找到漏洞。

    【讨论】:

      【解决方案2】:

      您可以查看统计异常。例如,保持过去一天每小时失败登录百分比的运行平均值。例如,如果该百分比突然变为原来的三倍,那么您可能正在查看密码破解尝试。

      没有办法预先说明这种算法的正确参数是什么。我会说你首先让它们过于敏感,然后将它们调低直到误报的数量变得可以接受。

      【讨论】:

        【解决方案3】:

        在进入 Web 应用程序之前查找恶意 http 请求的应用程序称为 Web Application Firewall。大多数 WAF 可以配置为在检测到攻击时发送电子邮件,因此您有一个“防盗警报”。 WAF 更有助于在攻击到达您的 Web 应用程序之前阻止攻击,这更像是一堵砖墙,当您触摸它时就会被激怒。

        【讨论】:

        • 谢谢,但我的意思是检测应用程序本身的异常行为(防火墙可能将其视为完全合法的请求)。 (例如,大多数防火墙通常无法帮助检测机器人活动)
        • @Sosh 它完全取决于机器人的类型。 WAF 会导致漏洞扫描器出现严重问题,例如:acunetix.com
        【解决方案4】:

        给你的三个指针:

        1. 清理用户输入
        2. 清理用户输入
        3. 清理用户输入

        记住它,好好记住它。

        【讨论】:

        • 重复产生强化......重复产生强化......重复产生强化......(+1)
        • 你看,这是最常见、最具破坏性和最容易忘记的事情之一!
        • 是的 :) +1,但是假设我们相信我们在用户输入方面已经尽了最大努力,那么您会怎么做才能确保您迅速收到问题警报?
        • 坏数据进入系统的问题是,即使程序员都顾不上它的进入,程序怎么知道它是坏的还是危险的?当您可以检测到不当行为时,您就可以从一开始就阻止它。
        • 并非所有漏洞都是由未“清理用户输入”引起的。 CSRF 是一个很好的例子,因为它的传播范围如此之广。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-03-17
        • 1970-01-01
        • 2017-05-01
        • 1970-01-01
        • 2010-09-13
        • 1970-01-01
        • 2023-03-30
        相关资源
        最近更新 更多