Vol de token
Reconnaissance
Code vulnérable
public void loadWebView() {
WebView webView = (WebView) findViewById(R.id.webview2);
webView.setWebChromeClient(new WebChromeClient());
webView.setWebViewClient(new WebViewClient());
webView.getSettings().setJavaScriptEnabled(true);
Map<String, String> extraHeaders = new HashMap<>();
extraHeaders.put("Authorization", getUserToken());
webView.addJavascriptInterface(new WebAppInterface(this), "Android");
webView.loadUrl(getIntent().getStringExtra("support_url"), extraHeaders);
}Déclaration de l'interface
package com.tmh.vulnwebview;
import android.content.Context;
import android.webkit.JavascriptInterface;
/* loaded from: classes.dex */
public class WebAppInterface {
Context mContext;
/* JADX INFO: Access modifiers changed from: package-private */
public WebAppInterface(Context c) {
this.mContext = c;
}
@JavascriptInterface
public String getUserToken() {
return SupportWebView.getUserToken();
}
}Exploitation
Charge utile
Etapes

Mis à jour