作为一名技术人员,对常见的HTTP协议状态码需要了如指掌,才能对日常工作游刃有余,下面小编将结合盛邦安全三款产品——web应用防护系统RayWAF、一体化漏洞评估系统RayScan和网络资产安全治理平台RayGate,对常见的HTTP状态码进行解读,以便大家能更深入地理解不同状态码下的产品工作状态。
首先,什么是HTTP状态码?参考百度百科的解读:HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。它由 RFC 2616 规范定义的,并得到 RFC 2518、RFC 2817、RFC 2295、RFC2774 与 RFC 4918 等规范扩展。所有状态码的第一个数字代表了响应的五种状态之一。具体状态意义如下:
(图片来源于百度)
既然有这么多状态码,那我们常见的状态码和产品对应的状态是怎样的呢?接下来小编将对常见的状态码进行一一解读:
HTTP status code: 200 OK
200状态码大概是我们最期待见到的状态码,没有之一!200状态码表示一切正常,请求和响应都是正常状态,如果产品实施后在设备流量里看到的都200状态,意味着RayWAF上线后,网站业务是正常的;意味着RayScan可以正常对目标站点进行检测;意味着RayGate可以正常学习到流量中关注的Web站点。
HTTP status code: 302
302状态码表示请求的资源临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求,网站业务在某些情况下会对请求进行重定向,以达到导流的效果。一般来说,RayWAF部署后是不会影响到网站返回302状态码,但RayWAF自身的防护策略有重定向功能,一旦触发是可以返回给客户端302重定向,达到阻断攻击的效果;RayScan在碰到重定向时,如果Location指向的是该域名底下的其他URL,则扫描任务会继续进行;RayGate的自学习功能则会根据重定向后的HOST进行检测查看是否需要学习到本地资源列表中。
HTTP status code: 400
400状态码表示语义有误,当前请求无法被服务器理解或请求参数有错误。RayWAF部署后访问网站出现此请求,一般是因为请求参数含有疑似攻击行为,触发了WAF的防护规则,从而返回的400状态码,需要检查防护日志进行处理;RayScan在进行扫描时碰到类似状态码的请求则说明提交的参数被目标对象阻拦,或者提交的参数处理时出现异常。;RayGate的流量中发现此状态码,则会提取其对应的HOST和Title进行记录。
HTTP status code: 403
403状态码表示服务器已经理解请求,但是拒绝执行。此状态码一般出现在客户端权限不足时的访问请求中。RayWAF部署后访问网站出现此状态码,则一般是出现在WAF开启了不还原IP的代理模式,网站认为访问的IP没有权限请求资源从而返回的状态码;RayScan在进行扫描时也容易碰到此现象,但这说明此URL存在只是RayScan无权限范围,最终的网站目录树也会记录此URL;RayGate的流量中发现此状态码,则会提取其对应的HOST和Title进行记录。
HTTP status code: 404
404状态码表示请求失败,请求所希望得到的资源未被在服务器上发现,浏览器页面显示为无法找到。早期的RayWAF返回的状态码为404,由于会存在一定混淆,在6.3.3系列版本后统一修改为400状态码;RayScan如果扫描首页404,则扫描任务会无法获取到新的链接从而影响扫描;RayGate中会对应提取其对应的HOST和Title进行记录。
HTTP status code: 500 Internal Server Error
500状态码表示服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在服务器端的源代码出现错误时出现。此情况在RayWAF部署后出现,则需要排查一定网络和业务的原因,一般属于进阶篇的能力要求了;RayScan和RayGate碰到此链接后的状态和404状态码类似。
HTTP status code: 502 Bad Gateway
502状态码表示作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。举个简单的例子,当采用代理服务访问网站时,一旦代理服务器和网站之间的连接出现问题时,代理服务器就会返回502的状态码给客户端。在RayWAF部署后一旦访问网站出现502 Bad Gateway,则说明WAF和后端服务器的通信出现了问题,一般多由于网络设备阻断了WAF和服务器的连接导致,需要进一步排查链路和策略的问题;RayScan和RayGate在碰到此状态后,将无法扫描或学习站点。
以上就是小编总结的结合盛邦安全产品常见HTTP状态码与对应产品的结合解读,欢迎大家补充和交流,下期见~