Bug: Unauthenticated user can join another guest game via URL and edit their code
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 55/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- elixir
- Domaine
- authentication, authorization, backend
Piste de recherche
Reproduce the issue using two incognito windows and the shared game URL, then trace how an unauthenticated visitor is admitted to the guest game and given editor access. Done means the second user is either prevented from joining or remains a spectator with the other player's editor read-only.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Summary
An unauthenticated user can open another guest's Simple Battle by changing the game id in the URL and edit that player's code
Reproduction steps
1. Go to https://codebattle.hexlet.io/ in an incognito window (User A, not logged in)
2. Click "Try simple battle"
3. Copy the game URL (example: https://codebattle.hexlet.io/games/XXXXXX)
4. Open second incognito window (User B, not logged in)
5. Paste the same URL
6. Click at User A editor and type any text
Expected result
User B should be spectator only, or should not join a guest's game at all. The editor must stay read-only
Actual result
User B joins the game as a participant and can change user A code
Browsers
Firefox
OS
Windows
Current version
05f8883
- Langage dominant
- Elixir
- Étoiles
- 890
- Forks
- 239
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Fournit un Dockerfile ou un fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Issues similaires
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 93/100
TomerAberbach/profiler-md#732 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
inertiajs/inertia-phoenix#84 ·
-
(FunctionClauseError) in DataToParams.transform_relationship/2` on scalar relationship linkageOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
beam-community/jsonapi#473 ·
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 2 jours