TECHNOLOGIES: GRAFANA

Grafana Security Review

A Grafana data source runs every query with its own configured credentials, not the viewer’s. We test organisations, roles, data source permissions and dashboard sharing. CREST-certified testers, fixed price from £2,670 for a 2-day single-instance scope, quoted within 24 hours.

  • Unlimited retesting
  • Unlimited pre-retesting
  • No hidden fees
Accredited & recognised
Cyber Essentials certified Cyber Essentials Plus certified IASME certifying body ISO 27001 certified ISO 9001 certified Crown Commercial Service supplier UK Cyber Security Council member
CREST
Approved Provider
10
Grafana Test Areas
FREE
Retest Until Closed
24h
Scope to Active Test
CLIENT REFERENCE
“I would highly recommend EJN Labs to any organisation seeking reliable, detailed, and well-managed penetration testing services, particularly for government or enterprise-level projects.”
SquareOneImran SaghirProject Lead, SquareOneRead the SquareOne case study →
CLIENT REFERENCE
“There wasn’t another company we could find that could deliver what we needed in the timeframe we needed. The client loved it, and we got instant ROI from the engagement.”
CelloriDan WilcocksonFounder, CelloriRead the Cellori case study →
See all case studies →
WHY IT MATTERS
3

Grafana’s three basic organisation roles, Viewer, Editor and Admin, apply globally across every dashboard, alert and data source in that organisation.

A Grafana instance is only as locked down as the organisations, roles and data source permissions your team configured

Grafana’s own documentation on roles and permissions sets out three organisation roles, Viewer, Editor and Admin, and confirms that permission level is global: an Editor can see and update every dashboard in the organisation unless a folder’s own permissions restrict it. A separate Grafana server administrator role manages server-wide settings such as licences and organisation creation, and Grafana itself notes that this Grafana Admin role does not exist at all on Grafana Cloud, where that responsibility moves to your own organisation administrators.

By default, any user in an organisation can issue any query a data source supports, not just the queries that already appear on dashboards they can see, because the data source proxy runs with its own configured credentials rather than the viewer’s own. Grafana Enterprise and Grafana Cloud can restrict this with data source permissions set to Query, Edit or Admin against specific users, teams or roles, and the Admin level also controls who can toggle query caching for that data source. We test who can query each data source today, and whether Enterprise or Cloud data source permissions have actually been configured to narrow that default.

We review the organisations, teams, roles, data source permissions, dashboard sharing settings and service accounts configured on your own Grafana instance, the same way we review configuration on a database platform rather than the database engine itself. We never test Grafana’s own codebase or attempt to find vulnerabilities in the open-source project.

SCOPE

What we review on a single Grafana instance

GF-01

Organisations and Global Permission Scope

Every Grafana user belongs to at least one organisation, and organisation role-based permissions are global within it: Grafana’s documentation confirms a permission level applies to every dashboard, alert, playlist, data source, team and service account in that organisation rather than to individual resources. A single instance can run multiple organisations to separate teams or business units entirely, but a user given the wrong role in the wrong organisation inherits everything that role can reach across the whole organisation at once. We test which organisations exist, who belongs to each one, and whether role assignments actually match the separation the business intended.

GF-02

Basic Roles: Viewer, Editor and Admin

Grafana assigns every organisation user one of three basic roles, Viewer, Editor or Admin, and its documentation is explicit that an Editor can see and update every dashboard in the organisation unless it sits in a folder with its own restrictive permissions. A separate Grafana server administrator (Grafana Admin) role manages instance-wide settings, statistics and organisation creation, and Grafana notes this role does not exist on Grafana Cloud at all. We test which basic role each user actually holds, whether folder permissions genuinely narrow an Editor’s reach, and who holds server administrator rights where that role exists.

GF-03

Teams and Grouped Permissions

Grafana Teams let permissions be granted to a group of users at once instead of one user at a time, which is how dashboard and folder access is scaled as headcount grows. A team keeps whatever access it has been granted directly, so a team built for a past project, migration or contractor engagement can retain live access nobody has reviewed since. We test which teams exist, what each one is actually bound to, and whether a stale team still grants access the business no longer intends.

GF-04

Data Source Permissions and the Query Proxy

Grafana documents that, by default, data sources in an organisation can be queried by any user in it, including a Viewer, who can issue any possible query the data source supports rather than only the queries that already exist on dashboards they can see; this works because the data source proxy runs queries with its own configured credentials, not the viewer’s own. Grafana Enterprise and Grafana Cloud let you restrict this with data source permissions set to Query, Edit or Admin against specific users, teams or roles, with the Admin level also controlling who can enable or disable query caching. We test what each data source can actually be queried for by whom, and whether Enterprise or Cloud permissions have been configured to narrow that default.

GF-05

Dashboard Sharing and Public Dashboards

Sharing a dashboard externally as Anyone with the link makes Grafana display a confirmation that the entire dashboard will become public, after which anyone holding that link can view it until access is paused or revoked; Grafana’s documentation also lists internal links, snapshots, PDF, image and JSON export among the other ways a dashboard’s data can leave the permission model that protects it inside the organisation. Enabling annotations on a public dashboard can surface annotations from other dashboards in the organisation where tag-based annotation queries are used, which Grafana flags as a limitation of the feature. We test which dashboards have been shared publicly, whether that sharing is still required, and what a public link actually exposes beyond the dashboard it was created for.

GF-06

Anonymous Access

Anonymous access is switched on with the auth.anonymous block in Grafana’s configuration, which sets the organisation and the role, Viewer, Editor or Admin, that every unauthenticated visitor assumes; Grafana notes this feature is only available on Grafana Enterprise self-managed and Grafana Open Source, not on Grafana Cloud. A device_limit setting can cap how many anonymous devices are allowed, but nothing in the feature itself distinguishes a trusted internal visitor from anyone else who can reach the login page. We test whether anonymous access is enabled, which role it grants, and what an unauthenticated visitor can actually reach as a result.

GF-07

Service Accounts and API Keys

Grafana positions service accounts as the replacement for API keys when authenticating applications such as Terraform or dashboard provisioning scripts against the Grafana API, because a service account can be enabled, disabled or granted role-based permissions and stays active until deleted, while an API key is only ever valid until its fixed expiry date. Service account tokens are not tied to a specific user, so they keep working even if the Grafana user who created them is later removed, and a service account is scoped to the single organisation it was created in. We test which service accounts and legacy API keys still exist, what permissions each token actually carries, and whether any have outlived the automation they were created for.

GF-08

Default Admin Account

Grafana’s [security] configuration block sets the default server administrator username to admin and its password to admin on first run, generated once and expected to be changed immediately afterwards; disable_initial_admin_creation can suppress that account entirely where it is not wanted. Because this is a documented, predictable default rather than a randomly generated secret, an instance that has never had its first-run admin credential rotated is reachable by anyone who knows the product. We test whether the default admin credential has been changed, and what that account can reach if it has not.

GF-09

Plugins

Grafana checks every plugin for a valid signature when it loads, distinguishing signed plugins from unsigned ones, and the Frontend Sandbox can isolate a plugin’s frontend code in its own JavaScript context so it cannot modify the rest of the Grafana interface or interfere with other plugins. An unsigned or unmaintained plugin still runs with the same access to dashboards and data sources as any core Grafana feature once installed. We test which plugins are installed, whether any are unsigned, and what access a plugin actually has within the instance.

GF-10

Grafana Cloud vs Self-Hosted

Several controls this page covers work differently depending on where Grafana runs: the Grafana Admin server administrator role does not exist on Grafana Cloud at all, Grafana Support is not authorised to change organisation roles on Cloud instances, anonymous access is not available on Cloud, and provisioned or Cloud-managed data sources are read-only in the UI regardless of the data source permissions configured against them. A self-managed instance carries the operational responsibility for all of these settings directly, while a Cloud organisation depends on Grafana Cloud’s own support processes for some of them. We confirm which of these differences apply to your instance before scoping the engagement.

OUR PROCESS

Grafana Security Review: From Scope to Attestation

01

Scope and Access

We agree which Grafana organisation, teams and data sources are in scope, plus at least one login for each basic role and any service accounts in use.

02

Role and Permission Mapping

We map every organisation role, team, data source permission and public dashboard against the access it actually grants.

03

Manual Testing

A CREST-certified tester manually tests role boundaries, data source permissions, public dashboard exposure, anonymous access and service account tokens, chaining findings where they compound.

04

Attestation and Retest

You get a technical report with CVSS scores and reproduction steps, a walkthrough call, a free retest once fixes are deployed, and an attestation letter for auditors.

CREDENTIALS

Verified Accreditations Auditors Accept

Every credential below is independently verifiable. UK procurement teams, FCA supervisors, ISO 27001 / SOC 2 auditors, and cyber insurance underwriters all recognise these standards.

GET YOUR QUOTE

Get a CREST Grafana pen test quote in 24 hours

A fixed-price quote back in one business day, from a named CREST assessor. No sales pipeline, no chasing.

  • CREST and IASME accredited. Testing your auditors and clients already recognise.
  • Fast-track testing within 24 hours where required. Free retest of every fix included.
  • Live findings via your client portal, not a four-week PDF.
  • Fixed price from £3,500 for a single-role, single-app scope, agreed up front. Most engagements run £5,000 and up. No day-rate surprises.
What clients say
There wasn’t another company we could find that could deliver what we needed in the timeframe we needed. The client loved it, and we got instant ROI from the engagement.
CelloriDan WilcocksonFounder, Cellori

Under NDA Further named references available on a scoping call.

What happens next
  1. We reply within one business day with a fixed-price quote from a named CREST assessor.
  2. You approve the scope and we book a start date, usually within 24 hours.
  3. Live findings land in your client portal as we test, with a free retest of every fix.
Accredited & recognised
CREST member Cyber Essentials certified Cyber Essentials Plus certified IASME certifying body ISO 27001 certified ISO 9001 certified UK Cyber Security Council Crown Commercial Service supplier

Get your fixed pen test quote in 24 hours

⚡24h reply ✓CREST tester ↻Free retests

or book a 20-min scoping call first

We reply within one business day. Your data stays with us. No newsletter signup.

COMPLIANCE READY

Reports Mapped to Every Framework

Findings are written so your team can reference the report against each framework without translation work.

ISO 27001:2022

Annex A.8.8 management of technical vulnerabilities plus A.5.15-5.18 and A.8.2-8.5 access control validation.

SOC 2 Type I & II

CC6 logical access, CC7 system operations, CC8 change management evidence.

PCI DSS

Requirement 11.4 application penetration testing across cardholder data environments, including ecommerce penetration testing for online retail platforms.

FCA SYSC

SYSC 4.1.1R, 6.1.1R, 13 mapped to each finding for FCA-regulated firms.

UK GDPR

Article 32 effectiveness testing, customer-data security controls, ICO-acceptable evidence.

Cyber Essentials Plus

Direct certification through our IASME body status, single-vendor delivery.

PRICING

Transparent Grafana Security Review Pricing

Pricing depends on the number of roles, integrations and environments in scope. See our pricing page for how we quote.

✦ ALWAYS · ON EVERY TIER · NO EXCEPTIONS ✦
✓Free retests, no time limit
✓Free rescheduling
✓No cancellation fees
✓24-hour scope to active testing
✓Live findings to client portal
✓Executive + technical report
✓60-min walkthrough call
✓Letter of attestation
SMALL / SMB
£2,670–£3,920
2 to 3 testing days

Single user role, basic CRUD application, marketing website with auth. Around 5 working days from kickoff to report.

Get a fixed quote
ENTERPRISE
£6,270–£9,560
5 to 7 testing days

Multi-tenant platform, complex authorisation matrix, integration-heavy applications. Around 15 to 20 working days from kickoff to report.

Get a fixed quote

Full UK pen test cost guide

WHY EJN LABS

What You Get From Grafana Security Review

Six concrete differentiators competitors don’t all match.

CREST-Certified Testers, Verifiable

Every test by a CREST-certified pen tester (CRT, CCT APP, CCT INF where applicable). Verify our company status at crest-approved.org.

24-Hour Startup, Where Required

From signed scope to active testing in a single business day for incident response, audit deadlines, or regulator-driven timelines.

Live Findings, Not 4-Week PDFs

Critical issues reported during testing through your client portal. Your team remediates while testing continues.

Audit-Ready Reports

Executive summary plus full technical report with CVSS scores and explicit framework mappings (ISO 27001, SOC 2, PCI DSS, FCA SYSC).

Free Retests, Standard

Verify remediation of every finding before close-out. Letter of attestation for audit submission included. Most competitors charge £1,500-£3,000 per retest.

UK-Based CREST Testers

Every engagement performed by vetted, UK-based CREST-certified testers, matched to your needs, security clearance, and compliance scope.

FAQ

Frequently Asked

What access do you need to test our Grafana instance?

We need at least one login for each basic role in use, ideally a Viewer or Editor account rather than an organisation Admin, plus a service account token if automation is in scope. Read access to your current teams and data source permissions speeds up scoping but isn’t needed to start.

Will testing touch our live data?

Testing focuses on organisations, roles, data source permissions, dashboard sharing and service accounts rather than the metrics, logs or traces a data source returns. Where proving a finding needs a test query or a temporary public dashboard, we agree the exact scope with you first and remove anything we create once testing is complete.

Is this hosted on our infrastructure or Grafana’s?

Grafana runs either self-managed on your own infrastructure or as a managed organisation on Grafana Cloud, and several controls, including the server administrator role and anonymous access, behave differently between the two. We confirm which model applies to your instance during scoping and test the configuration you actually control.

How long does a Grafana security review take?

A single instance with a typical set of organisations, teams and data sources sits in our 2-day single-instance scope, with a report landing around 5 working days after kickoff. An instance running many organisations, a large number of data sources, or Enterprise-level data source permissions extends that scope.

What is out of scope for a single-instance review?

Testing Grafana’s own source code or the underlying data sources it queries, such as a database or observability backend, is not included, and we do not run denial-of-service testing against the Grafana server. A connected data source’s own security review is scoped and quoted separately.

Do you need our source code or admin access?

No. We test with the role accounts and access you provide, and we do not need standing organisation Admin or server administrator access beyond what is needed to verify a specific finding during the engagement.

Does Grafana Labs have a policy on customer penetration testing?

Self-managed Grafana is software you run yourself, so there is no vendor notification process to follow before testing your own instance, and a genuine vulnerability in Grafana’s own code is reported through Grafana Labs’ published security advisories instead. Grafana Cloud is Grafana Labs’ own hosted platform, so we confirm Grafana Labs’ current customer security-testing terms for it during scoping.

Are your testers CREST certified?

Yes. Every Grafana engagement is carried out by UK-based, CREST-certified testers, and your report and attestation letter are recognised by auditors and insurers accordingly.

EXPLORE EVERY SERVICE

20+ CREST-accredited testing services in one place

Web, mobile, API, cloud, AI, infrastructure, red team. Pick the test that fits your environment.

Penetration testing services
READY TO START

Get a fixed price for your Grafana instance

A Grafana data source runs every query with its own configured credentials, not the viewer’s. We test organisations, roles, data source permissions and dashboard sharing. CREST-certified testers, fixed price from £2,670 for a 2-day single-instance scope, quoted within 24 hours.