CVE:CVE-2005-2416
CNNVD:CNNVD-200508-041
Contrexx是一款开放源码的内容管理系统。
Contrexx中存在多个输入验证漏洞：
1) poll模块中的SQL注入漏洞
Contrexx的poll模块允许用户通过点击圆按键并提交投票表单进行投票。在将圆按键的整数值传送给SQL抽象层时没有执行任何检查： 
 $query="SELECT voting_system_id from ".DBPREFIX."voting_results WHERE
 id=".$_POST["votingoption"]." ";
 $db->query($query);
通过保存、更改并提交修改过的投票表单，攻击者可以导致MySQL服务器泄漏其版本。
2) gallery模块中的SQL注入漏洞
没有经过过滤便将Contrexx的gallery模块的pId参数传送给了数据库：
 if(isset($_GET['pId']) & & !empty($_GET['pId'])){
 $this->showPicture($_GET['pId']);
 }
 在showPicture()方式中：
 $objDb->query("SELECT id，name，path，linkname，link，size_show
  FROM ".DBPREFIX."module_gallery_pictures
  WHERE id=".$pictureId);
攻击者可以利用这个漏洞获得用户名和口令哈希的完整列表。
3) 搜索表单中的跨站脚步漏洞
可以通过在前端搜索表单的GET和POST请求执行跨站脚步攻击。Contrexx的输入过滤器过滤掉了<script>，但没有过滤<scr\ipt>。 
4) blog聚合模块中的跨站脚本漏洞
恶意攻击者可以利用社会工程学诱骗Contrexx管理员，要他们每天读取攻击者的blog。然后攻击者在blog中嵌入脚本代码。由于没有对入站的RSS聚合执行输入过滤，就可能在前端的聚合模块和管理员后端显示脚本代码。攻击者可以利用这种跨站脚本攻击窃取管理员的cookies并劫持会话。
5) 版本信息泄漏
在Contrexx的默认安装中，会在安装时创建名为"config/version.xml"的文件。该文件中包含有精确的版本信息。
solution:Upgrade astalavista_it_engineering contrexx to a higher version than 1.0.4,and avoid the version (,1.0.4]