问题标签 [denial-of-service]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
638 浏览

authentication - 防止拒绝服务在尝试次数过多后锁定用户帐户

在特定时间窗口内尝试多次失败后锁定用户帐户似乎是一种常见的做法。

我想知道您如何防止拒绝服务攻击,因为拥有他希望 DoS 的用户名的恶意用户可以简单地快速进行登录尝试。

是否仅针对超过登录尝试次数+窗口的用户的IP地址锁定帐户?

有没有更好的办法?

编辑:

我不想让我的用户在每次登录尝试时解决验证码。

0 投票
2 回答
284 浏览

scala - 如何终止 Scala 并行集合的计算

我想用

这应该并行调用 f 来创建集合 c。

但是,我无法控制函数 f。

对于某些输入参数, f 存在错误并进入无限循环。

外面的一些恶人发现了这种在函数 f 中执行 bug 的数据参数。因此,他们随后将大量数据作为拒绝服务攻击提交给系统。

所以,即使我和函数 f 的作者有完美的配合,它也是一个做复杂事情的函数,可能有 bug。

如果我有一些其他线程/actor/thingy 在旁边运行,那么它如何在并行集合的创建中停止无限循环的计算?

和相关的......如果我什至不知道有一个无限循环怎么办,但我的代码只需要一个分支,它决定它根本不再需要 c,并删除对我上面的并行集合 c 的所有引用。计算会永远持续下去,还是会在对象被 GC 回收时停止?

0 投票
0 回答
664 浏览

android - 移动应用网络服务安全

我正在构建一个使用我在服务器上托管的肥皂网络服务的 android 应用程序。在不久的将来,我还将为其他移动操作系统提供客户端应用程序。我在下面发布的 Web 服务安全存在一些问题。

  • 如何保护移动设备应用程序上用于 wsse 身份验证的用户名/密码?我不想使用特定于 android 的东西,因为在不久的将来我可能会推出适用于 iPhone/Blackberry 的应用程序

  • 如果有人反编译apk文件并获得wsdl url,如何防止DOS-拒绝服务攻击?

  • HTTPPS真的值得吗?如果黑客从应用程序中获取 wsdl url,他可以触发错误请求,这些请求最终会进入 DOS。

  • 将 oAuth 与 REST 一起使用是否比 SOAP 与 wsse 有优势?

我觉得如果黑客最终获得了 wsdl url,他可以自己触发数百个错误的未经身份验证的请求,这可能会使我的服务器超载。请帮助我找出适合我的场景的最佳解决方案。

0 投票
1 回答
470 浏览

security - Vaadin 或 RAP/RWT 是否容易受到拒绝服务攻击

VaadinEclipse RAP/RWT是 Web 应用程序框架,据我所知,它们具有相似的架构。我的问题是使用 Vaadin 或 RAP 构建的应用程序是否容易受到拒绝服务攻击?我目前正在评估这些框架,并希望确定这不是问题。

这是我的推理:

使用 Vaadin 或 RAP,您无需构建 HTML 输出,而是构建类似于 Swing/SWT 应用程序的 Widget 树(在 RAP 的情况下,它是 SWT)。框架在浏览器中将小部件树呈现为 HTML,并将用户交互发送回服务器,应用程序在服务器中收到事件通知。事件被传递到之前已在小部件上注册的侦听器对象。

因此,小部件树必须保存在某种用户会话中,当然会消耗一些内存。

如果应用程序是公开的(即不位于登录页面后面),那么似乎这种应用程序可能存在拒绝服务攻击:只需向应用程序登录页面发出请求,并可能伪造第一个响应。对于任何这样的请求,框架将构建一个新的小部件树,它将在服务器上存在一段时间,直到会话到期。因此,服务器内存应该很快就会被纠结的用户会话填满。

或者这些框架是否发明了针对这种情况的保护?谢谢。

0 投票
1 回答
1316 浏览

java - WebSockets 是数据报还是流式传输?

我试图通过限制传入消息的大小来强化java-websocket服务器免受 DoS 攻击。

在 C 套接字的接收缓冲区上发现了这个很棒的问答(我认为这是限制大小的方法,因为我找不到其他任何东西)。其中,它说有两种类型的套接字:数据报和流。

答案说数据报套接字只是切断任何多余的字节,这对我的目的来说很好,因为不完整的消息是不正确的,并且会导致发件人被列入黑名单。

我现在正在尝试确定 WebSocket 是数据报还是流式传输。因为它们使用“帧”,所以它们似乎是数据报,但我不知道。那是对的吗?

如果它们可以流式传输,如何将 java-websocket、客户端和服务器配置为使用数据报,如果这甚至是合适的?是否可以检测到带有数据报的过大消息?

如果流式传输更合适,如何检测过大的消息?

0 投票
2 回答
257 浏览

sql - 代理 /sql 服务器的拒绝服务

我开发了一个代理,它在 sql server 上运行查询。

即用户与代理“交谈”,代理将客户端的请求发送到 sql server。

我想知道如果代理之一发送不合法的请求,如何防止代理被阻止。在这种情况下,sql server 将阻止代理,因为最终请求是从代理的 IP 发送的。但是其他代理客户端将无法访问代理,因为代理将被阻止。我想允许代理照常工作,但只阻止攻击的客户端。

0 投票
0 回答
156 浏览

node.js - socket.io/node.js 服务器能否被客户端发出大于服务器内存大小的消息 DOSd?

如果是这样,我该如何防止这种情况?某处是否有最大消息大小设置?

如果不是,阻止它的机制是什么?

0 投票
1 回答
82 浏览

node.js - 在会话 ID 中包含工作端口号的安全隐患

我编写了一个多进程实时 WebSocket 服务器,它使用会话 ID 根据它正在侦听的端口号来平衡到相关工作人员的流量。会话 ID 包含主机名、源端口号、工作端口号和工作人员用来唯一标识客户端的实际哈希 ID。典型的会话 ID 如下所示:

localhost_9100_8000_0_AoT_eIwV0w4HQz_nAAAV

我想知道将工作端口号(在本例中为 9100)作为会话 id 的一部分的安全隐患。

我有点担心拒绝服务 (DoS) 威胁 - 从理论上讲,这可能允许恶意用户生成大量针对特定端口号的 HTTP 请求(例如,通过使用包含该端口号的虚假 sessionID ) - 但这是一个严重的威胁吗?(假设你有不错的防火墙)?从安全角度来看,像 Google 这样的大公司如何处理粘性会话?

我还应该考虑其他威胁吗?

我这样设计服务器的原因是考虑到初始 HTTP 握手以及客户端不支持 WebSocket 时(在这种情况下使用 HTTP 长轮询 - 因此来自客户端的后续 HTTP 请求需要转到后端的同一个工人)。

0 投票
1 回答
345 浏览

android - 请求身份验证时如何防止 DDoS?

我正在开发一个 Android 应用程序,该应用程序在我的服务器中请求特定格式的用户名身份验证(我之前已向他发送了此用户名)以继续。问题是我担心有人通过对我的服务器进行大量这些身份验证调用,可能会对它进行 DDoS。

我还没有发现任何清楚的东西,所以这就是为什么我要问:关于如何防止它的任何想法?


我的想法是在运行时检查该用户名(例如,它必须有 3 个数字,有一定数量的字母等),但是在服务器端?

提前致谢!

0 投票
3 回答
67 浏览

php - 没有最大限制的密码。如何在服务器端处理它?

我的表单中有一个密码字段,没有最大长度限制。

密码将通过 PHPass 框架散列到数据库中。

我读过一些地方,通过类似没有最大限制的字段输入大数据可以对站点进行 DoS。

所以我的问题是:

  • 我应该如何处理服务器端的大密码数据条目(使用 PHP)?