【问题标题】:Any ideas about making Google Chrome Extension for anti-email phishing关于制作用于反电子邮件网络钓鱼的 Google Chrome 扩展程序的任何想法
【发布时间】:2022-12-19 00:48:52
【问题描述】:

我想开发一个 Google Chrome 扩展程序来检查 gmail 内部是否有任何可疑链接和附件。如果有,我想用红色来突出链接。当用户使用鼠标指向 URL 时,今天会弹出警告警告用户。但是对于附件,我不知道怎么查看。谁能对我的项目有任何想法?

我知道一些扩展做了类似的事情。我发现的是popupfilter,但它只是阻止链接并停止重定向操作。

【问题讨论】:

    标签: javascript google-chrome-extension


    【解决方案1】:
    1. 开发 Chrome 扩展听起来是个好主意!您可以按照以下步骤构建 Gmail 扩展程序来检查可疑链接和附件:

      首先,您需要为您的扩展创建一个清单文件。这是一个 JSON 文件,其中包含有关您的扩展的信息,例如其名称、版本和权限。所有 Chrome 扩展程序都需要清单文件,它应该命名为 manifest.json 并放在扩展程序的根目录中。这是一个示例清单文件

      {
        "manifest_version": 2,
        "name": "Gmail Security Extension",
        "version": "1.0.0",
        "description": "Checks for suspicious links and attachments in Gmail",
        "permissions": [
          "activeTab",
          "https://mail.google.com/*"
        ],
        "background": {
          "scripts": ["background.js"]
        },
        "content_scripts": [
          {
            "matches": ["https://mail.google.com/*"],
            "js": ["content.js"]
          }
        ],
        "browser_action": {
          "default_icon": "icon.png"
        }
      }
      
      1. 在清单文件中,您会注意到指定了两个脚本:background.js 和 content.js。这些是包含扩展代码的 JavaScript 文件。 background.js 文件在后台运行并侦听事件,例如在 Gmail 中加载新页面时。 content.js 文件在 Gmail 页面的上下文中运行并且可以访问 DOM,因此您可以修改页面以添加警告消息并突出显示可疑链接。

      在 background.js 文件中,您可以监听 onCompleted 事件,该事件在页面加载完成时触发。页面中的每个框架都会触发此事件,因此您可以使用它来检测 Gmail 页面何时完成加载。以下是如何监听此事件的示例:

      chrome.webNavigation.onCompleted.addListener(function(details) {
        // Check if the page is Gmail
        if (details.url.startsWith('https://mail.google.com/')) {
          // Send a message to the content script
          chrome.tabs.sendMessage(details.tabId, {
            action: 'pageLoaded'
          });
        }
      }, {
        url: [{
          urlMatches: 'https://mail.google.com/*'
        }]
      });
      
      1. 在 content.js 文件中,您可以侦听来自后台脚本的消息,然后开始检查 Gmail 页面中的可疑链接。您可以使用 querySelectorAll 方法找到页面上的所有链接,然后遍历它们以检查它们是否可疑。

      要检查链接是否可疑,您可以结合使用不同的方法。例如,您可以检查链接的 URL,看它是否与可疑 URL 的已知模式相匹配,例如那些包含“网络钓鱼”或“恶意软件”等词的 URL。您还可以检查链接文本,看它是否包含可疑的单词或短语,例如“单击此处”或“立即下载”。

      此外,您可以使用第三方服务或 API 扫描链接并检查其是否已知为恶意链接。例如,Google 安全浏览 API 允许您根据 Google 的不安全网站数据库检查 URL。这可以帮助您识别已知的恶意链接并相应地警告用户。

      检查链接并确定它是否可疑后,您可以向页面添加警告消息并以红色突出显示链接。以下是如何执行此操作的示例:

      if (isSuspicious(link)) {
        // Add a warning message
        const warning = document.createElement('div');
        warning.innerText = 'This link may be suspicious. Proceed with caution.';
        warning.classList.add('suspicious-warning');
        link.parentElement.appendChild(warning);
      
        // Highlight the link in red
        link.classList.add('suspicious-link');
      }
      

      您还可以使用 addEventListener 方法将鼠标悬停事件侦听器附加到链接,这样当用户将鼠标悬停在链接上时,就会显示一条警告消息。以下是如何执行此操作的示例:

      link.addEventListener('mouseover', function() {
        alert('This link may be suspicious. Proceed with caution.');
      });
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-16
      • 2022-11-04
      • 2012-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多