信管网参考答案:
【问题1
(1)65535
(2)否
【问题2】
存在溢出安全漏洞。
接收端处理代码在组装响应包时,心跳包数据长度字段( payload)采用的是客户端发送的请包中使用的长度字段,由于心跳包数据长度字段完全由客户端控制,当payload大于实际心跳包数据的长度时,将导致越界访问接收端内存,从而泄露内存信造成的危害:在正常的情况下, response报文中的data就是 request报文中的data息。(2分)
数据,但是在异常情况下, payload的长度远大于实际数据的长度,这样就会发生内存的越界访问,但这种越界访问并不会直接导致程序异常,(因为这里直接 memcpy后,服务器端并没有使用copy后的数据,而只是简单的进行了回复报文的填充,如果服务端使用了cpy的数据也许就可能发现问题)这里使用了 memcpy函数,该函数会直接根据长度把内存中数据复制给另一个变量。这样就给恶意的程序留下了后门,当恶意程序给data的长度变量赋值为65535时,就可以把内存中64KB的内存数据通过 Response报文发送给客户端,这样客户端程序就可以获取到一些敏感数据泄露
【问题3】
黑盒,没有误报
【问题4】
不能。
因为不会产生异常,模糊测试器就无法监视到异常,从而无法检测到该漏洞
温馨提示:因考试政策、内容不断变化与调整,信管网网站提供的以上信息仅供参考,如有异议,请以权威部门公布的内容为准!
信管网致力于为广大信管从业人员、爱好者、大学生提供专业、高质量的课程和服务,解决其考试证书、技能提升和就业的需求。
信管网软考课程由信管网依托10年专业软考教研倾力打造,官方教材参编作者和资深讲师坐镇,通过深研历年考试出题规律与考试大纲,深挖核心知识与高频考点,为学员考试保驾护航。面授、直播&录播,多种班型灵活学习,满足不同学员考证需求,降低课程学习难度,使学习效果事半功倍。
发表评论 查看完整评论 | |