Android WebView漏洞(转)】的更多相关文章

by superhei 2013/09/06 [注:本文提到的都是我个人的观点,该行为也是私人行为,与任何组织.公司无关.另:水军请自重!] 一.前言   这两天,一个2+年前的android webview的nday就像一面“照妖镜”一样,直接暴露了很多个人和公司的节操... 二.流程 有白帽子在8月29日开始提交各种android平台上的“远程命令执行”漏洞,隐隐感觉到这是一种通用漏洞类型,通过联系并请教得到这类漏洞的技术细节.该漏洞 是android中webview组件里的addJavas…
一.漏洞描述 近期,微信等多款安卓流行应用曝出高危挂马漏洞:只要点击好友消息或朋友圈中的一条网址,手机就会自动执行黑客指令,出现被安装恶意扣费软件.向好友 发送欺诈短信.通讯录和短信被窃取等严重后果.在乌云漏洞平台上,包括安卓版微信.QQ.腾讯微博.QQ浏览器.快播.百度浏览器.金山浏览器等大批应用 均被曝光同类型漏洞. 二.影响版本 Android系统版本低于4.2 三.漏洞原理 漏洞点:WebView.addJavascriptInterface(Object obj, String int…
Android WebView存在跨域访问漏洞(CNVD-2017-36682).攻击者利用该漏洞,可远程获取用户隐私数据(包括手机应用数据.照片.文档等敏感信息),还可窃取用户登录凭证,在受害者毫无察觉的情况下实现对APP用户账户的完全控制.由于该组件广泛应用于Android平台,导致大量APP受影响,构成较为严重的攻击威胁. 一.漏洞情况分析 WebView是Android用于显示网页的控件,是一个基于Webkit引擎.展现web页面的控件.WebView控件功能除了具有一般View的属性和…
这篇博客主要来介绍 WebView 的相关使用方法,常见的几个漏洞,开发中可能遇到的坑和最后解决相应漏洞的源码,以及针对该源码的解析.  转载请注明出处:http://blog.csdn.net/self_study/article/details/54928371.  对技术感兴趣的同鞋加群 544645972 一起交流. Android Hybrid 和 WebView 解析 现在市面上的 APP 根据类型大致可以分为 3 类:Native APP.Web APP 和 Hybrid APP,…
   0x00     我们首先讲一个webView这种方法的作用: webView.getSettings().setAllowFileAccessFromFileURLs(false);     为了解说这种方法,我们还是看一个实际的样例.代码地址还是參考https://github.com/jltxgcy/AppVulnerability/tree/master/WebViewFileDemo.     代码例如以下.和Android WebView远程代码执行漏洞简析一文中的代码主要差别…
声明在先:必须在AndroidMainfest.xml 里面声明权限,否则在Java里面编写的所有WebView浏览网页的代码都无法正常使用 <uses-permission android:name="android.permission.INTERNET" /> 1.WebView的使用 (a). 创建WebView的实例加入到Activity中 WebView webview = new WebView(this); setContentView(webview);…
Android WebView常见问题解决方案汇总: 就目前而言,如何应对版本的频繁更新呢,又如何灵活多变地展示我们的界面呢,这又涉及到了web app与native app之间孰优孰劣的争论. 于是乎,一种混合型的app诞生了,灵活多变的部分,如淘宝商城首页的活动页面,一集凡客诚品中我们都可以见到web 页面与native页面的混合,既利用了web app的灵活易更新,也借助了native app本身的效率.当然,就会用到webview这样的一个控件,这里,我把自己使用过程中遇到的一些问题整理…
问题目录: 1.为WebView自定义错误显示界面: 2.WebView cookies清理 3.清理cache 和历史记录 4.判断WebView是否已经滚动到页面底端 5.URL拦截 6.处理WebView中的非超链接请求(如Ajax请求) 7.在页面中先显示图片 8.屏蔽掉长按事件 因为webview长按时将会调用系统的复制控件 9.在WebView加入 flash支持 10.WebView保留缩放功能但隐藏缩放控件 11.WebView 在Android4.4的手机上onPageFini…
Android常见漏洞 漏洞名称: Log敏感信息泄露 漏洞描述: 程序运行期间打印了用户的敏感信息,造成泄露 修改建议: 建议禁止隐私信息的log 漏洞名称: web https校验错误忽略漏洞 漏洞描述: 漏洞可导致中间人攻击 修改建议: 建议不要忽略ssl认证错误 漏洞名称: sql注入漏洞 漏洞描述: 漏洞可能导致用户数据库中的信息泄露或者篡改 修改建议: 建议使用安全sqlite,如sqlcipher 漏洞名称: https空校验漏洞 漏洞描述: 漏洞可导致中间人攻击 修改建议: se…
转载:https://iluhcm.com/2018/02/27/design-an-elegant-and-powerful-android-webview-part-two/ (这篇文章写得有点晚,请谅解~) 前言 在上文<如何设计一个优雅健壮的Android WebView?(上)>中,笔者分析了国内WebView的现状,以及在WebView开发过程中所遇到的一些坑.在踩坑的基础上,本文着重介绍WebView在开发过程中所需要注意的问题,这些问题大部分在网上找不到标准答案,但却是WebV…
转接:https://iluhcm.com/2017/12/10/design-an-elegant-and-powerful-android-webview-part-one/ 前言 Android应用层的开发有几大模块,其中WebView是最重要的模块之一.网上能够搜索到的WebView资料可谓寥寥,Github上的开源项目也不是很多,更别提有一个现成封装好的WebView容器直接用于生产环境了.本文仅当记录在使用WebView实现业务需求时所踩下的一些坑,并提供一些解决思路,避免遇到相同问…
相关API 相关类介绍 WebResourceRequest 添加于API21,封装了一个Web资源的请求信息,包含:请求地址,请求方法,请求头,是否主框架,是否用户点击,是否重定向 WebResourceResponse 封装了一个Web资源的响应信息,包含:响应数据流,编码,MIME类型,API21后添加了响应头,状态码与状态描述 WebResourceError 添加于API23,封装了一个Web资源的错误信息,包含错误码和描述 CookieManager 管理用于WebView的cook…
如有转载,请声明出处: 时之沙: http://blog.csdn.net/t12x3456 Android WebView常见问题解决方案汇总: 就目前而言,如何应对版本的频繁更新呢,又如何灵活多变地展示我们的界面呢,这又涉及到了web app与native app之间孰优孰劣的争论. 于是乎,一种混合型的app诞生了,灵活多变的部分,如淘宝商城首页的活动页面,一集凡客诚品中我们都可以见到web 页面与native页面的混合,既利用了web app的灵活易更新,也借助了native app本身…
服务器证书校验主要针对 WebView 的安全问题. 在 app 中需要通过 WebView 访问 url,因为服务器采用的自签名证书,而不是 ca 认证,使用 WebView 加载 url 的时候会显示为空白,出现无法加载网页的情况. 使用 ca 认证的证书,在 WebView 则可以直接显示出来,不需要特殊处理. 以往针对自签名证书的解决方案是继承 WebViewClient 重写 onReceivedSslError 方法,然后直接使用 handler.proceed(),该方案其实是忽略…
上篇介绍了一些WebView的设置,本篇为一些补充项. 首先加载HTML5的页面时,会出现页面空白的现象,原因是需要开启 DOM storage API 功能: webSettings.setDomStorageEnabled(true); 其次,开发中需要注意的安全漏洞,详见<如何设计一个优雅健壮的Android WebView>: @TargetApi(11) private static final void removeJavascriptInterfaces(WebView webV…
转:如何设计一个优雅健壮的Android WebView?(下) 前言 在上文<如何设计一个优雅健壮的Android WebView?(上)>中,笔者分析了国内WebView的现状,以及在WebView开发过程中所遇到的一些坑.在踩坑的基础上,本文着重介绍WebView在开发过程中所需要注意的问题,这些问题大部分在网上找不到标准答案,但却是WebView开发过程中几乎都会遇到的.此外还会浅谈WebView优化,旨在给用户带来更好的WebView体验. WebView实战操作 WebView在使…
转:如何设计一个优雅健壮的Android WebView?(上) 前言 Android应用层的开发有几大模块,其中WebView是最重要的模块之一.网上能够搜索到的WebView资料可谓寥寥,Github上的开源项目也不是很多,更别提有一个现成封装好的WebView容器直接用于生产环境了.本文仅当记录在使用WebView实现业务需求时所踩下的一些坑,并提供一些解决思路,避免遇到相同问题的朋友再次踩坑. WebView现状 Android系统的WebView发展历史可谓一波三折,系统WebView…
1.最全面的Android Webview详解 2.最全面总结 Android WebView与 JS 的交互方式 3.你不知道的 Android WebView 使用漏洞 如果想保证登录状态,就插入cookie 方式如下问问你们的后台和前端怎么处理的再套下面代码 /** * 同步一下cookie */ public void synCookies(String url) { CookieManager cookieManager = CookieManager.getInstance(); c…
0x00 1.组件公开安全漏洞 參考Android 组件安全. 2.Content Provider文件文件夹遍历漏洞 參考Content Provider文件文件夹遍历漏洞浅析. 3.AndroidManifest.xml中AllowBackup安全检測 參考两分钟窃取身边女神微博帐号?具体解释Android App AllowBackup配置带来的风险. 4.Intent劫持风险安全检測 參考Android组件通信过程风险. 5.数据存储安全检測 參考Android Database配置模式…
一.背景 越来越多的业务接入,项目内多多少少会出现几个H5页面,只是单纯的提供WebView容器接入H5页面根本满足不了需求,他们需要登录态,需要制定协议控制Native的导航栏,或者需要JsBridge做一些更复杂的操作,这篇主要讲登录态出现的问题. 二.涉及的知识 Android WebView加载url的时候,我们是这样做监听的: 页面加载前会回调onPageStarted 页面加载完成会回调onPageFinished 当页面加载前且在onPageStarted后会回调shouldOve…
今天介绍一下Android WebView UserAgent, User-Agent(简称UA)是HTTP请求头部用来标识客户端信息的字符串, 包括操作系统, 浏览器等信息.为了建立手机客户端的信息数据库,需要从手机的http请求中取到这一字符串. 获取UA: mWebView = (WebView) findViewById(R.id.page_webview); mWebView.getSettings().getUserAgentString(); UA的值: Mozilla/5.0 (…
我们在native与网页相结合开发的过程中,难免会遇到关于WebView一些共通的问题.就我目前开发过程中遇到的问题以及最后得到的优化方案都将在这里列举出来.有些是老生常谈,有些则是个人摸索得出解决方法.下面就是整理得到的些干货. 1.加快HTML网页装载完成的速度 默认情况html代码下载到WebView后,webkit开始解析网页各个节点,发现有外部样式文件或者外部脚本文件时,会异步发起网络请求下载文件,但如果在这之前也有解析到image节点,那势必也会发起网络请求下载相应的图片.在网络情况…
[Android] WebView内的本地网页,使用XMLHttpRequest读取本地档案 问题情景 在Android里,可以使用WebView来呈现本地或是远程的网页内容.但是在显示本地网页时,如果开发人员在网页里使用了XMLHttpRequest来额外加载本地档案(ex:AngularJS里Route功能的TemplateURL),在部分手机上会呈现下列的错误讯息: Failed to execute 'send' on 'XMLHttpRequest': Failed to load '…
一.现象 一般通过Android webview进行下载文件的方法是 1.重写DownloadListener的onDownloadStart方法,在onDownloadStart方法中弹出对话框提示用户有新的文件需要下载 2.用户点击确定之后,通过http get下载文件 由于Android webview的实现,以上的下载文件步骤涉及到了两次get的操作.第一次是用户在webview中点击下载链接时,webview自动发送http get请求,这个时候服务器除了将文件信息发送过来之外,会同时…
其实在不同版本上,webview底层是有所不同的. 先提供个地址给大家查:http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.2.1_r1.2/android/webkit/WebView.java#WebView.showFindDialog%28java.lang.String%2Cboolean%29 这是我在做某个项目上遇到的难点. 今天弄了下android webv…
Android WebView访问https SSL证书网页,如淘宝,需要在onReceivedSslError添加SSL支持 webview.setWebViewClient(new WebViewClient() { @Override public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) { // 不要使用super,否则有些手机访问不了,因为包含了一条 handler.c…
今天发现 WebView里播放优酷的视频点击播放按钮后没反应,于是看官方文档和搜索解决,下面是我在别人基础上做的补充:   android webView 无法播放视频,无法暂停,继续播放视频问题,无法根据浏览器居中显示内容问题 转自:http://blog.csdn.net/it_ladeng/article/details/8136534   此次遇到一个问题就是webView无法播放视频,查了下谷歌发现可以设置 setting.setPluginsEnabled(true); (从API…
Android WebView播放视频(包括全屏播放),androidwebview 最近项目开发中用到了WebView播放视频的功能,总结了开发中犯过的错误,这些错误在开发是及容易遇到的,所以我这里总结了一下,希望大家看到后不要再犯类似的错误,尽可能提高开发效率: 这个Demo我这里也参考了网上写的一个比较好的一个Demo,经过总结修改,写出来的. 以下是相应代码: MainActivity: package com.androidwebviewdemo; import android.app…
安卓的WebView一般是嵌套在activity或者fragment中的,但是如果在这种activity页面上点击返回按钮,一般会finish掉当前activity.其实是应该关闭当前的WebView的界面,回到前一个连接的地址.一般我们使用一下的方法来实现. if(webView.canGoback()){//在这里如果无法再往回后退的话,那么就会返回false,那么就可以执行自己的逻辑代码了. webView.goBack(); } 接下来是Webview界面的一些常用的配置: mainWe…
转载请注明出处   http://blog.csdn.net/typename/article/details/40302351 powered by miechal zhao 概览 Android WebView提供展示网页,也提供我们应用程序对网页加载的一些定制,比如我们为了减少网络数据可以设置当前加载的页面不能显示图片,如果是pc网址在pad上访问我们可以提供用户一种概览模式的浏览方式,可以提供放大网页字体等定制功能.Android 提供管理WebView的一些setting的类WebSe…