Risk Scoring

Risk scoring assigns a numeric risk score to every discovered browser extension. The score gives administrators a quick way to prioritize review and helps auditors understand why a particular extension was flagged. This page describes exactly how the score is calculated so that every number on a report can be traced back to specific extension characteristics.

How the Score Is Calculated

An extension's risk score is the sum of two components: Score = Permission Points + Modifiers

  • Each permission declared in the extension's manifest is looked up in the permission point table and assigned a point value.

  • All permission points are summed.

  • Modifier adjustments are applied based on the extension's install source, AI classification, and manifest version.

The final number determines the extension's risk level.

Permission Classification

Before scoring, every permission declared in the extension manifest is classified into one of four types. The type determines how it is weighted and displayed in the extension detail view.

Type Source

Examples

RequiredApi Non-URL entries in permissions tabs, cookies, nativeMessaging
RequiredHost URL patterns in host_permissions

(Manifest V3) or URL patterns in permissions (Manifest V2) https://*.google.com/*, <all_urls>

OptionalApi Non-URL entries in optional_permissions bookmarks, history
OptionalHost URL patterns in optional_host_permissions

(Manifest V3) or URL patterns in optional_permissions (Manifest V2) https://*.example.com/*

Host permissions (RequiredHost and OptionalHost) carry higher risk weight than their API counterparts because they control which websites an extension can read and modify. An extension with <all_urls> host access can interact with every page the user visits, including banking sites, corporate portals, and email.

Permission Point Table

The following table lists every scored permission and the points it contributes to the total. Permissions not listed here contribute zero points.

When both webRequest and webRequestBlocking are declared together, they contribute 25 points total, not 25 each. If only webRequest is declared without webRequestBlocking, it is scored at 10 points because the extension can observe but not modify traffic.

Permission Points Rationale
<all_urls> 30 Can read and modify content on every website the user visits
debugger 30 Grants full Chrome DevTools Protocol access, equivalent to browser-level debugging
webRequest + webRequestBlocking 25

Can intercept, inspect, and modify all HTTP traffic before the browser processes it

nativeMessaging 20

Can communicate with native applications installed on the endpoint

management 20

Can manage, enable, disable, and uninstall other browser extensions

proxy 20

Can redirect all browser traffic through an arbitrary proxy server

cookies 15 Can read and write cookies for any site, including session tokens
clipboardRead 15 Can read the contents of the system clipboard, which may contain passwords or sensitive data
tabs 10 Can see the URL, title, and favicon of every open tab
webNavigation 10

Can observe every navigation event across all tabs

history 10 Can read and modify the user's full browsing history
downloads 10 Can initiate and manage file downloads
contentSettings 10

Can modify per-site browser settings such as JavaScript, cookies, and plugin behavior

clipboardWrite 5 Can write to the system clipboard
activeTab 5 Can access the active tab when the user explicitly clicks the extension
bookmarks 5 Can read and modify all bookmarks
geolocation 5 Can access the user's physical location
storage 0

Extension-private storage only, no risk to user data

alarms 0 Scheduling mechanism internal to the extension
contextMenus 0

Adds items to the browser right-click menu

notifications 0 Can display desktop notifications

Modifiers

After the permission points are totaled, the following modifiers are added or subtracted based on the extension's meta data.

Install Source Modifiers

Install source modifiers are cumulative. A side-loaded extension that is also not from the web store receives +20 and +10 for a total modifier of +30.

Condition Modifier Rationale
Sideloaded +20 Extension was installed from a local file, bypassing store review
Developer mode +20 Extension is running as an unpacked developer extension
Not from the official web store +10 Extension was installed from an alternative source without store vetting
Enterprise-deployed -10 Extension was pushed through enterprise policy, indicating organizational approval

AI Classification Modifier

See AI Detection for details on how Delinea classifies extensions as AI-related.

Condition Modifier
Confirmed AI extension +10
Suspected AI extension +5

Manifest Version Modifier

Condition Modifier Rationale
Manifest V2 +5 Manifest V2 extensions have broader access patterns and weaker permission boundaries than Manifest V3

Risk Levels

The final score maps to one of four risk levels. These levels appear throughout reports and the extension detail view.

Password managers, ad blockers, and other widely used corporate extensions commonly score at the Critical level due to legitimate broad permissions. For example, a password manager needs <all_urls> and cookies access to fill credentials on any site, and an ad blocker needs webRequest with webRequestBlocking to intercept network requests. A Critical risk score does not mean an extension is malicious. It means the extension has powerful capabilities that warrant review and explicit approval through an enforcement policy.

Score Range Risk Level Color
0–15 Low Green
16–35 Medium Yellow
36–60 High Orange
61+ Critical Red

Distribution Across Pre-Staged Extensions

Privilege Manager provides a set of 60 pre-staged extensions that represent common enterprise software. Their risk score distribution illustrates the spread administrators can expect to see in a typical environment.

This distribution shows that roughly one-third of commonly used extensions score at Critical, reinforcing that Critical is not synonymous with malicious.

Risk Level Count
Low

9

Medium 14
High 18
Critical 19

Worked Examples

The following examples walk through the full calculation for three well-known extensions.

Example 1: Microsoft Single Sign-On (SSO)

Microsoft SSO is a lightweight enterprise extension that facilitates Windows authentication in the browser. It ships as a Manifest V3 Chrome extension in the pre-staged set.

Microsoft SSO scores 20 and is classified as Medium risk. Although it declares a single permission, nativeMessaging is weighted heavily because it grants the extension a communication channel to a native Windows process. When deployed through enterprise policy, the -10 Enterprise-deployed modifier lowers the score to 10 (Low).

Component Vaue Points
nativeMessaging (RequiredApi) Communicates with the Windows SSO native host to exchange auth tokens 20
Permission subtotal   20
No install source modifiers Installed from Chrome Web Store 0
No AI modifier Not an AI extension 0
Manifest V3 No MV2 modifier applies 0
Modifier subtotal   0
Total   20

Example 2: uBlock Origin

uBlock Origin is a popular open-source ad and content blocker. It ships as a Manifest V2 extension (the classic build).

uBlock Origin scores 80 and is classified as Critical risk. The score reflects the powerful permissions required for ad blocking, not any malicious intent.

uBlock Origin Lite (the Manifest V3 variant in the pre-staged set) scores materially lower because it uses declarativeNetRequest instead of webRequest/webRequestBlocking and does not request <all_urls> as a broad host permission.

Component Value Points
<all_urls> (RequiredHost) Must access all sites to block ads 30
webRequest + webRequestBlocking (RequiredApi) Inercepts and blocks network requests 25
tabs (RequiredApi) Observes tab URLs for per-site filtering 10
webNavigation (RequiredApi) Hooks navigation events to apply filters early 10
Permission subtotal   75
No install source modifiers Installed from web store 0
No AI modifier Not and AI extension 0
Manifest V2 uBlock Origin classic uses MV2

+5

Modifier subtotal   +5
Total   80

Example 3: Grammarly

Grammarly is a writing assistant that checks grammar and spelling on web pages. It ships as a Manifest V3 Chrome extension in the pre-staged set and appears on the curated AI list.

Grammarly (Chrome, MV3) scores 35 and is classified as Medium risk. Although it is a Confirmed AI extension, its declared permission set is narrower than extensions that request <all_urls> outright, so it does not reach the High or Critical band on Chrome. The Firefox build of Grammarly scores materially higher (60, High) because it declares additional permissions on that platform.

Component Value Points
cookies (RequiredApi) Maintains session state with the Grammarly service 15
tabs (RequiredApi) Detects tab context for on-page suggestions 10

scripting, sidePanel, notifications, identify, storage (RequiredApi)

Standard MV3 APIs not weighted by the scorer 0
http://*/*, https://*/* (RequiredHost) Not matched by the scorer's wildcard / broad / specific patterns 0
Permission subtotal   25
Confirmed AI extension Grammarly appears on the curated AI list +10
No install source modifiers Installed from Chrome Web Store 0
Manifest V3 No MV2 modifier applies 0
Modifier subtotal   +10
Total   35

Using Risk Scores in Practice

Risk scores are most valuable when combined with enforcement policies.

  • Triage new extensions - Sort the Browser Extension Inventory Report by risk score to focus review on the highest-scoring extensions first.

  • Set policy thresholds - Use risk levels to guide Allow List and Deny List decisions. Many organizations start by explicitly allowing all Critical-scoring extensions they have vetted and blocking the rest.

  • Audit trail - The score breakdown is available in the Extension Resource Detail View for each extension. Auditors can inspect the exact permissions and modifiers that produced the score.

  • Track changes over time - When an extension updates and adds new permissions, it risk score changes. The inventory report reflects the current score based on the latest discovered manifest.