Security.txt file now mandatory for Dutch government websites
netherlands.postsen.com
netherlands.postsen.com
We added such a file years ago. There's still some security researchers ("bug hunters") not aware of the standard and email other email addresses (info@, invoice@, data-protection@). Nobody has ever used the GPG key we list in the security.txt file. The email address we list (security@) hasn't received any significant spam.
If you are an average person and you notice that changing the ID in the URL to another number gives you access to data you should not see; you aren't some elite hacker as many of the news articles try to portray you. So expecting from them to use a GPG Key while they only have their ISP provided webmail will be near impossible for them to do under half a days work.
Especially as most GPG tools are very unfriendly to use.
>I have not used PGP for many years, because it does not run on my iPhone[.]
- Phil Zimmermann, author of PGP
This isn't for the average person.
While I wouldn't call it "mainstream", Keybase got a lot of computer-literate but not IT people into PGP, which hasn't really happened before. It had a good chance to go mainstream, but I guess this ending was inevitable since it was a for-profit company after all...
Install FlowCrypt (or Mailvelope) and it will become the easiest thing in the world. At least, that was my experience!
Once I was getting too many to glance at, hard to say. Probably mailing a physical letter to the address of record (if it's not a company and so has no address, not sure).
If it’s not a security@ and not specifically listed as a security point of contact it’s fair to ask if it’s the right location for a potentially security-sensitive issue and whether there’s a better one.
these are probably the people more interested in getting someone to sign off on a bug bounty than they are in getting hold of someone technical who might point out that the fact you can right click and edit the HTML to say "HACKED!!" isn't a bug...
When I had an issue with LastPass, the ONLY contact method they listed for support required you to log in and use their help form...
Since I used federated login, only the browser extension was supported -- not website login... So.. I can't log into their website for support, but I have to log into their website for support...
I went through a series of help@ support@ helpdesk@ contact@ and got bounces / "use our web form" responses... I then escalated to the other technical addresses like webmaster@ hostmaster@ until I finally tried to reach out to sales@ for the support issue...
So sometimes people do intentionally write to 'the wrong address' because there's no 'right address' (that's publicly known/available).
Level of effort is roughly a one line openssl command for both encryption and decryption.
* I suppose though one thing I didn't consider is follow up messages or correspondence which using PGP would be easier, if everything is already working in your email client. Although it wouldn't be that difficult to include your public key in the initial message, which could be used for responding.
The workflow i'm thinking of would be encrypting text with the public key of the website/company you are reaching out to, including your public key in the message or if you have a website as a researcher you can provide the instructions of using your public key for them to send you a response. You then send them an email and attached your encrypted correspondence.
When they respond back they use whatever public key you provided in your initial message and you can decrypt their response. This doesn't require your email client to support PGP or have a keyring setup just simple openssl command(s) that work right from the terminal.
> OpenSSL would seem to be the better solution for this. You already have the companies public key from the site certificate and it provides the same confidentiality and integrity since only their private key would be able to decrypt the message.
So a simple form over HTTPS achieves the security researcher -> company part. I agree that it's not sufficient on its own for a confidential two way communication channel, but it can also be achieved over the same technologies. But maybe implementing a messaging platform for the sole purpose of reporting security issues is overkill and could bring its own attack surface.
Having said that, if the problem is the limited PGP infrastructure then I don't see how an ad-hoc protocol that uses the same certificates as the site's HTTPS cert is going to get more adoption. You might as well just put up a messaging dialog at a dedicated security endpoint that is accessible through the browser and let the researcher reuse the same messaging session in some robust way for an effective two-way secure communication channel (login, client certificate).
> Having said that, if the problem is the limited PGP infrastructure then I don't see how an ad-hoc protocol that uses the same certificates as the site's HTTPS cert is going to get more adoption.
This is the only part I would disagree with and it could be subjective based on your experience with certificates. Using openssl wouldn't really be ad-hoc as this is what certificates are for. If the researcher and the website owner already have certificates for their websites there isn't any other additional work as both public keys are available in the form of their site certificates. There are also a number of sites that provide instructions on generating self-signed certificates [1][2][3] as well as encrypting messages with public certs [4][5][6].
Oddly enough when looking for the (3) openssl commands for encrypting a message I came across this site which recommended using GPG for messages[4], however they all pre-suppose that you have everything setup for using GPG which usually isn't the case and using openssl, in my opinion, has reduced friction being as it doesn't depend on being integrated into a web or email client application, you can simply attach the generated encrypted message like any other email attachment.
The infrastructure concern is really the existing public key availability, accessibility and maintenance options for keys. If the public service is unreliable or lacking robustness then both software developers and individuals are less likely to use or integrate the implementation. There are only a few places to upload your pgp key to that are reliable, compared to the existing certificate system. On my last looking there were maybe (3) sites that were reliable[7] and MIT had been flaky for a while, leaving only two.
https://pgp.mit.edu/ https://keyserver.ubuntu.com/ https://keys.openpgp.org/
However, to your initial point I can certainly see a web interface being a better overall solution as the people set to receive these notifications may not be familiar with the command line or terminal interfaces let alone openssl commands.
Thanks for your response I enjoyed thinking through this.
----
References
[1] https://msol.io/blog/tech/create-a-self-signed-ssl-certifica... [2] https://devopscube.com/create-self-signed-certificates-opens... [3] https://www.digitalocean.com/community/tutorials/openssl-ess... [4] https://www.madboa.com/geek/openssl/#how-do-i-simply-encrypt... [5] https://gist.github.com/thinkerbot/706137 [6] https://www.czeskis.com/random/openssl-encrypt-file.html [7] https://superuser.com/questions/227991/where-to-upload-pgp-p...
Don't you think being able to read that disclosure would give the attacker a bit more access to bigcorp's systems than if it was encrypted?
In your proposed situation having access to the director of IT's email account is similar to physical access on a server. The RCE might be another layer of access but its not game changing to what is already available.
We maintain a set of open source tools to easily get you started[2]. If you would like help to have this for your country/government/organisation as well, feel free to contact us.
[0] https://basisbeveiliging.nl/#/metric-progress/NL/municipalit... [1] https://basisbeveiliging.nl/#/maps [2] https://gitlab.com/internet-cleanup-foundation/web-security-...
Also, citizens (or NGOs) can sue entities (including central government) for non-compliance. For example, in 2022, the NGO Urgenda won a case against the Dutch government for not doing enough about climate change (less than needed to comply with international treaties), and now the political landscape is in turmoil because there's no consensus which polluters should stop polluting quite as much.
In practice, the list of standards is just tacked onto procurement procedures. Since governments and contractors love to bicker, a missing security.txt can be something to hit the vendor over the head with (and withhold payment for a month, to make this year's budget).
I was looking into what exactly is need for this but the last link has this in the guide:
>For full installation with everything and anything, check: https://gitlab.com/internet-cleanup-foundation/server/
The link is broken.
edit: W're a small team and we can't allocate the time needed to make that repo decently public atm. For now it's best to drop an email at the adres found here [0] and I'll help you get along.
[1]: https://gist.github.com/captn3m0/4f3da8f07fe884e62bfab3ac856...
Much like how people publish email addresses online using human readable replacements (e.g. AT instead of @) to avoid spam, I'd rather put up a contact page that's easy for humans to find but nontrivial to automate.
That sounds like an excellent way to accidentally filter out serious vulnerabilities. I'm glad you don't work for the vendor that received my urgent, critical (in all caps) unauthenticated remote code execution vulnerability report.
They were very grateful that I reached out and resolved it under 72h.
If it wasn't something close to that, then no, it wouldn't be filtered. If it wasn't obvious, the patterns are trivial, but not "check those two words" level of trivial. You need to apply common sense and adjust for your environment.
I was very glad to have received the info and I think folks such as yourself are doing valuable work.
If you take comments like mine and try to implement them literally, that's stupid and it's on you.
Obviously. >.<
(and indeed many beg bounties are about SPF or DKIM, because whatever automated tools they use to find the low hanging fruit didn't find anything more substantial).
It can basically be assumed that anyone trying to report that didn't do even a basic cursory look at the results. I don't need your automated scan, I have my own nessus deployment and already know what it's going to say.
Don't trust my word for this, have a look at CloudFlares article about this:
"How to protect domains that do not send email"
https://www.cloudflare.com/learning/dns/dns-records/protect-...
No MTA will try to deliver a message that is from or to a domain that has a null record. If you're the sender, your sending MTA might give you an NDR, but receiving infrastructure will just drop it.
Cloudflare actually has a wizard that implements it in addition to the items on the page you linked. And no offense to whoever wrote the CF article, but they are the new kids on the block relative to email.
https://community.cloudflare.com/t/keep-null-mx-in-addition-...
> Null MX does nothing to prevent spoofing. It is just to signal to mail senders that your domain does not receive email.
And I also found multiple other sources that specify that the null record only announces that the domain does not receive email. After some googling I didn't find a single source that shares your explanation.
Obviously, this is opportunistic security, the receiver must support all this, but >99% does.
Historically, 512 bit RSA was somewhat common, and old selectors don't always get removed.
2.5.6. Hiring
The "Hiring" field is used for linking to the vendor's security-related job positions. If this field indicates a web URI, then it MUST begin with "https://" (as per Section 2.7.2 of [RFC7230]).
Hey, I just found a new way to job hunt!Or what? What is the point of even specifying this? It's not like any human or bot is going to ignore the link if it starts with http://
Bricklayers don't avoid un-built houses.
But for most jobs, where you aren't going to be able to affect massive change, you'll want the security culture not to bad/nonexistent.
Because you don't want a man in the middle modifying the job ad to say "must be 7 feet tall to apply"?
And finally because security should be the default unless there is a good reason to do it some other way. It's a bit like having an unpainted car because you're going to drive it in dry places where it won't rust... Unless there is a benefit to an unpainted car, most people take the painted car...
It does make sense.
"How could you possibly have standards" isn't a very interesting conversation yet here we are having it at scale.
You don't have a threat model, do you?
Btw, if you want to start with "http://" just declare it to be not-a-web URI. Eg say it's a git URI.
I'm not sure where "web URI" is defined, but I am pretty sure that a Git URI uses "git://" and Git-via-http is still a "web URI" method.
HTTPS is probably the only protocol which is guaranteed to show content from the claimed source.
So yeah, it is important that this part of the RFC specify a difference between "web" and "non-web" URIs, because the authors of security.txt are free to use any URI method that makes sense.
Assuming someone who works at the company would have easier access to someone who has access to the server in question…
My hope is that one of these days, I will stumble upon a company that hides secret job openings in their .plan files - accessible through the finger protocol (https://en.wikipedia.org/wiki/Finger_(protocol)) :)
See: "finger @lsc.mit.edu" and "finger seattle@graph.no" for some examples.
I don't care if they receive spam, I just want them to tell me how to contact them. Give me a captcha form, a phone number, an AOL Instant Messenger handle, I don't care.
Somewhat ironically:
https://www.digitaltrustcenter.nl/security.txt
The website of the Digital Trust Center returns 404
So, the URL becomes: https://www.digitaltrustcenter.nl/.well-known/security.txt
This returns a 200 (via 302).
Devs need to stop demanding other devs jump through pointless hoops.
Don't litter your web root either ;)
Notre langage est parfait
"nouvelles de pirates", sûrement? :)
Edit: Huh, apparently "stop" or the equivalent in the local language are allowed by the treaty. Didn't know that. https://en.wikipedia.org/wiki/Stop_sign
Yes, but this is the only octagonal sign in the treaty, I suppose specifically so it's meaning could be inhered without knowing local language
redirects to:
https://www.ncsc.nl/.well-known/security.txt
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
# Domeinen van de Rijksoverheid kunnen met een 302 redirect verwijzen naar
# het centrale bestand op https://www.ncsc.nl/.well-known/security.txt
# omdat het NCSC het centrale meldpunt is voor kwetsbaarheden en incidenten
# voor de Rijksoverheid.
#
# Dutch central government domains can redirect to the central file located
# at https://www.ncsc.nl/.well-known/security.txt with a 302 redirect,
# because NCSC-NL is the central point of contact for vulnerabilities and
# incidents for the Dutch central government.
Expires: 2024-01-31T22:59:00.000Z
Canonical: https://www.ncsc.nl/.well-known/security.txt
Policy: https://www.ncsc.nl/contact/kwetsbaarheid-melden
Policy: https://english.ncsc.nl/contact/reporting-a-vulnerability-cvd
Contact: https://www.ncsc.nl/contact/kwetsbaarheid-melden
Contact: https://english.ncsc.nl/contact/reporting-a-vulnerability-cvd
Contact: mailto:security@ncsc.nl
Encryption: https://www.ncsc.nl/contact/pgp-key
Preferred-Languages: nl, en
Acknowledgments: https://www.ncsc.nl/wall-of-fame
Hiring: https://www.werkenvoornederland.nl
-----BEGIN PGP SIGNATURE-----
Version: Encryption Desktop 10.4.2 (Build 1298)
Charset: utf-8
wsDVAwUBY+9c0P4Vd0fJc7lbAQpUmQwAwZ1vWyI1VKBChsciufRcvxy5zzMZMx6v
YjD5CXuDV4GL+tRl7wClnQO023e3ZChTH69y7O3veS+5/zNVUvpyqJfS8pNzG0pA
B4vea3fQ41t5UpCVYvPopIFiT1oeQJA9w4NqBD2+2jW5lS5L8k9xz192gWJvhxq8
mTukJXYDiJLzxKbUMHEG2GNaMeoRj5Pvgr8buzQELP0VZHfzF05Hr6NOoWvS6SRX
KGW6rgg6fEUPcMTjBqn6gL/w82FXwrh93AmYkP/sBWP4It3NpbiNuazc5iynhhih
+ZlfzsFV6agF4MZR0IQZ6X4jsCxKFrPIWW51/7W+PIDkqy6za/bDjDeiinid0HOC
2rro6N9FXSyxHz9nteMppd+YMTCt+Z67HONsssR+7ojxORGOs0rTcjUucaVikFJQ
wAls9p+vuIzFRViQaXe3Nndspr1cCIu4z3ZfdkcWREQP7acOjNgbmeQOlH4jnYWq
lNVMWzOncidAWM0nXcuYTjZagRAagthF
=yC4A
-----END PGP SIGNATURE-----
Version: Encryption Desktop 10.4.2 (Build 1298)
Charset: utf-8
wsDVAwUBY+9c0P4Vd0fJc7lbAQpUmQwAwZ1vWyI1VKBChsciufRcvxy5zzMZMx6v
YjD5CXuDV4GL+tRl7wClnQO023e3ZChTH69y7O3veS+5/zNVUvpyqJfS8pNzG0pA
B4vea3fQ41t5UpCVYvPopIFiT1oeQJA9w4NqBD2+2jW5lS5L8k9xz192gWJvhxq8
mTukJXYDiJLzxKbUMHEG2GNaMeoRj5Pvgr8buzQELP0VZHfzF05Hr6NOoWvS6SRX
KGW6rgg6fEUPcMTjBqn6gL/w82FXwrh93AmYkP/sBWP4It3NpbiNuazc5iynhhih
+ZlfzsFV6agF4MZR0IQZ6X4jsCxKFrPIWW51/7W+PIDkqy6za/bDjDeiinid0HOC
2rro6N9FXSyxHz9nteMppd+YMTCt+Z67HONsssR+7ojxORGOs0rTcjUucaVikFJQ
wAls9p+vuIzFRViQaXe3Nndspr1cCIu4z3ZfdkcWREQP7acOjNgbmeQOlH4jnYWq
lNVMWzOncidAWM0nXcuYTjZagRAagthF
=yC4A
-----END PGP SIGNATURE-----I’ve already included everything a user would want for a complete website, including a robots.txt, sitemaps, perfect Lighthouse seo score, rich snippets, and a ton of other stuff.
Should I consider adding an auto generated security.txt file along side the robots.txt file for users?
Do you’all think a security.txt file is something users would want in 2023? Or would it look stupid and confusing?
I suspect most users who use a site generator would be happy with more "automagic"—especially if it were 1. easy to config or turn off and 2. addressing important things like security-related contact info, or how a web-scraping bot should respect your domain.
Also: "simple" generators often veer into "complicated" territory by adding crap features. Elegant appears to lack crap features; IMO, adding *.txt would not complicate or confuse.
We have started with a basic clean foundation, and are now in the process of building up all the essential features an app owner would want, and none of the crap they wouldn't lol.
I appreciate your feedback!
I have opened an RFC and will be pushing this idea through the feature pipeline ASAP: https://github.com/orgs/elegantframework/discussions/55
I may put out a few feelers, and put this topic up for a RFC and discussion on GitHub.
It seems like an interesting new little web thing, and is super easy to implement.
I just share the same concerns as others have mentioned with bots and spammers misusing this file.
Regulations are a hit or miss (e.g the cookie notification rules have some good parts but I wonder if there isn't any room for improvement in the current "visiting a website for 10 seconds and clicking whatever the big button is so that I see the content in interested in" status quo.
This one is not obtrusive, easy to implement (though only developers care about this part) and solves the problem.
The linked article explicitly mentions that they _hope_ private companies will adopt this standard; but there's no mention of any regulatory requirement on them.
Websites choose to display that banner, they don’t have to.
Then I remembered the armistice between yaml and toml and how I’m still confused about why the python community was torn asunder.
(lol. One looked like python to devs on mac/linux, and one looked like python to windows users who used INI a lot. Only a true scotsman uses plaintext, HTTP-style)
Most used webpages: https://www.similarweb.com/top-websites/germany/
Perhaps the sites have something on there.
Both Facebook and Apple also use [URL]/.well-known/security.txt
The contact on Facebook don't work: https://www.facebook.com/whitehat/report/
2017: https://news.ycombinator.com/item?id=15416198 (145 comments)
2019: https://news.ycombinator.com/item?id=19151213 (55 comments)
2021: https://news.ycombinator.com/item?id=26455493 (167 comments)
They have more information at https://gds-way.cloudapps.digital/standards/vulnerability-di... where they strengthen the advice by saving:
As per the current policy, we only accept reports from services that have a security.txt file pointing to the security policy.So if their security.txt doesn't point to a service someone finds an issue with they won't respond?
I take it as a way to say "don't even think of touching the services that don't have the security.txt file".
Without forgetting that a UK 'should', is considerably different to a US 'should'.
.nl? - I'll let you guys decide.
Note that you can test if a website has valid security.txt with the Internet.nl test tool: https://en.internet.nl/article/securitytxt-test-toegevoegd/
---
Contact: https://www.amsterdam.nl/privacy/informatiebeveiliging-gemee...
Expires: 2024-02-01T10:00:00.000Z
Acknowledgments: https://www.informatiebeveiligingsdienst.nl/?s=hall+of+fame
Preferred-Languages: en,nl
---
rfc9116
2.5.1. Acknowledgments
The "Acknowledgments" field indicates a link to a page where security researchers are recognized for their reports. The page being referenced should list security researchers that reported security vulnerabilities and collaborated to remediate them. Organizations should be careful to limit the vulnerability information being published in order to prevent future attacks.
If this field indicates a web URI, then it MUST begin with "https://" (as per Section 2.7.2 of [RFC7230]).
404
but this one does exist https://www.ncsc.nl/.well-known/security.txt
https://mijn.overheid.nl/.well-known/security.txt
which redirects to the second one.
* well-run organizations won't benefit from doing this, since their security teams were already easy to reach
and
* poorly-run organizations won't become any better by doing this, because one text file doesn't fix a broken org
2. Contact the website maintainer to report it
3. Get swatted, harrassed by cops, sued, and jailed over it.
No thank.