CSRF(跨站请求伪造)原理:CSRF是攻击者构造的、服务器发起的安全漏洞。它利用用户在登录的网站上发送欺诈请求、伪造用户提交的请求、向受信任的网站发送恶意请求以及在用户不知情的情况下发送恶意请求导致执行某种操作的行为。
SSRF(服务器端请求伪造)原理:SSRF是服务器端请求伪造导致的安全漏洞。这是由攻击者创建并由服务器发起的请求。由于该服务器过于依赖用户提供的可控URL地址,并且没有经过严格的测试,因此攻击者可以以此为跳板攻击内网和其他服务器。
两者的区别:CSRF是用户发起的请求,攻击者利用用户的cookie信息伪造用户请求并发送给服务器。 SSRF是服务器发起的请求,攻击者检索文本。它构造指定的URL 地址,检索网页内容,并使用有缺陷的Web 应用程序作为代理加载指定地址,从而攻击远程和本地服务器。
从防御的角度来看,可以采用以下方法:
1、禁止跳跃。
2. 过滤返回的信息,确保远程服务器对您的请求的响应符合您的标准。
3.禁用file://、gopher://、ftp://等不必要的协议。
4. 设置URL白名单或限制内网IP(使用gethostbyname()判断是否为内网IP)。
5. 将请求的端口限制为常用的http端口,例如80、443、8080、8090。
6. 统一错误信息,使用户无法根据错误信息判断远程服务器的端口状态。
#上面关于CSRF和SSRF原理、区别以及如何保护自己免受网络攻击的相关内容仅供参考。相关信息请参见官方公告。
原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/91342.html