W projekcie RevelaCode (wersje poniżej 1.0.1) dane uwierzytelniające do bazy danych MongoDB Atlas (login i hasło) zostały przypadkowo umieszczone w publicznym repozytorium kodu. Każda osoba mająca dostęp do repozytorium mogła uzyskać nieautoryzowany dostęp do produkcyjnej lub testowej bazy danych.
▸ Pokaż oryginał (EN)
RevelaCode is an AI-powered faith-tech project that decodes biblical verses, prophecies and global events into accessible language. In versions below 1.0.1, a valid MongoDB Atlas URI with embedded username and password was accidentally committed to the public repository. This could allow unauthorized access to production or staging databases, potentially leading to data exfiltration, modification, or deletion. This is fixed in version 1.0.1. Workarounds include: immediately rotating credentials for the exposed database user, using a secret manager (like Vault, Doppler, AWS Secrets Manager, etc.) instead of storing secrets directly in code, or auditing recent access logs for suspicious activity.
Programista przypadkowo zatwierdził (commit) plik zawierający pełny URI połączenia z MongoDB Atlas wraz z osadzonymi danymi uwierzytelniającymi (nazwą użytkownika i hasłem) bezpośrednio w kodzie źródłowym publicznego repozytorium. Każda osoba, która odkryła ten wpis w historii repozytorium, mogła użyć tych danych do bezpośredniego połączenia z bazą danych bez żadnej dodatkowej autoryzacji. Podatność sklasyfikowana jest jako CWE-522 (Insufficiently Protected Credentials), czyli niewystarczające zabezpieczenie poświadczeń.
Atakujący posiadający wyciecznięte dane uwierzytelniające może uzyskać nieautoryzowany dostęp do bazy danych i przeprowadzić eksfiltrację, modyfikację lub usunięcie przechowywanych danych.
Należy zaktualizować RevelaCode do wersji 1.0.1. Dodatkowo producent zaleca: natychmiastową rotację danych uwierzytelniających dla ujawnionego użytkownika bazy danych, przeniesienie sekretów do menedżera poświadczeń (np. Vault, Doppler, AWS Secrets Manager) zamiast przechowywania ich bezpośrednio w kodzie oraz przegląd logów dostępu do bazy danych pod kątem podejrzanej aktywności.
RevelaCode Backend w wersjach poniżej 1.0.1
Mimo oceny CVSS 9.8 (CRITICAL), podatność dotyczy stosunkowo niszowego projektu open-source. Rotacja danych uwierzytelniających jest pilniejsza niż sama aktualizacja kodu, ponieważ historyczne commity mogą pozostać dostępne nawet po poprawce. Podatność zgłoszona przez GitHub Security Advisory GHSA-m253-qvcr-cr48.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H