环境:android 4.4.2

漏洞扫描工具:360vulscanner_offical.apk  360透视镜

解决的漏洞:CVE-2015-6764   CVE-2016-1677  CVE-2016-3897   CVE-2016-2439

1.CVE-2015-6764

Google Chrome是美国谷歌(Google)公司开发的一款Web浏览器。Google V8是其中的一套开源JavaScript引擎。

Google Chrome 47.0.2526.73之前版本中使用的Google V8的JSON stringifier中的json-stringifier.h文件中的‘BasicJsonStringifier::SerializeJSArray’函数存在安全漏洞,该漏洞源于程序没有正确加载数组元素。远程攻击者可借助特制的JavaScript代码利用该漏洞造成拒绝服务(越边界数组访问)。

目前厂商已经发布了升级补丁以修复此安全问题,补丁获取链接:

http://googlechromereleases.blogspot.com/2015/12/stable-channel-update.html

diff --git a/external/chromium_org/v8/src/json-stringifier.h b/external/chromium_org/v8/src/json-stringifier.h
index ebfaf99..49377b1 100644
--- a/external/chromium_org/v8/src/json-stringifier.h
+++ b/external/chromium_org/v8/src/json-stringifier.h
@@ -138,7 +138,9 @@ class BasicJsonStringifier BASE_EMBEDDED {INLINE(Result SerializeJSArray(Handle<JSArray> object));INLINE(Result SerializeJSObject(Handle<JSObject> object));-  Result SerializeJSArraySlow(Handle<JSArray> object, int length);
+  //Result SerializeJSArraySlow(Handle<JSArray> object, int length);
+  //CVE-2015-6764
+  Result SerializeJSArraySlow(Handle<JSArray> object, uint32_t start, uint32_t length);void SerializeString(Handle<String> object);@@ -563,14 +565,24 @@ BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArray(break;}case FAST_ELEMENTS: {
-      Handle<FixedArray> elements(
-          FixedArray::cast(object->elements()), isolate_);
+      //Handle<FixedArray> elements(
+          //FixedArray::cast(object->elements()), isolate_);
+      Handle<Object> old_length(object->length(), isolate_); //CVE-2015-6764for (int i = 0; i < length; i++) {
+        //CVE-2015-6764
+        if (object->length() != *old_length
+                       ||object->GetElementsKind() != FAST_ELEMENTS) {
+            Result result = SerializeJSArraySlow(object, i, length);
+            if (result != SUCCESS) return result;
+            break;
+        }
+               if (i > 0) Append(',');
-        Result result =
-            SerializeElement(isolate_,
-                             Handle<Object>(elements->get(i), isolate_),
-                             i);
+        Result result = SerializeElement(isolate_,
+                       Handle<Object>(FixedArray::cast(object->elements())->get(i),
+                       isolate_),
+                       i);
+               if (result == SUCCESS) continue;if (result == UNCHANGED) {AppendAscii("null");
@@ -584,7 +596,7 @@ BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArray(// They resemble the non-holey cases except that a prototype chain lookup// is necessary for holes.default: {
-      Result result = SerializeJSArraySlow(object, length);
+      Result result = SerializeJSArraySlow(object, 0, length);if (result != SUCCESS) return result;break;}
@@ -597,8 +609,8 @@ BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArray(BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArraySlow(
-    Handle<JSArray> object, int length) {
-  for (int i = 0; i < length; i++) {
+    Handle<JSArray> object, uint32_t start, uint32_t length) {
+  for (uint32_t i = start; i < length; i++) {//CVE-2015-6764if (i > 0) Append(',');Handle<Object> element = Object::GetElement(object, i);RETURN_IF_EMPTY_HANDLE_VALUE(isolate_, element, EXCEPTION);

2.CVE-2016-1677

Google Chrome是美国谷歌(Google)公司开发的一款Web浏览器。Google V8是其中的一套开源JavaScript引擎。

Google Chrome 51.0.2704.63之前的版本使用的Google V8 5.1.281.26之前版本中的uri.js文件存在安全漏洞,该漏洞源于程序使用错误的数组类型。远程攻击者可通过调用‘decodeURI’函数利用该漏洞获取敏感信息。

目前厂商已经发布了升级补丁以修复此安全问题,补丁获取链接:

https://source.android.com/security/bulletin/2016-05-01.html

diff --git a/external/chromium_org/v8/src/uri.js b/external/chromium_org/v8/src/uri.js
index 4e3f084..c6a1334 100644
--- a/external/chromium_org/v8/src/uri.js
+++ b/external/chromium_org/v8/src/uri.js
@@ -254,7 +254,8 @@ function Decode(uri, reserved) {var n = 0;while (((cc << ++n) & 0x80) != 0) { }if (n == 1 || n > 4) throw new $URIError("URI malformed");
-        var octets = new $Array(n);
+        //var octets = new $Array(n);
+        var octets = new InternalArray(n); // CVE-2016-1677octets[0] = cc;if (k + 3 * (n - 1) >= uriLength) throw new $URIError("URI malformed");for (var i = 1; i < n; i++) {

3.CVE-2016-3897

Android是美国谷歌(Google)公司和开放手持设备联盟(简称OHA)共同开发的一套以Linux为基础的开源操作系统。Wi-Fi是其中的一个无线连接组件。

Android Wi-Fi中的net/wifi/WifiEnterpriseConfig.java文件中的WifiEnterpriseConfig类存在信息泄露漏洞,该漏洞源于toString方法调用的‘return'值包含密码。攻击者可借助特制的应用程序利用该漏洞获取敏感信息。以下版本受到影响:Android 4.4.4之前的4.x版本,5.0.2之前的5.0.x版本,5.1.1之前的5.1.x版本,2016-09-01之前的6.x版本。

目前厂商已经发布了升级补丁以修复此安全问题,补丁获取链接:

http://source.android.com/security/bulletin/2016-09-01.html

diff --git a/frameworks/base/wifi/java/android/net/wifi/WifiEnterpriseConfig.java b/frameworks/base/wifi/java/android/net/wifi/WifiEnterpriseConfig.java
index c7ebecb..a44aec6 100755
--- a/frameworks/base/wifi/java/android/net/wifi/WifiEnterpriseConfig.java
+++ b/frameworks/base/wifi/java/android/net/wifi/WifiEnterpriseConfig.java
@@ -837,6 +837,9 @@ public class WifiEnterpriseConfig implements Parcelable {public String toString() {StringBuffer sb = new StringBuffer();for (String key : mFields.keySet()) {
+            // shanaibing add start,modify cve-2016-3897
+            if (PASSWORD_KEY.equals(key)) continue;
+            // shanaibing add endsb.append(key).append(" ").append(mFields.get(key)).append("\n");}return sb.toString();

4.CVE-2016-2439

Android是美国谷歌(Google)公司和开放手持设备联盟(简称OHA)共同开发的一套以Linux为基础的开源操作系统。Bluetooth是其中的一个蓝牙组件。

Android的Bluetooth中的btif/src/btif_dm.c文件存在缓冲区溢出漏洞。远程攻击者可借助较长的PIN值利用该漏洞在配对期间执行任意代码。以下版本受到影响:Android 4.4.4之前版本,5.0.2之前版本,5.1.1之前版本,6.0之前版本,6.0.1之前版本。

目前厂商已经发布了升级补丁以修复此安全问题,补丁获取链接:

https://source.android.com/security/bulletin/2016-05-01.html

diff --git a/external/bluetooth/bluedroid/btif/src/btif_dm.c b/external/bluetooth/bluedroid/btif/src/btif_dm.c
index b2e80d3..d061479 100644
--- a/external/bluetooth/bluedroid/btif/src/btif_dm.c
+++ b/external/bluetooth/bluedroid/btif/src/btif_dm.c
@@ -1968,6 +1968,11 @@ bt_status_t btif_dm_remove_bond(const bt_bdaddr_t *bd_addr)bt_status_t btif_dm_pin_reply( const bt_bdaddr_t *bd_addr, uint8_t accept,uint8_t pin_len, bt_pin_code_t *pin_code){
+    // shanaibing add for cve-2016-2439
+    if (pin_code == NULL || pin_len > PIN_CODE_LEN)
+        return BT_STATUS_FAIL;
+    // shanaibing add end
+BTIF_TRACE_EVENT2("%s: accept=%d", __FUNCTION__, accept);#if (defined(BLE_INCLUDED) && (BLE_INCLUDED == TRUE))

android 4.4.2 安全漏洞修复相关推荐

  1. [转]Android 常见安全漏洞修复理论与实践

    前言 前段时间公司对应用在爱加密上进行了安全扫描,本文将基于爱加密的漏洞分析报告,针对部分内容,介绍理论修复实践 最小化特权准则概念介绍 最小化特权准则,即指组件只能供自身应用调用,尽可能禁止其他应用 ...

  2. android安全补丁卸载,2019年8月Android安全补丁发布:共计修复26处安全漏洞

    本月的Android安全补丁修复了Android runtime.Media framework.Android系统和框架.Broadcom和高通组件,以及其他影响Android系统组件的严重漏洞. ...

  3. android系统程序安全补丁系统,10月Android系统安全补丁发布,修复26项漏洞

    今天凌晨,谷歌发布 2018 年 10 月 Android 系统安全补丁集,修复了 Pixel 和 Nexus 用户近期反馈和报告的各种 BUG. 2018 年 10 月 Android 安全补丁集包 ...

  4. Android:你不知道的 WebView 使用漏洞

    前言 现在很多App里都内置了Web网页(Hyprid App),比如说很多电商平台,淘宝.京东.聚划算等等,如下图 上述功能是由 Android的WebView 实现的,但是 WebView 使用过 ...

  5. Linux 之父恶评 Intel 漏洞修复补丁:完全就是垃圾!Intel:先别更新!

    2018年1月2日,英特尔曝出的CPU设计漏洞事件: 详解 Intel 漏洞怎么拿到内核数据的(附视频演示) 事件一经曝光,就迅速引起业内硬件同行.操作系统厂商.云供应商的迅速反应.如果不能从硬件层面 ...

  6. 自由浏览器 android,安卓浏览器现重大漏洞 UC浏览器成唯一幸存者

    近日,有国外安全研究者爆出了安卓系统上浏览器安全机制绕过漏洞(CVE-2014-6041),并且提供了相应的漏洞测试代码.国内著名安全漏洞平台乌云漏洞平台测试发现,目前国内猎豹.360.遨游.搜狗与百 ...

  7. Android App通用型拒绝服务漏洞介绍

    Android 本地拒绝服务漏洞 漏洞类型:本地拒绝服务 威胁等级:中 影响版本:Android系统所有版本 漏洞描述 Android系统提供了Activity.Service和Broadcast R ...

  8. java中xxe漏洞修复方法

    java中禁止外部实体引用的设置方法不止一种,这样就导致有些开发者修复的时候采用的错误的方法 之所以写这篇文章是有原因的!最早是有朋友在群里发了如下一个pdf, 而当时已经是2019年1月末了,应该不 ...

  9. PrestaShop 网站漏洞修复如何修复

    2019独角兽企业重金招聘Python工程师标准>>> PrestaShop网站的漏洞越来越多,该网站系统是很多外贸网站在使用的一个开源系统,从之前的1.0初始版本到现在的1.7版本 ...

  10. PrestaShop 网站漏洞修复办法

    PrestaShop网站的漏洞越来越多,该网站系统是很多外贸网站在使用的一个开源系统,从之前的1.0初始版本到现在的1.7版本,经历了多次的升级,系统使用的人也越来越多,国内使用该系统的外贸公司也很多 ...

最新文章

  1. 高斯投影坐标计算例题_利用MAPGIS软件进行投影变换
  2. ACM_栈的压入、弹出序列
  3. 如何解决佳能mp288打印机P08、P07报错
  4. 炫酷而不复杂,RDP报表实用又方便
  5. python 模拟自己的手写字体
  6. ug安装教程详细步骤ug怎么免费安装教程ug软件怎样安装步骤
  7. org.aspectj aspectjweaver 报错
  8. 32位xp系统识别4G以上内存
  9. Layabox2初学(一)javascript
  10. RNN的梯度消失和梯度爆炸
  11. NetworkX中文使用手册
  12. 浏览器或是搜索引擎怎么拉黑某个网站
  13. 本科毕设-基于C8051单片机的身份识别系统设计
  14. 360全景偏移调整_360全景拼接之调水平
  15. 【蓝桥杯选拔赛真题01】Scratch消失的小猫 少儿编程scratch蓝桥杯选拔赛真题讲解
  16. LiveMedia视频平台与第三方国标平台级联对接异常断流
  17. 手机版的python怎么用,手机上如何使用python
  18. 点餐推荐系统_自助点餐、自助收银…智慧餐厅的下一步又会是什么?
  19. 递推递归专练|——考试——|
  20. 点,线,面,透视(手绘课)

热门文章

  1. oracle 的日期 between and 用法
  2. 2016-2017 ACM-ICPC CHINA-Final F. Mr. Panda and Fantastic Beasts(后缀数组的两种解法)
  3. TypeScript 类型兼容性整理
  4. luci网页shell_修改Luci界面
  5. 用java制作扑克牌_java实现简单扑克牌游戏
  6. 一次fegin调用失败的调错经验
  7. 从faker.js 开源作者Marak已删除了GIthub所有代码我们得到了什么教训
  8. 计算机专业的男生喜欢你,男生真心喜欢你的五个表现
  9. android型号的平板电脑,AUTOID Pad /Air-(win)/Air-(android)工业级平板电脑
  10. 北京轨道交通明起推出电子定期票 不享累计优惠政策