Fill out the following bug report template with as much detail as possible!
Are you sure this is a bug?If you just need help, post in the developer help category. If it’s a feature request, head to the ideas category.
Issue Summary
On my self-hosted Ghost I have suspicious member sing-ups. The logs indicate that the /members/api/send-magic-link got posted to without prior call to get the integrity token.
Indeed I can post to it with integrityToken payload set to null and get the email.
I must admit the missing integrity check is a minor problem for me.
If the token can be access via a simple anonymous GET to a public API is just a minor complication for an attacker’s script.
And currently it seems to be a script POST-ing to the magic-link URL to trigger the e-mail confirmation. I assume as a GET to / and just the POST are logged for the same IP
I’m more worried that like 10s later a request to the sign-up URL is issued from a different IP
This time more likely from a browser, as all resources of the Page including css, etc are requested.
Yeah, but whichever way you configured Ghost, adding that configuration flag (either via the config.production.json or environment variables) will activate it.