2018年05月31日来源:信管网 作者:cnitpm
信管网参考答案:
【问题1
(1)65535
(2)否
【问题2】
存在溢出安全漏洞。
接收端处理代码在组装响应包时,心跳包数据长度字段( payload)采用的是客户端发送的请包中使用的长度字段,由于心跳包数据长度字段完全由客户端控制,当payload大于实际心跳包数据的长度时,将导致越界访问接收端内存,从而泄露内存信造成的危害:在正常的情况下, response报文中的data就是 request报文中的data息。(2分)
数据,但是在异常情况下, payload的长度远大于实际数据的长度,这样就会发生内存的越界访问,但这种越界访问并不会直接导致程序异常,(因为这里直接 memcpy后,服务器端并没有使用copy后的数据,而只是简单的进行了回复报文的填充,如果服务端使用了cpy的数据也许就可能发现问题)这里使用了 memcpy函数,该函数会直接根据长度把内存中数据复制给另一个变量。这样就给恶意的程序留下了后门,当恶意程序给data的长度变量赋值为65535时,就可以把内存中64KB的内存数据通过 Response报文发送给客户端,这样客户端程序就可以获取到一些敏感数据泄露
【问题3】
黑盒,没有误报
【问题4】
不能。
因为不会产生异常,模糊测试器就无法监视到异常,从而无法检测到该漏洞
温馨提示:因考试政策、内容不断变化与调整,信管网提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关推荐