jsbroks / coco-annotator

:pencil2: Web-based image segmentation tool for object detection, localization, and keypoints
MIT License
2.12k stars 463 forks source link

Recommendation to remove a default secret key #625

Open FHantke opened 2 months ago

FHantke commented 2 months ago

Hello,

We are a cybersecurity research group from the CISPA Helmholtz Center for Information Security and Ca’ Foscari University of Venice. We recently conducted an analysis of the session management used in your web application as part of our research. We have discovered a security flaw that we believe requires your attention.

Description:

After our analysis, we have identified that your application is using a default hard-coded secret key that is leaked through GitHub. If operators who install your web application do not change this secret key (or add one via the env), they are vulnerable to cookie forgeries. The cookie forgery attack allows an attacker, knowing the key used to sign a cookie, to forge new arbitrary cookies to impersonate and take over other accounts.

link to the relevant code part

Recommendation for Mitigation:

To address this issue and enhance the security posture of your web application, we highly recommend removing the default option and only setting the secret key from an environment variable. If the environment file is not shared on GitHub then this would force operators of your application to create their own key upon installation, forcing them to set their own secure secret key.

We hope this notification helps improve your security and would appreciate if you could take a look into the relevant code parts and comment on the issue. Thank you!