Security Warning: High Security Risk
Autoclicker
ID: beilbfghjjeoajmbmlfbocjgbocmggap
Extension Info & Metadata
Publisher Contextual Analysis
- Author
- xela92View Profile
- MX records exist
- Yes
- Domain exists
- Yes
- Is disposable
- No
- Is role-based
- No
- Mailbox exists
- Yes
Automatically click on element matching search criteria
Autoclicker aims to help you automate repetitive clicks on an element in the webpage. For instance, did you ever had to deal with a page that continuously, every 20 seconds, asks you to press a confirm button, that maybe appears and disappears for a certain time? This is the extension you're looking for to be able to avoid that! #NEW IN 0.0.5 - add option to persist clicking over page reload - minor bug fixes
The popup UI script `clicker.js` is also registered as a content script that runs on every URL (`<all_urls>`) in every frame (`all_frames: true`). This is architecturally unnecessary — the extension's functionality only requires injecting code into the active tab on user demand via `chrome.scripting.executeScript`. Injecting into every page and every iframe creates an unnecessarily broad execution footprint and is inconsistent with the declared 'autoclicker' purpose.
{ "content_scripts": [ { "matches": [ "<all_urls>" ], "js": [ "js/clicker.js" ], "run_at": "document_idle", "all_frames": true } ]}`chrome.scripting.executeScript` dynamically injects the `startSeekAndClick` function into any active tab on any website, where it then uses `setInterval` to continuously find and programmatically `.click()` DOM elements at a user-defined cadence. This capability combined with `<all_urls>` access enables automated click fraud on ad networks, manipulation of voting or review systems, or silent automated form submissions on any website the user visits — all without further user interaction after initial configuration.
let [tab] = await chrome.tabs.query({ active: true, currentWindow: true});await chrome.scripting.executeScript({target: {tabId: tab.id},function: startSeekAndClick,});})});function startSeekAndClick() { function getElementsByText(document, str, tag = 'button') { return new Array(...document.getElementsByTagName(tag)) .filter(el => !!el && String(el.innerText) .startsWith(str)); } chrome.storage.sync.get("data", ({ data }) => { const interval = setInterval(() => { let element; // ... element.click() }, data.delay || 1000); })}The extension persists a reference to the matched DOM `element` object into `chrome.storage.sync`. Storing live DOM node references in sync storage is technically unsupported (they cannot serialize meaningfully), but the pattern reveals the extension is tracking which elements have been previously clicked across storage. Combined with the ability to target elements by arbitrary attribute key/value pairs, this could be used to interact with payment buttons, consent forms, or authentication elements while bypassing attribute-based guards.
if (!!data.customAttrib) { const [attribKey, attribValue] = data.customAttrib.replaceAll('"', '') .split("=") if (element.hasAttribute(attribKey) && element.getAttribute(attribKey) === attribValue) { element.click() }} else { element.click()}chrome.storage.sync.get("element", ({ oldElement}) => { if (element !== oldElement) { chrome.storage.sync.set({ interval, element }) }})The popup loads a stylesheet from the Google Fonts CDN (`fonts.googleapis.com` / `fonts.gstatic.com`) every time the extension popup is opened. This causes the user's IP address and browser fingerprint to be transmitted to Google servers on every popup interaction, constituting passive tracking not disclosed to the user.
<link rel="preconnect" href="https://fonts.googleapis.com">< link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> < link href="https://fonts.googleapis.com/css2?family=Roboto:wght@300&display=swap" rel="stylesheet">By severity
Versions scanned
Showing 1 of 3 scanned versions with more than one unique finding. Counts are unique findings that include each version.
| Extension Version | Code Review Findings |
|---|---|
| 0.0.2 | 4 |
Files with findings
3 distinct paths — top paths by unique finding count:
- js/clicker.js2
- html/popup.html1
- manifest.json1
URLs
View the external URLs this extension communicates with to understand its network activity and data interactions.
Gain full insight into all external connections.
Upgrade for full visibility.
Gain full insight into all external connections.
Upgrade for full visibility.
Code Diff
Compare extension code between any two versions.
No comparable text files found between these versions.
Browse and explore files within this extension package
Gain full insight into all external connections.
Upgrade for full visibility.