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

Key Files