【发布时间】:2023-04-07 19:07:01
【问题描述】:
我有一种情况,我使用 BufferedReader readLine() 从套接字读取数据,但 readline() 读取数据直到它在数据中找到换行符/回车。
如果我的数据不包含换行符,那么它将继续读取数据,直到找到新行并且入侵者可以注入 DOS 攻击。
甚至套接字也会超时。
我知道一种解决方案可能是我们需要限制行大小并只读取一些数据,并将数据附加到缓冲区。
这是最佳解决方案还是我可以通过其他方式做到这一点?
我可以覆盖 BufferedReader 并覆盖 readLine() 方法。是否可行?
【问题讨论】:
-
Subhas 的一个很好的回答 - https://stackoverflow.com/a/17142341/748087
标签: java bufferedreader denial-of-service