mirror of
https://github.com/binwiederhier/ntfy.git
synced 2026-05-09 08:26:00 +02:00
[GH-ISSUE #853] Brute force Subscription Names #599
Labels
No labels
ai-generated
android-app
android-app
android-app
🪲 bug
build
build
dependencies
docs
enhancement
enhancement
🔥 HOT
in-progress 🏃
ios
prio:low
prio:low
pull-request
question
🔒 security
server
server
unified-push
web-app
website
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/ntfy#599
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @vysecurity on GitHub (Aug 31, 2023).
Original GitHub issue: https://github.com/binwiederhier/ntfy/issues/853
If you host an externally accessible ntfy server. Couldn't someone brute force the subscription names to:
Read the subscription
SPAM your subscription
?
There doesn't appear to be any authentication by default. It's publicly accessible by default.
Why is it not "secure by default"?
@Mr-KayJayDee commented on GitHub (Sep 1, 2023):
You can enable auth using nginx or any reverse proxy you are using ˆˆ
@binwiederhier commented on GitHub (Sep 1, 2023):
If you don't have ACLs set up, the topic name is your password, it says so everywhere. If you choose a easy-to-guess/dumb topic name, people will be able to guess it. If you choose a randomly generated topic name, the topic is as good as a good password.
As for brute forcing: it's not possible to brute force a ntfy server for very long, as you'll get quickly rate limited. For ntfy.sh, there's even a fail2ban in place which will ban your IP pretty quickly. Even without that, brute forcing a random 10 digit topic name would take years.