IDOR vulnerability in unreleased HackerOne Copilot feature

Disclosed: 2023-10-25 23:17:15 By bebiks To security
Medium
Vulnerability Details
**Summary:** Hello HackerOne security team :-) For a while now I have been monitoring H1 js files. I've just noticed some new GraphQL queries about `HackerOne Copilot`. While this feature has not yet been released, the vulnerability must be fixed. `DestroyLlmConversation` GraphQL mutation is vulnerable to IDOR. ### Steps To Reproduce 1. Navigate to `https://hackerone.com/opportunities/all` 2. Execute this JS command to show `Hackerone Copilot` GUI ```javascript document.querySelectorAll('div').forEach(e => { e.classList.remove('hidden'); e.classList.remove('dark:text-white'); }); ``` {F2790650} 3. Hackerone Copilot GUI will appear, here you can create a new conversation. Looks like you can't talk to LLM at the moment. 4. After creating a new conversation, look for `"operationName":"NewConversation",` graphql request in your `Proxy History` and store somewhere the value of `data.newConversation.llm_conversation.id` from the response. 5. From the second (attacker) account, send the following graphql request: ```json {"operationName":"DestroyLlmConversation","variables":{"llmConversationId":"#"},"query":"\n mutation DestroyLlmConversation($llmConversationId: ID!) {\n destroyConversation(input: { llm_conversation_id: $llmConversationId }) {\n destroyed\n }\n }\n"} ``` 6. Go back to the victim account, refresh the page, execute the script again, and notice that the conversation is gone. ## Impact This vulnerability allows the attacker to remove any LLM conversation in the unreleased `HackerOne Copilot` feature. This feature has not been released yet although this might still be vulnerable in the future when this feature is released.
Actions
View on HackerOne
Report Stats
  • Report ID: 2218334
  • State: Closed
  • Substate: resolved
  • Upvotes: 187
Share this report