Benign chrome 1,000 installs Download

BandLab Audio Video Downloader 2.0.0

Legitimate BandLab downloader extension

“This is an audio and video downloader designed for BandLab users, helping you download works that you have the right to save on BandLab to…”

Creates DOM elementAsset declares AI-generated provenance

Evidence

Contains a hardcoded remote HTTP(S) URL popup.js · lines 1–3
1var BANDLAB_HOME='https://www.bandlab.com/track/48a7b24f-28b4-4c24-96d8-7a04d6d735fe';var activeTabId=null;var currentMode='open';
2function getMessage(key){return chrome.i18n.getMessage(key)||key}
3function translatePage(){document.querySelectorAll('[data-i18n]').forEach(function(element){var value=getMessage(element.dataset.i18n);if(value)element.textContent=value});document.querySelectorAll('[data-i18n-aria-label]').forEach(function(element){element.setAttribute('aria-label',getMessage(element.dataset.i18nAriaLabel))});document.querySelectorAll('[data-i18n-alt]').forEach(function(element …
Extracts host from a constructed URL popup.js · lines 5–7
5:147… abled;currentMode=mode}
6function isBandLabUrl(value){try{return new URL(value).hostname==='www.bandlab.com'}catch(error){return false}}
7function renderPageStatus(response){if(!response||!response.ok){setStatus('status_unavailable','error');setPrimary('primary_re …
Uses core Chrome extension APIs popup.js · lines 7–10
7:328… imary('primary_scan','scan',false)}
8function inspectActiveTab(){chrome.tabs.query({active:true,currentWindow:true},function(tabs){var tab=tabs[0];if(!tab||!isBandLabUrl(tab.url)){setStatus('status_other_site','warning');setPrimary('primary_open','open',false);return}activeTabId=tab.id;chrome.tabs.sendMessage(activeTabId,{type:'GET_PAGE_STATUS'},function(response){if(chrome.runtime.lastError){setStatus('status_unavailable','error');setPrimary('primary_reload','reload',false);return}renderPageStatus(response)})})}
9function handlePrimaryAction(){var button=document.getElementById('primary-action');if(currentMode==='open'){chrome.tabs.create({url:BANDLAB_HOME});return}if(currentMode==='reload'){chrome.tabs.reload(activeTabId);window.close();return}button.disabled=true;setStatus('status_scanning','warning');chrome.tabs.sendMessage(activeTabId,{type:'RESCAN_PAGE'},function(response){button.disabled=false;if(chrome.runtime.lastError||!response||!response.ok){setStatus('status_unavailable','error');setPrimary('primary_reload','reload',false);return}renderPageStatus(response.status)})}
10function initializePopup(){translatePage();document.documentElement.lang=chrome.i18n.getUILanguage()||'zh-CN';document.documentElement.dir=['ar','fa','he'].includes(document.documentElement.lang.split('-')[0])?'rtl':'ltr';document.getElementById('primary-action').addEventListener('click',handlePrimaryAction);inspectActiveTab() …
Reads DOM text content content_bandlab.js · lines 2–14
2:5… INLINE_CLASS = 'bandlab-downloader-inline';
3var scanScheduled = false;
4
5function message(key, substitutions) {
6 return chrome.i18n.getMessage(key, substitutions) || key;
7}
8
9function addExtensionStyles() {
10 if (document.getElementById('bandlab-downloader-styles')) return;
11 var style = document.createElement('style');
12 style.id = 'bandlab-downloader-styles';
13 style.textContent =
14 '.' + BUTTON_CLASS + '{position:absolute;inset-block-start:8px;inset-inline-end:8px;z-index:2147483646;display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.4);border-radius:10p …
CSS fixed-position declaration content_bandlab.js · lines 19–20
19:154… align:middle;box-shadow:none}' +
20 '.bandlab-downloader-toast{position:fixed;inset-inline-end:20px;inset-block-end:70px;z-index:2147483647;max-width:min(360px,calc(100vw - 40px));padding:11px 14px;border-radius:10px;background:#172019;color:#fff;font:600 13px/1.45 s …

Showing the top 5 files — 4 more files (11 regions) not shown.

No evidence locations were recorded for this file. Raw result

Keyboard shortcuts on this page: j for the next sample, k for the previous one, x to go back to the feed, d to download the original bytes, r to re-queue the sample for analysis.