Sendmail是一款免费开放源代码的邮件传输代理,可使用在多种Unix和Linux操作系统下。 Sendmail在处理dns map时存在问题,远程攻击者可以利用这个漏洞以sendmail服务进行拒绝服务攻击。 如果在sendmail.cf中使用了dns maps,一定程度的smtp通信可使sendmail随机崩溃。日志会显示如下内容: sm-mta[90653]: ERROR: DNS RDLENGTH=63885 > data len=2468 在dns_parse_reply()函数中构建了RESOURCE_RECORD_T链结构,由于错误的初始化这些结构,如果sendmail获得不适当的dns应答(实际应答大小不等于要求的应答大小),在调用dns_free_data (sm_resolve.c:227)时会把垃圾信息填充到最后一个链结构的rr_next字段。在dns_free_data()函数中sendmail尝试释放这些结构时,垃圾信息会导致sendmail调用free()释放随机地址而导致崩溃,可能利用这个漏洞用于任意指令执行。
Sendmail是一款免费开放源代码的邮件传输代理,可使用在多种Unix和Linux操作系统下。 Sendmail在处理dns map时存在问题,远程攻击者可以利用这个漏洞以sendmail服务进行拒绝服务攻击。 如果在sendmail.cf中使用了dns maps,一定程度的smtp通信可使sendmail随机崩溃。日志会显示如下内容: sm-mta[90653]: ERROR: DNS RDLENGTH=63885 > data len=2468 在dns_parse_reply()函数中构建了RESOURCE_RECORD_T链结构,由于错误的初始化这些结构,如果sendmail获得不适当的dns应答(实际应答大小不等于要求的应答大小),在调用dns_free_data (sm_resolve.c:227)时会把垃圾信息填充到最后一个链结构的rr_next字段。在dns_free_data()函数中sendmail尝试释放这些结构时,垃圾信息会导致sendmail调用free()释放随机地址而导致崩溃,可能利用这个漏洞用于任意指令执行。