joomla畸形反序列化数据包注入导致远程代码执行,漏洞由六艺工程师于2015年12月15日发现。存在于Joomla3.4.5及以前版本,此漏洞为高危漏洞。
包含此漏洞的文件是:/libraries/joomla/session/session.php
(3.4.x)解决此问题的代码修正是:
第988行
修正前:if (isset($_SERVER['HTTP_X_FORWARDED_FOR']))
修正后:if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && filter_var($_SERVER['HTTP_X_FORWARDED_FOR'],FILTER_VALIDATE_IP) !== false)
---
第994行
修正前:if (in_array('fix_adress', $this->_security) && isset($_SERVER['REMOTE_ADDR']))
修正后:if (in_array('fix_adress', $this->_security) && isset($_SERVER['REMOTE_ADDR']) && filter_var($_SERVER['REMOTE_ADDR'], FILTER_VALIDATE_IP) !== false)
--- 第1013行
修正前:$browser = $this->get('session.client.browser');
修正后:$browser = "";
---
第1017行
修正前: $this->set('session.client.browser', $_SERVER['HTTP_USER_AGENT']);
修正后: $this->set('session.client.browser', ""); ---