Close Menu
    DevStackTipsDevStackTips
    • Home
    • News & Updates
      1. Tech & Work
      2. View All

      Error’d: Pickup Sticklers

      September 27, 2025

      From Prompt To Partner: Designing Your Custom AI Assistant

      September 27, 2025

      Microsoft unveils reimagined Marketplace for cloud solutions, AI apps, and more

      September 27, 2025

      Design Dialects: Breaking the Rules, Not the System

      September 27, 2025

      Building personal apps with open source and AI

      September 12, 2025

      What Can We Actually Do With corner-shape?

      September 12, 2025

      Craft, Clarity, and Care: The Story and Work of Mengchu Yao

      September 12, 2025

      Cailabs secures €57M to accelerate growth and industrial scale-up

      September 12, 2025
    • Development
      1. Algorithms & Data Structures
      2. Artificial Intelligence
      3. Back-End Development
      4. Databases
      5. Front-End Development
      6. Libraries & Frameworks
      7. Machine Learning
      8. Security
      9. Software Engineering
      10. Tools & IDEs
      11. Web Design
      12. Web Development
      13. Web Security
      14. Programming Languages
        • PHP
        • JavaScript
      Featured

      Using phpinfo() to Debug Common and Not-so-Common PHP Errors and Warnings

      September 28, 2025
      Recent

      Using phpinfo() to Debug Common and Not-so-Common PHP Errors and Warnings

      September 28, 2025

      Mastering PHP File Uploads: A Guide to php.ini Settings and Code Examples

      September 28, 2025

      The first browser with JavaScript landed 30 years ago

      September 27, 2025
    • Operating Systems
      1. Windows
      2. Linux
      3. macOS
      Featured
      Recent
    • Learning Resources
      • Books
      • Cheatsheets
      • Tutorials & Guides
    Home»Development»DOM-Based Extension Clickjacking Exposes Millions of Password Manager Users to Credential Theft

    DOM-Based Extension Clickjacking Exposes Millions of Password Manager Users to Credential Theft

    August 21, 2025

    DOM‑based extension

    A newly discovered technique, dubbed DOM-based extension clickjacking, has raised serious concerns about the security of browser-based password managers. Despite their role in protecting sensitive information, such as login credentials, credit card data, and TOTP codes (Time-based One-Time Passwords), this attack demonstrates how a single deceptive click can result in total data compromise. 

    Decoding DOM‑based Extension Clickjacking 

    Security researcher Marek Tóth revealed DOM‑based extension clickjacking at DEF CON 33 in August. Tóth demonstrated how malicious websites can exploit password manager browser extensions by manipulating Document Object Model (DOM) elements injected by these extensions.  

    The core idea involves hiding legitimate autofill interfaces via CSS properties like opacity: 0 or positioning them off-screen. Then, attackers overlay fake UI elements, such as cookie banners or modal windows, to mislead users into clicking what appear to be harmless elements. 

    These seemingly innocuous interactions can trigger the hidden autofill mechanisms of password managers. As a result, sensitive data like usernames, passwords, credit card details, or even TOTP codes can be captured and exfiltrated by attackers without the user’s awareness. 

    Scope and Impact 

    The attack was tested across 11 of the most widely used password manager extensions: 

    • Credential theft was successful in 10 out of 11 managers. 
    • Credit card data, including CVV numbers, was extractable in 6 out of 9 tested. 
    • Personal data exfiltration was possible in 8 out of 10. 
    • Passkey authentication was compromised in 8 out of 11. 

    This translates to a potential risk for approximately 40 million users worldwide, based on extension download data from major browser stores. The attack affects not only Chromium-based browsers but also those running other engines. 

    Exploit Mechanics 

    The attack consists of several stages: 

    1. User Interaction Hijacking: The attacker presents a fake UI overlay to the user—such as a cookie consent form—designed to encourage interaction. 
    2. Bypassing Overlay Protections: The attacker sets pointer-events: none on the overlay, allowing clicks to pass through to the underlying autofill elements from the password manager. 
    3. Fake Form Injection: Autocomplete-enabled input fields are precisely positioned below the cursor. A JavaScript function captures the autofilled data using onchange events or browser console logging. 
    4. Mouse Tracking: JavaScript dynamically tracks the mouse position to ensure that fake form fields align perfectly with user interactions, further improving the accuracy of the exploit. 

    In some test cases, login credentials and personal data were stolen with just two user clicks. The attack is particularly dangerous because it can bypass domain restrictions. For example, if a vulnerability exists on a subdomain of a large service, it can be exploited to steal credentials from that service’s main login domain. 

    While passkeys are generally considered more secure due to domain binding, Tóth found that several implementations—such as those from SK Telecom, Hanko, and Authsignal- could be hijacked via the same method. In systems lacking session-bound challenges, attackers can redirect or intercept signed assertions during the login process. 

    Vendor Responses 

    Following responsible disclosure in April 2025, several vendors released patches: 

    • Fixed: Dashlane, NordPass, Keeper, ProtonPass, RoboForm 
    • Still Vulnerable (as of August 2025): 1Password, Bitwarden, Enpass, iCloud Passwords, LastPass, LogMeOnce 

    Bitwarden, Enpass, and iCloud Passwords are reportedly working on fixes. However, both 1Password and LastPass have categorized the vulnerability as “informative,” suggesting they do not view it as a high-priority issue. 

    To reduce the risk of DOM‑based extension clickjacking, users should disable autofill, limit extension access to “on click,” and consider standalone password managers. Developers should implement protection like closed shadow DOMs and mutation observers, though no universal fix exists yet. With real-world demos showing how easily credentials, credit cards, and TOTP codes can be stolen, it’s clear that both users and vendors must act quickly; this is not a legacy issue, but a growing threat. 

    Source: Read More

    Facebook Twitter Reddit Email Copy Link
    Previous ArticleApple Patches Zero-Day in iOS 18.6.2 After Targeted Exploits Involving Malicious Image Files
    Next Article Russia’s FSB-Linked Hackers Targeting Cisco Network Gear Used in Critical Infrastructure

    Related Posts

    Development

    Using phpinfo() to Debug Common and Not-so-Common PHP Errors and Warnings

    September 28, 2025
    Development

    Mastering PHP File Uploads: A Guide to php.ini Settings and Code Examples

    September 28, 2025
    Leave A Reply Cancel Reply

    For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.

    Continue Reading

    Supercharge Your Laravel Projects: Real AI Coding with Laravel Boost!

    Development

    May 2025 Patch Tuesday: Five Zero-Days and Five Critical Vulnerabilities Among 72 CVEs

    Security

    Critical Linux UDisks Daemon Vulnerability (CVE-2025-8067) Exposes Privileged Data to Local Attackers

    Development

    SEO services agency in singapore

    Web Development

    Highlights

    Development

    How to Work with Queues in TypeScript

    June 17, 2025

    A queue is a collection of items arranged in a First-In-First-Out (FIFO) order. This means…

    How Falcon Next-Gen SIEM Protects Enterprises from VMware vCenter Attacks

    June 5, 2025

    AI-Powered UX/UI Design: A Breakthrough in Modern App Design

    August 29, 2025

    Work in Progress, Part 12: What’s New on Dribbble

    July 31, 2025
    © DevStackTips 2025. All rights reserved.
    • Contact
    • Privacy Policy

    Type above and press Enter to search. Press Esc to cancel.