Live data from Hacker News

Security.txt

securitytxt.org

61–70 of 148 posts

Re: Security.txt

#61
Heh I thought the domain ending was "txt" and was trying to register domain with ".txt" before I relised that it doesn't exist and that it's securitytxt.org and not secuirty.txt ! Silly me

Re: Security.txt

#62

https://securitytxt.org/.well-known/security.txt Gives a 404 but https://securitytxt.org/security.txt Has the file... maybe they should either follow their own advice or update the text of the advisory? Like this it appears a bit inconsistent.

Also, the contact is a twitter instead of an email, doesn't that break the whole reason for this, which is being able to automate it to some extent?

Re: Security.txt

#63
post #59
post #43

Earlier quoted context omitted.

Ahhh. That explains why lets encrypt does it!

There's also Netscape's (?) email autodiscover mechanism with a .xml file served from there that describes how to do POP/IMAP/SMTP etc. However, despite /.wellknown/ being a bit of a standard, you'd be amazed at how many mechanisms you have to support to get autodiscover to work for all email clients. As it turns out SRV DNS records are also a bit of a standard for publishing pointers to services, and TXT records, an…

SRV records are extremely popular outside of the web. I really wish they would get more adoption. It's such a clean solution. We could have avoided the entire need for SNI if browsers supported service records.

Re: Security.txt

#64
I don't think this is fully baked.

Most importantly: there are no formal definitions for what these disclosure terms mean, the distinctions between them are not unimportant, and the most important distinctions have nothing at all to do with "disclosure".

To me, as a working professional in this field, "disclosure: full" informs me that if I report a vulnerability in your service, you'll publish some sort of public advisory, or agree to me doing so, on my own timeline, regardless of when you're fully patched and regardless of whether you've confirmed or triaged the bug.

Is that exactly your understanding of "disclosure: full"? If not, there's your first minor problem.

But there's more important problems. Actually, I don't need any permission whatsoever to publish a vulnerability I find in your site, nor is there any real norm in the infosec community that I shouldn't ("responsible disclosure" is a meme propagated by vendors who want to control independent researchers). You can state your preference that I coordinate with you ("coordinated disclosure" is the researcher-friendly way to write "responsible disclosure"), but you can't dictate that to me --- and the suggestion that you could is presumptuous and rude.

But that's still not the big problem. The BIG problem is that disclosure policy has nothing to do with whether you can test.

There is a widespread belief on the US Internet that light web application testing of SaaS products is allowed. It is very much not. Without explicit permission to test a website I put on the Internet, your doing so violates (and probably should violate!) CFAA, and in some states also state statutes. That goes not just for disruptive testing, like seeing if you can break a SQL query, but also for stuff that most testers believe is harmless, like light XSS testing. I can't tell you how many times an XSS test vector "broke" a site for a client, for instance when it got cached as a "recent search" and displayed, in a DOM-breaking way, to every user on the home page for the site. Bring down a site like that without permission, and even if it says "disclosure: full", you might be civilly liable for the downtime.

I think the "disclosure" field here is thus pretty ill-advised. It advertises a policy that isn't super useful for researchers to know, and doesn't define the most important policy, which is "am I allowed to test this site and what are the rules of engagement for doing so".

What does that leave us with? A PGP key and the name of your security email address. The PGP key is useful, but the contact address should just always be "security@" anyways.

There's really no need for a standard format for this stuff. Just create a "security.html" or whatever that reminds people to send mail to security@, publishes your PGP (note to Symantec: public key) key, and gives people permission to test the site.

Update

One of the authors DM'd me to say they're removing "Disclosure" from the next version of the draft, which is I think the right move.

Re: Security.txt

#65

https://securitytxt.org/.well-known/security.txt Gives a 404 but https://securitytxt.org/security.txt Has the file... maybe they should either follow their own advice or update the text of the advisory? Like this it appears a bit inconsistent.

Per the Draft RFC `security.txt` is meant to be akin to `robots.txt`, in that it's at the root of the path. So yeah, it's a bit inconsistent.

That is going to cause some problems with a very large percentage of webservers being configured to never allow the fetching of any dotfiles to avoid accidentally exposing stuff that wasn't meant to be in the web tree in the first place.

Re: Security.txt

#66
post #15

If you're considering this, please consider responsible disclosure steps. Here are ones I use with consulting clients. https://github.com/joelparkerhenderson/responsible_disclosur...

Please consider replacing the term "responsible disclosure" with "coordinated disclosure", and revise your steps accordingly. Non-coordinated disclosure isn't necessarily "irresponsible", and the suggestion that it is is frowned upon among serious testers, which are presumably the ones you want to attract with disclosure policy.

And it's worth remembering that any kind of disclosure "policy" is a request for a favor from the researcher, so it's good to word things accordingly. You wouldn't generally ask for a concession (like honoring an embargo on publicly reporting a finding you took time to generate) right after also "asking" the reporter to report "in good faith".

Re: Security.txt

#67
Good luck getting this adopted. A couple of months ago I was trying to responsibly disclose the complete exposure of every customer's name, email address, phone number and the last four digits of their credit card to a public QSR company that allows online orders. It was straightforward enough that I found it passively while trying to login.

It took over a week of me searching the website for a security page, trying to contact support on Twitter, emailing security addresses that turned out to be undeliverable, looking through my network for a contact, etc. Someone with a better network than me finally put me in touch with the right person in the security org, and the first response I received was, essentially, "Are you trying to sell us something? This seems manipulative. Why didn't you email our [undeliverable] address?"

As far as I'm aware, the vulnerability still hasn't been resolved. Here are the problems I see:

1. I don't know if this is a good implementation of this idea in the first place - how does this handle liability? I agree with what tptacek mentioned in this thread already: this seems underspecified, and companies looking to adopt this will want to have specific assurances with regards to liability and what's allowed. What exactly does "Disclosure Type: Full" mean?

2. If a company is not already in the tech trendy group that like to host security pages and use bug bounties, this is probably not even going to be on their radar. What is different about this that will appeal to them? How do you get a large, faceless organization which regards its security organization as more of a risk/compliance/continuity division than a technical software security division to adopt this standard?

To be clear, as someone who has gone through this song and dance several times, I absolutely would like to see improvements. But I don't know that this is the best way to do it. A more realistic standard might be a central tracker that maintains a list of key security contacts and their email addresses at various organizations. There are already lists like this floating around on GitHub, but they tend to be extremely out of date. Other than that it would be helpful to try and standardize a /security.html page with details about who and where to contact (instead of, say, a page that assumes every customer looking for a security contact mistakenly believes their accounts have been "hacked").

Re: Security.txt

#68
post #28

Earlier quoted context omitted.

Yeah, I was looking for the same. All the draft [1] says is: 2.5. Disclosure: Specify your disclosure policy. This directive MUST be a disclosure type. The "Full" value stands for full disclosure, "Partial" for partial disclosure and "None" means you do not want to disclose reports after the issue has been resolved. The presence of a disclosure field is NOT permission to disclose vulnerabilities and explicit permissi…

Explicit permission must be saught (sic)? How does that work?

It doesn't even make sense if you assume the terms are defined, because disclosure obligations are bilateral. If I'm reporting a bug to your site because I've found a new ImageMagick vulnerability, it is more likely that I the reporter want an embargo from you the site operator than the other way around.

Re: Security.txt

#69
post #51

Earlier quoted context omitted.

A redirect to LinkedIn definitely isn't a proper implementation.

I agree. It was meant to be a bit... cheeky. Honest question though, is your issue with the fact that LinkedIn isn't plain-text, or the nature of the information that LinkedIn provides?

Neither. If any of us curl/wget/whatever that file, we gain no usable, plain text, human information. We then have to, manually, notice the redirect, take a manual action to follow up, and then those two further objections would apply. Why implement a text file spec that doesn't serve a text file? Even if all your text file contained was "Please see http://linkedin.com/example” it would be a correct implementation.

Re: Security.txt

#70
This is just "feel-good" bullshit that doesn't actually solve any real problem.

In my life, I have only reported two different vulnerabilities to two different vendors.

One of them didn't care at all. They were transmitting usernames and passwords in plaintext and I actually showed one of their engineers this, live, in person, and he just shrugged.

The other one told me something to the effect of "yes, this is very serious. We'll look into it right away" and actually fixed it... 3 years later.

Your biggest hurdle isn't reporting vulnerabilities. That's the easy part.

The biggest hurdle is getting someone to care.

Post reply on HN