配置文件之殇

今天主要是聊聊文件配置不当导致的一些安全问题。至于博文标题则是纠结了好久才定下来的,请忽略这些细节。

文件配置不当导致的安全问题可能多如牛毛,今天就不一一列出,并且以我的资历也不可能了解他们的细节。这次主要是讲下我之前遇到的两个文件配置不当导致的安全问题。

一、Apache Cordova漏洞分析

漏洞基本信息

漏洞描述:前不久,Apache Cordova爆出挂马漏洞,使用Cordova框架开发的应用访问一个网址时,手机可能会自动执行黑客命令,后台下载恶意软件、获取用户所在位置、获取联系人信息等严重后果。

影响版本:Cordova版本低于3.1

漏洞原理

1、Apache Cordova

Apache Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风、位置信息等。可以通过web脚本语言调用Cordova API构建应用程序,无需本地代码(如Java或对象C等)。根据官网介绍,Cordova公布的API如图,当应用有相关权限时,黑客可以通过JavaScript获取用户位置、联系人等敏感信息等。


2、漏洞点

使用Cordova框架的应用会配置一个白名单,只有与这个白名单同源的网址才能被应用加载。

在config.xml文件中配置信任的源


程序运行后,会根据配置的源生成一个白名单,该白名单是一个正则表达式,生成正则表达式的代码如下:


当程序加载一个URL时,会判断该URL是否在白名单中,该判断就是一个正则匹配


3、漏洞原因

1)当origin =http://www.test.com时

2)白名单正则表达式为:^https?://(.*\\.)?www.test.com

3)http://www.test.com.test.com的URL会绕过检测

应用访问黑客构造的网页后,会在远程执行恶意代码。

漏洞利用

我们利用该漏洞操作手机通讯录的操作如下。

1)设置应用信任源


2)在如下远程构造挂马网页,URL地址如下:


网页主要包含两个功能:创建一个联系人、读取联系人信息。对应代码如下:

A、创建联系人


B、查看联系人


3)访问挂马的网页


4)应用访问链接成功,成功创建联系人,并获取了联系人的手机号。

上面简单分析了下Apache配置漏洞,这个漏洞几个月前就有人爆出来,这里再次列出来只是为了学习学习

二、ElasticSearch远程指令执行漏洞分析

漏洞概述

Elasticsearch 1.2之前版本存在参数配置不当漏洞,elasticsearch.yml配置文件中script.disable_dynamic默认值为false,允许Elasticsearch加载服务器的脚本或客户端查询时附加的脚本。黑客可以在提交的URL中附加恶意脚本来攻击服务器。

漏洞危害

Elasticsearch加载和执行客户端的脚本所使用的权限和Elasticsearch运行的权限一致,若Elasticsearch以root权限运行,那么黑客就可以完全控制服务器。

已经公布的POC可以读写服务器上的任意文件,以操作/etc/hosts和/etc/passwd两个文件为例:


漏洞修复方案

Elasticsearch的1.2已经修复了该漏洞,但是官方还没发布到官网。对于1.2以下版本,可以在配置文件elasticsearch.yml里设置script.disable_dynamic: true来修复漏洞。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值