脸书 Google+ 微博 LinkedIn YouTube系统 RSS系统 菜单类 搜索 资源-博客 资源-Webinar 资源-报表 资源-事件 图标#066 图标_067 图标_068 图标_069 图标070

[R1]FreeSwitch剖分串函数多向量远程缓冲

临界点

简表

2015-09-14时,Marcello Duarte披露漏洞免费Switch并发ugtraq邮件列表.此分配CVE-2015-7392读作:

堆积缓冲溢出剖分函数libs/esl/src/esl_json.cfreeSwitch前 1.4.23和1.6.x前1.6.2允许远程攻击者通过json字符串中的跟踪\u执行任意代码JSON剖析.

经调查后,Tenable发现这一描述不完全准确,问题未适当补补仍有可能通过FreeSwitch编译JSON从1.4.4至1.6.2版(当前版)和1.7.0版(开发版)触发堆积溢出原创CVE项只提到第三方事件套接字库中的开发问题,

  1. FreeSwitch命令行通过json命令开关json.c本地语)
  2. freeSwitch命令json通过事件套接字库连接事件套接字模块开关json.c本地默认远程潜在)
  3. 发送编译JSON至Verto模块多播监听器开关json.c远程传输)
  4. 错误/恶意JSON从服务器传输ESL客户端sljson.c远程并可能需要MitM

原Bugtraq披露表示易损性2015年9月14日补丁相联Jira票公众可访问性/广度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/百度/注意补丁修复剖析字符串 ()函数内src/switch_json.c,libs/libks/src/ks_json.clibs/esl/src/esl_json.c后一文件为CVE条目中唯一明文提及的文件

上头剖析字符串 ()行155函数sljson.cJSON字符串中应取并转换正常字符串C字符串有两件事情要考虑优先计算字符串缓冲区大小,第二分析器处理Unicode越线值u0001ugtraq披露中提及,回字符串缓冲区计算法从起始引文计数到最后不可避免引文解析符处理越出Unicode识别二字串并传递数据单字节scanf.下方代码中,*ptr一行包含sCVE-2015-7392描述攻击JSON剖析.可用两种方式解释:

  1. { "key" : "value\u" }
  2. {"key" : "value\u

首例JSON失败scanf因字符''不易换换scanf转换失败 自NULL终结器传递为scanf中断后scanf失效增量回溯回转回顶端基于CVE-2015-7392中的描述,没有足够的信息导致堆溢出if we观察scanf使用时,我们可以查找溢出量上头scanfman页面表示返回值

...函数返回成功匹配和分配输入项数,可比预设少,或提前匹配失效时甚至为零...

字符串指针总加四分JSON字符串,如下文提供,scanf只耗用一个字符,将使解析器跳过 " 并开始写出超出分配缓冲区尾

堆数一aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

上头发布修复CVE-2015-7392修改行42if(*ptr)ptr++.问题无法解决 根由与scanf

细节漏洞

CVE描述脆弱点在FreeSwitch中远程脆弱点,但引用libs/esl/src/esl_json.c文件.有意思的是注意到代码ibs/esl/目录实际上不是本地FreeSwitch代码,而是一个库供用户使用第三方应用与FreeSwitch通信.CVE描述的脆弱点不是FreeSWITCH远程脆弱点,而是第三方应用远程脆弱点,第三方使用事件套接字库与FreeSWITCH通信FreeSwitch工具Fs_cli实例可能受影响第三方FreeSwitch.

原创修复程序还应用到另外两个地点:libs/libks/src/ks_json.c and src/switch_json.c.基于检验,似乎libs/libks/src/ks_json.c未使用代码,因此不可使用不过src/switch_json.cFreeSwitch基础代码使用第一种方法通过FreeSwitch命令行实现指令json使用CLI向本地用户提供启动FreeSwitchgit主版时3f3b855写作时使用下列命令

user:~/freeswitch$sudo/usr/local/freeswitch/bin/freeswitch-conf./conf/-log./log-db

广度攻击面以图远程触发易损性,为各种TCP和UDP端口提供赋能服务具体兴趣有UDP端口1337和TCP端口8021

UDP端口1337是Verto模块的一部分,多播流量接口接受JSON-RPC输入攻击者需要发送单件UDP包和编译JSON

用户:~/freeswitch$nc-u192168.1121337{heaaaaaaaaaaaa

TCP端口8021是事件套接字模块的一部分(事件套接字库服务器端)。从攻击角度来说,这个端口不那么有趣,因为它默认绑定127.0.0.1,密码保护,只有访问控制列表中的IP地址才能连接它。为了与事件套接字库通信,它帮助理解协议或使用事件套接字库可使用事件套接字库查找合适的客户libs/esl/testclient.c.客户笔录时使用默认密码登录本地主机FreeSwitch实例(无用户名密码Cluec改行12send_recv函数自定义溢出字符串,我们可以触发完全相同的代码路径,导致前文提到的FreeSWITCH命令行溢出当然,这次攻击假设你可以破解ACL密码 监听者不受本地宿主约束

脆弱JSON解析代码开关json.c首创代码库2010修订版c5086b15174.官方发布前不得使用上述方法1.4.4版(2014年5月23日)。这是因为代码似乎不接受用户输入直到开关命令引入命令行代码似乎原存系统生成JSON(代之以Plain或xml)

求解

升级版1.4.26或1.6.5

披露时间线

2015-11-05-问题发现
2015-11-19-供应商知情
2015-11-19-供应商回复
2015-11-20-请求CVEID
2015-11-21-CVE标识
2015-11-20-1.4.26发布1.6.5
2015-11-24-Ping供应商确认修复并澄清CVE任务
2015-11-24-FreeSwitch质疑为何分配新CVE,可租分享邮件/CVE抽象策略FreeSWITCH确认 1.4.26和1.6.5包括补丁

TRA建议内所有信息均提供“原封不动”,不提供任何保理,包括隐含可交易性和适切性保证用于特定目的,不保证完整性、准确性或及时性个人和组织负责评估实际或潜在安全漏洞的影响

可租制非常严肃地对待产品安全if you believe你发现我们产品中的脆弱点, 我们请求你与我们合作 快速解决它以保护客户可点信快速响应报告,与研究人员保持通信并快速提供解决方案

关于提交脆弱资料的更多细节,请见我们漏洞报告指南页码

如有问题或更正,请发邮件[email protected]

风险信息

CVE识别码 CVE-2015-8311
可租咨询ID
TRA-2015-05
信用

Jacob Baines网络安全

sv2基础/时间评分
10.0/7.4
sv2向量
(AV:N/AC:L/Au:N/C:C/I:C/A:C/E:U/RL:OF/RC:C)
受影响产品
FreeSwitch1.6.2 1.7.
FreeSWITCH事件套接字库
风险因子
临界点

咨询时间线

2015-11-24-[R1]初始发布

可耐受脆弱性管理

前称Tenable.io


完全访问现代云型脆弱管理平台,使你能够以不匹配精度看到并跟踪所有资产

可租易容性管理实验中也包括可租可租Lumin、可租WebApp扫描和可租云安全

可耐受脆弱性管理

前称Tenable.io

完全访问现代云型脆弱管理平台,使你能够以不匹配精度看到并跟踪所有资产购买你年度订阅今天

65码资产类

选择订阅选项 :

立即购买

试可穿Nessus专业免费

免费7天

TenableNessus是当今市场最全面的脆弱感扫描器

New-Nessus专家
现可用

奈苏斯专家增加更多特征,包括外部攻击表面扫描能力以及添加域和扫描云基础设施能力点击这里尝试Nessus专家

填表后继续使用NessusPro测试

可买Nessus专业

TenableNessus是当今市场最全面的脆弱感扫描器可租Nessus专业程序帮助脆弱性扫描自动化,在守法周期中省时并允许你加入IT团队

购买多年度许可证并保存添加高级支持访问电话、社区聊天支持全天365天全天24小时

选择您的许可

购买多年度许可证并保存

添加支持培训

tenable.io

完全访问现代云型脆弱管理平台,使你能够以不匹配精度看到并跟踪所有资产

可租易容性管理实验中也包括可租可租Lumin、可租WebApp扫描和可租云安全

tenable.io 付费

完全访问现代云型脆弱管理平台,使你能够以不匹配精度看到并跟踪所有资产购买你年度订阅今天

65码资产类

选择订阅选项 :

立即购买

可租WebApp扫描试

前称Tenable.ioWeb应用扫描

完全存取最新网络应用扫描服务 设计现代应用安全扫描全在线组合漏洞高精度而不人工重创或干扰关键网络应用现在就签名

可租WebApp扫描实验中也包括可租易用性管理、可租可租鲁明和可租云安全

可租WebApp扫描

前称Tenable.ioWeb应用扫描

完全访问现代云型脆弱管理平台,使你能够以不匹配精度看到并跟踪所有资产购买你年度订阅今天

5 FQDNs

3 578美元

立即购买

试可腾鲁明

可视化并探索接触管理,跟踪随时间推移降低风险,并参照Tenablelumin对等基准

可点Lumin测试中也包括可点易点管理、可点WebApp扫描和可点云安全

可买路明

联系销售代表,看可租Lumin如何帮助你在整个组织中获取洞察力并管理网络风险

试可耐云安全

前称可租.cs

完全无障碍检测并修复云基础设施误配置并观察运行时漏洞注册免费测试了解更多试验过程点击这里

可租云安全测试中也包括可租易用性管理、可租可租鲁明和可租WebApp扫描

联系人a购买可租云安全

联系销售代表了解更多可耐云安全知识,并观察多易登录云账号并在分钟内为云误配置和漏洞获取可见度

试可耐奈苏斯专家免费

免费7天

内苏斯专家为现代攻击面搭建,使你能够看到更多并保护组织从IT到云的漏洞

已经有TenableNessus专业
升级Nessus专家免费7天

买可租Nessus专家

内苏斯专家为现代攻击面搭建,使你能够看到更多并保护组织从IT到云的漏洞

选择您的许可

购买多年度许可证并存更多

添加支持培训

试Nessus免费专家

免费7天

内苏斯专家为现代攻击面搭建,使你能够看到更多并保护组织从IT到云的漏洞

内索斯职业类
升级Nessus专家免费7天

买可租Nessus专家

内苏斯专家为现代攻击面搭建,使你能够看到更多并保护组织从IT到云的漏洞

选择您的许可

购买多年度许可证并存更多

添加支持培训

Baidu
map