influxdata / influxdata/openapi

Dashboard Members and Owners are accessible with any API token

Open
#488 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
18
Forks
9
PR merge metrics
No merged PRs in 30d

Description

Both

`/dashboards/{dashboardID}/members`

and

`/dashboards/{dashboardID}/owners`

are accessible to anyone as long as they use ANY existing API token. This allows anyone to access any dashboard members and owners of any organization as long as they have a dashboard id and any existing API token.

Similarly, I tried to access `/buckets/{bucketID}/members` and `/buckets/{bucketID}/owners` where I was met with 404.

Steps to reproduce:

**_Organization A_**
- create a new dashboard and save its ID
- generate a new API Token
- make an API request, that will [add a member to a dashboard](https://docs.influxdata.com/influxdb/v2.4/api/#operation/PostDashboardsIDMembers)

**_Organization B_**
- generate a new API Token (this time for a new organization)
- make an API request to [list all dashboard members](https://docs.influxdata.com/influxdb/v2.4/api/#operation/GetDashboardsIDMembers) from the dashboard you created in the **_Organization A_**
E.g. `/api/v2/dashboards/orgADashboardID/members` (use the saved dashboard ID)

In the response, you should receive all dashboard members from the dashboard created in **_Organization A_**
You can try to add a new member/owner with the Token from the **_Organization B_** into the dashboard that belongs to the **_Organization A_**, or delete the one member you created.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the OpenAPI definitions for /dashboards/{dashboardID}/members and /dashboards/{dashboardID}/owners, then review their security and authorization requirements against the reproduction steps. Verify that a token from Organization B cannot list, add, or delete members or owners on Organization A’s dashboard, and run any related API validation checks available in the repository.

Written by the indexing model from the issue text.

Assessment

Tech stack
openapi
Domain
api, authorization, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.