News for hackers. Stuff that matters.
Re:.INTERNAL is now reserved for private-use applications by qmarchi on Saturday August 10, 2024 @01:04AM (#41207432)
There's a larger risk that if someone breaches a system with a wildcard cert, then you can end up with them being able to impersonate _every_ part of your domain, not just the one application.
Re:.INTERNAL is now reserved for private-use applications by politelemon on Saturday August 10, 2024 @03:07AM (#41207849)
It's the opposite - there is a risk, but not a larger risk. Environment traversal is easier through a certificate transparency log, there is almost zero work to do. Through a wildcard compromise, the environment is not immediately visible. It's much safer to do wildcard for certs for internal use.
Re:.INTERNAL is now reserved for private-use applications by ixfo on Saturday August 10, 2024 @05:12AM (#41208276)
Environment visibility is easy to get. If you pwn a box which has foo.internal, you can now impersonate foo.internal. If you pwn a box which has *.internal, you can now impersonate super-secret.internal and everything else, and now you're a DNS change away from MITM across an entire estate.

Security by obscurity while making the actual security of endpoints weaker is not an argument in favour of wildcards...

Re:.INTERNAL is now reserved for private-use applications by eru on Saturday August 10, 2024 @06:56AM (#41208648)
Can't you have a limited wildcard?

Something like *.for-testing-only.company.com?

Re:.INTERNAL is now reserved for private-use applications by kevincox on Saturday August 10, 2024 @07:17AM (#41208724)
Yes, but then you are putting more information into the publically logged certificate. So it is a tradeoff between scope of certificate and data leak.

I guess you can use a pattern like {human name}.{random}.internal but then you lose memoribility.

Re:.INTERNAL is now reserved for private-use applications by 8organicbits on Saturday August 10, 2024 @07:40AM (#41208788)
I've considered building tools to manage decoy certificates, like it would register mail.example.com if you didn't have a mail server, but I couldn't justify polluting the cert transparency logs.
Re:.INTERNAL is now reserved for private-use applications by lacerrr on Saturday August 10, 2024 @07:44AM (#41208805)
Made up problem, that approach is fine.
Re:.INTERNAL is now reserved for private-use applications by qwertox on Saturday August 10, 2024 @10:35AM (#41209814)
I issue a wildcard cert for *.something.example.com.

All subdomains which are meant for public consumption are at the first level, like www.example.com or blog.example.com, and the ones I use internally (or even privately accessible on the internet, like xmpp.something.example.com) are not up for discovery, as no public records exist.

Everything at *.something.example.com, if it is supposed to be privately accessible on the internet, is resolved by a custom DNS server which does not respond to `ANY`-requests and logs every request. You'd need to know which subdomains exist.

something.example.com has an `NS`-record entry with the domain name which points to the IP of that custom DNS server (ns.example.com).

The intranet also has a custom DNS server which then serves the IPs of the subdomains which are only meant for internal consumption.

Re:.INTERNAL is now reserved for private-use applications by brewmarche on Saturday August 10, 2024 @12:24PM (#41210531)
This is the DNS setup I’d have in mind as well.

Regarding the certificates, if you don’t want to set up stuff on clients manually, the only drawback is the use of a wildcard certificate (which when compromised can be used to hijack everything under something.example.com).

An intermediate CA with name constraints (can only sign certificates with names under something.example.com) sounds like a better solution if you deem the wildcard certificate too risky. Not sure which CA can issue it (letsencrypt is probably out) and how well supported it is

Re:.INTERNAL is now reserved for private-use applications by qwertox on Saturday August 10, 2024 @03:03PM (#41211498)
I'm "ok" with that risk. It's less risky than other solutions, and there's also the issue that hijacked.something.example.com needs to be resolved by the internal DNS server.

All of this would most likely need to be an inside job with some relatively big criminal energy. At that level you'd probably also have other attack vectors which you could consider.

Re:.INTERNAL is now reserved for private-use applications by Helmut10001 on Sunday August 11, 2024 @01:28AM (#41214165)
This is also my thinking.. if someone compromises your VM that is responsible for retrieving wildcard certs from let's encrypt, then you're probably busted anyway. Such a machine would usually sit at the center of infrastructure, with limited need to be connected to from other machines.
Re:.INTERNAL is now reserved for private-use applications by brewmarche on Sunday August 11, 2024 @11:53AM (#41217059)
Probably most people would deem the risk negligible, but it’s still worth to mention it, since you should evaluate for yourself. Regarding the central machine: the certificate must not only be generated or fetched (which as you said probably will happen “at the center”) but also deployed to the individual services. If you don’t use a central gateway terminating TLS early the certificate will live on many machines, not just “at the center.”
Re:.INTERNAL is now reserved for private-use applications by Helmut10001 on Monday August 12, 2024 @10:41PM (#41231672)
You are absolutely right. And deployment can be set up to open up additional vulnerabilities and holes. But there are also many ways to make the deployment quite robust (e.g. upload via push to a deploy server, distribute from there). ... and just by chance, I've written a small bash script that helps to distribute SSL certificates from a centrally managed "deploy" server 8) [1].

[1]: https://github.com/Sieboldianus/ssl_get