Removed from Marketplace
Flags items that have been removed or delisted from the marketplace, potentially due to security vulnerabilities, or malicious behavior. Such extensions pose a risk as they are no longer maintained or patched.
high
Broad Host Permissions
Flags items that declare overly broad host access patterns, enabling interaction with all websites. This level of access can be exploited to inject scripts into trusted sites and increases the risk of sensitive data exposure, cross-site surveillance, and credential harvesting.
medium
Code Execution Permissions
Flags items that request permissions allowing them to inject, execute, or modify code at runtime. These capabilities expand the item’s control over the browser environment and significantly increase the potential for evasive behavior, or post-install exploitation.
medium
Extension Purpose and Intention
BridgeHub is a Chrome extension designed to enhance productivity for Bubble.io users by enabling easy copying and pasting of components across projects. It aims to minimize repetitive tasks and streamline the development process.
Code Insights
- Default Action Setup: The extension allows customization of the default action when the extension icon is clicked. It can open a sidebar, floating modal, or full-screen modal.
- Example:
chrome.action.onClicked.addListener(() => {
openIframeSidebar("https://bridgehub.co.kr/extension", "400px");
});
```
- **Installation and Uninstallation Events**: The extension opens a specific URL when installed or uninstalled.
- Example:
chrome.runtime.onInstalled.addListener((details) => {
if (details.reason === chrome.runtime.OnInstalledReason.INSTALL) {
chrome.tabs.create({ url: "https://buildwithcharles.io/welcome" });
}
});
```
- Message Handling: The extension listens for messages to perform actions like opening sidebars or modals, capturing screenshots, and setting badge text and color.
- Example:
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
const handler = messageHandlers[request.type];
if (handler) {
handler(request);
sendResponse({ status: "done", handler: request.type });
}
});
```
- **Network Activity**: The extension interacts with specified URLs to open iframes and modals.
- Example:
openIframeSidebar("https://bridgehub.co.kr/extension", "400px");
```
- Filesystem Activity: The extension injects CSS and JavaScript files into active tabs to render UI components.
- Example:
functions.injectCSSAndExecuteScript(tab.id, ["files/modal.css"], ["files/modal.js"], callback);
```
- **UI Components**: The extension dynamically creates and manages DOM elements for sidebars and modals.
- Example:
var chrlsSidebarModal = document.createElement("div");
chrlsSidebarModal.id = "chrls-sidebar-modal";
```
Potential Malicious Indicators
- Network Requests: The extension makes network requests to specific URLs, which could be used for data exfiltration if not properly secured.
- Code Execution: The extension executes scripts in the context of the active tab, which could be leveraged for malicious purposes if the scripts are altered.
Conclusion
The code primarily focuses on enhancing user productivity by managing UI components and handling user interactions. While it does involve network requests and script execution, these actions align with the extension's intended functionality and do not exhibit strong indicators of malicious behavior.
high
scripting
api
Allows execution of scripts in web page contexts, potentially manipulating site behavior and user interactions.
high
tabs
api
Provides access to privileged information about open tabs including URLs, titles, and loading status, beyond basic tab management.
low
activeTab
api
Grants temporary access to the current tab's data when triggered by user interaction, limiting scope compared to permanent permissions.
high