- 编号:DRUPAL-SA-2008-057
- 项目:Ajax Checklist(第三方模块)
- 版本:Drupal 5.x
- 日期:2008年9月24日
- 安全风险:危险
- 攻击点:远程
- 漏洞:SQL注入,跨站点脚本
描述
Ajax Checklist模块实现了一个过滤器,从而允许用户在内容中包含复选框。
这个模块没有正确的使用Drupal的数据库API,它将用户提供的值,直接插入到了sql语句中。对于那些具有"update ajax checklists"权限的恶意用户,他们就可以利用这一点进行SQL注入攻击,从而获取更高的管理权限。
这个模块对于某些值也没有进行合适的安全检查。对于那些能够创建或者编辑节点的用户,如果他们还可以使用包含ajax_checklist过滤器的输入格式的话,如果他们懂得XSS并充满恶意的话,那么他们就可以利用这一问题向页面插入任意的HTML和脚本代码。利用跨站点脚本(XSS)攻击,恶意用户就可以获得更高的管理权限。
影响版本
- 对于Drupal 5.x的Ajax Checklist,所有低于5.x-1.1的版本
Drupal内核不受影响。 If you do not use the contributed Talk module, there is nothing you need to do.如果你没有用到Ajax Checklist模块的话,那么你就不用担心了.
解决方案
安装最新版本
- 对于Drupal 5.x需将Ajax Checklist升级到Ajax Checklist 5.x-1.1
参看Ajax Checklist项目页面
报告人
- SQL注入漏洞的报告人为Justin Klein Keane (Justin_KleinKeane)
- 跨站点脚本漏洞的报告人为Drupal安全小组的Heine Deelstra (Heine)。
联系方式
对于Drupal安全问题,你可以通过security at drupal.org (at替换为@)给我们发送email,或者通过http://drupal.org/contact在线联系我们。
原文作者: Heine,发表日期: 2008年9月24日19:48