首页 > 其他分享 >【移动安全】对webview漏洞的一些分析

【移动安全】对webview漏洞的一些分析

时间:2024-04-05 21:44:44浏览次数:24  
标签:androidx app 漏洞 new import webview 移动 webView android

这次分析的app如下:

打开发现该app发现需要登录界面:

拖进jadx看一下,先来看一下AndroidManifest.xml文件

发现有两个类是导出,再来分析这两个类

这个RegistrationWebView类利用webview.loadUrl进行加载网页

public class RegistrationWebView extends AppCompatActivity {
    /* JADX INFO: Access modifiers changed from: protected */
    @Override // androidx.appcompat.app.AppCompatActivity, androidx.fragment.app.FragmentActivity, androidx.activity.ComponentActivity, androidx.core.app.ComponentActivity, android.app.Activity
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(C0816R.layout.activity_registration_web_view);
        setTitle("Registration page");
        loadWebView();
    }

    private void loadWebView() {
        WebView webView = (WebView) findViewById(C0816R.C0819id.webview);
        webView.setWebChromeClient(new WebChromeClient() { // from class: com.tmh.vulnwebview.RegistrationWebView.1
            @Override // android.webkit.WebChromeClient
            public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
                Log.d("MyApplication", consoleMessage.message() + " -- From line " + consoleMessage.lineNumber() + " of " + consoleMessage.sourceId());
                return true;
            }
        });
        webView.setWebViewClient(new WebViewClient());
        webView.getSettings().setAllowUniversalAccessFromFileURLs(true);
        webView.getSettings().setJavaScriptEnabled(true);
        if (getIntent().getExtras().getBoolean("is_reg", false)) {      //根据传入的Intent中的参数,加载不同的URL。如果"is_reg"参数为true,则加载本地资源"registration.html",否则加载从Intent中传入的URL。
            webView.loadUrl("file:///android_asset/registration.html");
        } else {
            webView.loadUrl(getIntent().getStringExtra("reg_url"));    //可以恶意构造url
        }
    }
}

因为这个类是导出的,所以可以根据intent,恶意构造reg_url,进行网页的加载,这里可以使用adb命令进行intent的传递

adb shell am start -n com.tmh.vulnwebview/.RegistrationWebView --es reg_url https://www.baidu.com

adb shell am start -n命令用于通过ADB(Android Debug Bridge)启动一个应用程序组件,如Activity、Service、BroadcastReceiver或ContentProvider。该命令需要提供要启动的组件的完整名称。

再看看app,可以发现页面已经被加载:

我们也可以发现,因为有了webView.getSettings().setJavaScriptEnabled(true),所以我们动态的加载js文件,我们准备一段html文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Hello Page</title>
</head>
<body>

<script>
    alert("hello");
</script>

</body>
</html>

然后通过 adb shell am start -n com.tmh.vulnwebview/.RegistrationWebView --es reg_url "file:///storage/emulated/0/MT2/hello.html" 进行加载js代码,这里可以改成恶意的js代码

标签:androidx,app,漏洞,new,import,webview,移动,webView,android
From: https://www.cnblogs.com/GGbomb/p/18115344

相关文章

  • 第二章-漏洞环境
    漏洞环境1.Ubuntu安装dockerUbuntu镜像下载Ubuntu虚拟机安装Ubuntu虚拟机VMWare-Tools安装:sudoapt-getinstallopen-vm-tools#全选ysudoapt-getinstallopen-vm*#全选yreboot1.1.Ubuntu安装docker1.卸载旧版本:sudoapt-getremovedockerdocker-e......
  • 万户ezOFFICE-wf_printnum.jsp存在SQL注入漏洞
    声明:本文仅用于技术交流,请勿用于非法用途由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。简介万户EZOFFICE是一款办公软件,由中国万户网络科技有限公司开发和提供。该软件提供了一系列办公管理工具,包括......
  • 鸿运(通天星CMSV6车载)主动安全监控云平台inspect_file/upload存在任意文件上传漏洞
    声明:本文仅用于技术交流,请勿用于非法用途由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。简介鸿运(通天星CMSV6车载)主动安全监控云平台实现对计算资源、存储资源、网络资源、云应用服务进行7*24小时......
  • 【漏洞复现】宏景人力资源信息管理系统 showmediainfo SQL注入漏洞
    免责声明:文章来源互联网收集整理,文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者......
  • 【漏洞复现】宏景人力资源信息管理系统 DisplayExcelCustomReport 任意文件读取漏洞
    免责声明:文章来源互联网收集整理,文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者......
  • SSRF漏洞
    Web渗透_SSRF漏洞一、介绍SSRF漏洞SSRF(Server-SideRequestForgery,服务器端请求伪造)是一种由攻击者构造请求,由服务端发起请求的安全漏洞。一般情况下,SSRF攻击的目标是外网无法访问的内部系统(正因为请求是由服务端发起的,所以服务端能请求到与自身相连而与外网隔离的内部系......
  • vulhub中Apache Solr 远程命令执行漏洞复现(CVE-2019-0193)
    ApacheSolr是一个开源的搜索服务器。Solr使用Java语言开发,主要基于HTTP和ApacheLucene实现。此次漏洞出现在ApacheSolr的DataImportHandler,该模块是一个可选但常用的模块,用于从数据库和其他源中提取数据。它具有一个功能,其中所有的DIH配置都可以通过外部请求的dataC......
  • 03-Java框架FTPClient 使用rename()移动文件和文件重命名
    1需求由于业务种种原因,现在需要将ftp中已存文件移动到其它文件夹。2初始策略一开始走上弯路,直接翻看FTPClientAPI有无move方法,但没发现:于是曲线救国,想着采用先复制、再删除,伪代码:InputStreaminputStream=ftpClient.retrieveFileStream("/AAA/test.txt");ftpClient.st......
  • 【小迪安全2023】第9天:信息打点-CDN绕过篇&漏洞回链&接口探针&全网扫描&反向邮件;第10
    ......
  • 文件下载中的目录遍历漏洞与解决
    安全组觉得我们文件下载不够安全。给了份修复方案1、净化数据:对用户传过来的文件名参数进行硬编码或统一编码,对文件类型进行白名单控制,对包含恶意字符或者空字符的参数进行拒绝。2、web应用程序可以使用chroot环境包含被访问的web目录,或者使用绝对路径+参数来访问文件目录,时使其......