哪个版本的 Django REST Framework 受到 IP 欺骗的影响?

Which version of Django REST Framework is affected by IP Spoofing?

参考文献:https://portswigger.net/daily-swig/ip-spoofing-bug-leaves-django-rest-applications-open-to-ddos-password-cracking-attacks 报告日期:2022 年 1 月 11 日

我对您分享的 link Django 源代码和 Django REST Framework 源代码做了一些研究。

Bare-bones Django 不受此影响,因为它不使用 X-Forwarded-For,Python.

也不是

几乎所有版本的 Django REST Framework 都存在漏洞,因为 9 年前的这次提交添加了 HTTP_X_FORWARDED_FOR 检查:https://github.com/encode/django-rest-framework/blob/d18d32669ac47178f26409f149160dc2c0c5359c/rest_framework/throttling.py#L155

对于您可以采取的避免这种情况的措施,由于补丁尚不可用,您可以实施自己的速率限制器,并将 get_ident 替换为仅使用 REMOTE_ADDR.

如果您的 Djando REST Framework 应用程序在代理后面,您可能不会受到此攻击。