For users with public facing services: How does the current explosion of AI-discovered vulnerabilities affect your threat model and willingness to be public facing?
PHP, TLS, etc.. We appear to be facing a tsunami of vulnerabilities being discovered in record time. Further, the window to act on these vulnerabilities has basically closed to zero; hackers' tools now automatically fold the very latest vulnerabilities into their botnets within minutes/hours of discovery. I have always been extremely reluctant to expose any of my services - even with the latest and greatest security tools. My choice to stay totally within the confines of tailscale seems vindicated given this week's news. How are you all taking this?
59 replies
I went the other way this week. Nothing public anymore, and the only thing open on the WAN is the WireGuard port. I lost the easy Jellyfin share links for family and gained sleep. The PHP mess made the call easy.
I moved all my files to one share. At the root of that share is a robot_readme.md file that lists all the contents of my share with a note that says read everything you want, you will anyway.
They left a note that said “nah, bruh, you’re good”.
I guess I’m okay.
This was the final push that convinced me to rebuild my server from scratch! I started doing so 3 weeks ago :D
I was running my containers on a single good old Debian, that I replaced with Proxmox. I set up several VM that don't share anything between them :
I should have done this years ago, but I'm still learning and learning costs time :p
Next I want to hide all of Internet facing services behind an identity provider/application proxy (I don't really know if it is the right way to name it ?) like Authentic to totally block access to any content from unauthorized visitors.
I guess I'll be mostly fine once this is done ^^
Your separation between VMs is exactly what I want to do. But given how I'm still rocking a single truenas machine running all my containers, I've got a quite a bit of setup to do... Like you said, rebuilding everything is a slog.
I have my ops agent constantly checking SBOMs against current CVEs and if something triggers, I get a report with severity and repair options researched. I can then decide how I want it to proceed. I'm much less concerned about internal only services. SBOMs are refreshed after updates for future checks.
I'm re-thinking a few things, mostly moving exposed services onto a VM or two that are on their own VLAN, and don't contain any important data (it would be my website, gameservers like Minecraft, etc..). I might move to podman as well so nothing has a possibility of running as root, docker can run rootless but that setup seems more confusing to me.
I already use a VPN via Wireguard on my router for access to my private services when out of the house, so my changes are just separating the public from the private as much as possible on the server side of things..
Essentially if someone manages to drop a crypto miner or something on my website that's fine, I'll get an alert pretty quickly through Beszel that the server load is high and I can go roll back a backup or whatever. I just want to make sure there's no access to anything else for them.
I only have a VPN endpoint exposed. If I need to access any of my web services I simply VPN in and away I go.
Tailscale is the super easy version of this. Otherwise make sure your containers don’t have root etc. block inter container networking as much as you can. Lots of relatively simple things work unless you’re actually an interesting target.
This
Answering the titular question, why would the advent of AI-found vulnerabilities substantially change one's threat model? Before LLMs, the prospect of an undiscovered vulnerability was non-zero probability then, so what exactly has changed now?
In terms of attacker capabilities, it would be a mistake to solely observe that attackers now have LLMs and conclude that this means the threat landscape has changed. The use of LLMs does not magically create a root escalation where one does not or cannot exist. Part of your threat model should include defense-in-depth mitigations, so that when (not if) an attacker finds a 0-day exploit, they are severely limited in gained functionality on your machines. In the simplest cases, jails or containers serve to keep separate the web-facing processes. VM isolation would be a further step, because an attacked cannot gain machine control without both a software exploit as well as a VM escape route. People hosting services can and should expect that their front line defense will fall, so they better have more defenses in place.
Phrased another way, the people who have done their threats analysis properly and have accepted the residual risk of hosting their own services that face the web, should not really be additionally perturbed by AI advances. This isn't the same caliber of landscape change as would, say, the invention of a cryptographically relevant quantum computer. If the worst thing that can happen to your home IRC server is that it gets flooded by a script kiddie, AI does not mean your server can now burst into flames.
Much like with human hygiene, some basic rules are unusually effective against most threats. The equivalent to washing one's hands is to stay on top of system and software updates. Institutionally funding the organizations (eg PHP Foundation, curl, USA CDC) so they can fix these problems would also help.
We're talking self hosting, not an enterprise setup. Industry best practices and layers of defense mitigation are not realistic expectations for something like a media server that is only intended to be accessed by the owner and maybe a couple other people.
I disagree: self hosting and enterprise are not mutually exclusive. In fact, "enterprise on-prem" is the marketing description for self-hosting. I do not accept any definition of self-hosting that gate-keeps to any degree.
It is incongruous to talk about "only home self-hosting" or "only enterprise on-prem" when it comes to security mitigations, threat modeling, and risk management: it is merely a question of scale.
Sure, the user base for a home setup might be single digits, but the attackers are identically situated: their capabilities do not grow or shrink based on whether they are targeting a bank or a Jellyfin server.
The problem is not the prospect of an undiscovered vulnerability (there is always a vulnerability somewhere) but rather the prospect of a reduced response window.
There's a wide gap of difference between "non-zero probability" (0.0076%) and "non-zero probability" (82.01734%).
If you're dealing in probabilities, that's not threat modeling; it might be in the larger umbrella of risk management though. Defining a threat model means to qualify what sort of attacker you expect to face and what they are assumed to be capable of. An assumption such as "this adversary can send arbitrary packets to the public IP address" is what would be documented in a threat model.
The raison d'etre of threat modeling is to methodically tackle the actual or assumed risks that an attacker can pose against you. It is not an exercise in swinging at shadows, though I wouldn't discourage overstating the capabilities of an attacker, if needing to protect assets like patient info or PII. Doing threat modeling based on "gut feeling" is a recipe for not recognizing risk where it's present and seeing risk when there isn't any.
The fact remains: you cannot squeeze blood from a stone. Even the most sophisticated AI cannot steal PII from a computer that doesn't store PII. Proper threat modeling means you don't put anything on the line that you haven't squared up against the risks, however improbable. For any non-zero concern, a good threat model will discuss its mitigation, whether it will be absorbed, or if it is an open question. For an out-of-scope concern, a good threat model will explicitly state that assumption.
Which is exactly what OP is talking about. 5 years ago if you were only trying to defend against script kiddies, using containers was good enough. But now you have to consider that script kiddies might find container escapes.
My threat model is not changed: I want to serve something and I want to not be busy with "oh suddenly there's
atwo PHP vulnerabilityies. My enemy is the world, but that is not really unchanged from before in a world where there exists capitalism and rent seekers want to collect from us even for breathing. I'm not intended to be unpaid tech support. So I just serve the things with reasonable scopes (under wireguard, or in a borrowed VPS, etc) and let it go. If an automated system manages to find a hole, computers are so fast that it's not going to make a difference if I'm sitting in front of the chair vs enjoying some modicum of social life visiting a friend three cities away.I completely folded all services to the "inside".
I've always treated my home server with public facing services as presumptively compromised. I don't put any data on there I wouldn't want to see become public, and any data I actually care about losing is backed up to the cloud with an append-only key. The NixOS config lives in a git repo not on the server. If something bad happens, I can wipe the machine clean, redeploy the image, restore my backups, and we're back to the status quo.
So, my threat model hasn't changed much!
not at home but i work as a software dev for a very big company you heard of and all we do noe is fix ai found security bugs. hell the stuff i work on isnt that public and we are still fixing. i can only imagine what the team of the public website are handling.
I still do, but I don't host anything on 80 or 443. I use a random large port number, and I've seen zero illegitimate requests in 20 months.
IF there's an active exploit AND it affects a container AND you have a container escape route AND you pick my domain you'd need to statistically try thousands of times to even hit the single open NAT port.
I also practice domain/IP obfuscation in addition to high port:
This eliminates scanning almost completely. They can't find an IP to go with my base domain, first of all. And even if a bot is scanning the IPv4 address space and all the ports and it finds the reverse proxy it can't get past it without knowing a FQDN. I still get the occasional hit from such bots but it's very rare.
Also, all my public services are secured with mTLS (preferably) or at the very least a long key in a custom HTTP header (both enforced at the proxy).
You should also use a default self-signed cert for something generic like "localhost" on your reverse proxy so random IP scan don't see any domain when they hit your IP, but legitimate queries coming through the domain name still see the right cert.
Thank you for sharing this, vey insightful
How do u use a port other than 443 for https. AFAICT all web browsers are pinned to it (for ssl checks I think) and I could never get an actual https connection through an alt port. Maybe I didn't understand it properly.
Edit: I think actually it's the auto cert provisioning workflow. The CA I'm signing against hardcodes port 443 :/
Edit, edit: this was the issue https://caddy.community/t/non-standard-ports-for-https/6916/4
The API based challenges are better since you don't even need to make the site externally accessible to get certificates.
Let's encrypt and similar services support those and for popular registrars (aws, porkbun, etc,) here are existing plugins for caddy, swag (nginx proxy with built in cert support) and a few others.
Yeah, if you use something like Nginx Proxy Manager you can't use the automatic flow, you need to use the token based challenge.
Boo, no idea why acme forces these specific ports. Swapping them seems like a pretty basic obfuscation technique that could help a lot to secure any services.
Edit: actually seems like this might be possible with the dns challenge type. I'm gonna test this out later https://github.com/caddy-dns/porkbun
It is, that's what I had meant by token based challenge lol. You need a DNS API key for your manager to do it directly, it flags a DNS record with a token to validate ownership. I was just calling it out from memory, sorry!
Much appreciated stranger. Hopefully now I can stop exposing the two most attacked ports in existence from my LAN XD.
Hasn't changed much. I have accepted the risk and, for now, the desire to have publicly accessible stuff outweights my lack of desire to deal with the realities of a VPN. I mean, I want to share stuff with others, and I want to be hosting it myself because I have grown to distrust someone else's service... so what else can I do but risk it?
Besides: I expect tailscale or the underlying VPN services to already be a target. I would be surprised if they don't find anything. What then?
If they find anything we fix it, update our services, and move on.
The chances of being hit by a zero-day as a random self-hoster are very small, but anyway if you keep backups and can restore a clean state (and patch your system) you should be good.
The goal is not to have perfect security, it's to mitigate the risks and to handle fallout correctly.
I moved to closing everything down and wireguarding in to home 5 years ago and I'm glad I did. I only expose game server these days which have a different vuln profile.
If/when I open up for Jellyfin/etc, I'll probably run them on a different box to my NAS in a DMZ with strong firewall rules. And use a VPS for anything else that doesn't require NAS storage to reduce blast radius.
Can we go back to late 90s internet yet?
exposure is unchanged. automated patching and upgrades are working. rollbacks, etc are working. minimal attack surface exposed and properly blocking traffic by geography. rotation of keys/passwords as well as short lived rotated TLS certs.
not one of those things alone is a solution, but together can make a solid dent in securing your infrastructure.
I had a public facing jellyfin. I took it down because of that [ai].
Immich and nextcloud are still up.
I'm not saying there is a rational reasoning behind it.
I have HTTP(s) exposed, plus a wireguard port. HTTP points at a traefik gateway running in a kubernetes environment, based on hardened talos and using cilium network policies to isolate and direct traffic. I know that I am not super safe, but given this weeks news I think the only way to be truly safe in terms of cybersecurity is to use paper notebooks, snail mail and a subscription to the local print newspaper and no digital services whatsoever. In other words: how certain can we be that tailscale, or wireguard in general, or any other securit tool isn‘t suddenly at risk? Can we live with that risk? There always was a trade-off you had to make. Unfortunately „just use lets-encrypt, fail2ban and key-auth for ssh“ isn‘t really cutting it anymore.
My public facing server uses a wildcard domain cert plus it's hosted on an uncommon higher port. It only serves static pages. My SSH port is hidden behind a WireGuard connection. I keep it extremely simple because simple is easy to maintain.
If tailscale gets compromised I'm fucked. Otherwise I won't be opening anything else up given my limited experience.
I don't have a public facing website but I was in the process of building one for fun prior to all this.
I completely locked down. Nothing leaves tailscale pretty much. If I do need a public facing site it will be built on other peoples platforms and nothing local.
In my case, building a site would be for fun, not for anything else. AI turning it into a maintenance chore just kills any excitment that used to exist for it. If anything, I'll probably build it on neocities at this point.
Eh between cloudflare blocking everything outside the US and tailscale for privileged control surfaces I'm not super worried.
I'm not worried. I have auto updates on and have a well hardened setup following all the good basic principles. I have had a fully public facing server for years with no issues. My php was patched and updated totally automatically a few hours after the update became available. My web server is extremely low volume traffic and there is hardly any reason for random people to be using it, so chances of somebody attempting something against it at just the right time a vulnerability has been discovered but not patched is very low chance. When a critical vulnerability appears, hackers are going to target the big fish for big wins initially, even so, it takes effort to turn a vulnerability into an actual exploit and deploy it. I could step out my front door and get run over by a bus, but I don't worry about it and stay on doors all day to mitigate the risk.
To be fair, that was before AI was finding all these holes.
To be fair, my server has been public facing for the entire time these ai models have been finding vulnerabilities.
October 2026 AI is drastically better at finding these holes compared to pre 2026 AI. Do you agree?
It seems like your main point is that the threat has not elevated. But the news from this week proves that is wrong, I feel.
Thats exactly what all this is. If the SOTA models find a "critical" vulnerability every month or so, they get a huge shout out in the news and press globally which is some really appreciated and positive free marketing. Yes, ai has changed alot of things, some for the good some for the bad, but i dont feel like online risk has changed massively. AI finds vulnerabilities for milicious actors and cybersec bods quicker and more regularly than pre-ai, but both sides have the same tools so the same improvements, net effect is they cancel each other out. Anybody with serious about there stuff online already has sytems and processes setup to deal with patching stuff immediately. i barely touch my server for maintenance, just check stuff when im bored and make sure everything is doing what it should.
Ai tomorrow better than ai today? Yes, that is true any day of any year. I don't get your point 🤷
A vulnerability was found, that vulnerability was patched. I think it's great news that vulnerabilities are being found and fixed faster than ever. Do you agree?
https://www.ibm.com/think/x-force/ai-vulnerability-discovery
Your head's in the sand, friend.
I have no idea what you are on about. What do you want me to do? Turn the internet off? Lock my doors and not leave the house? Sit here crying and quivering because the world is gonna end? My head is deffo not in the sand, I'm looking out the window at the rain, enjoying my life, looking forward to tomorrow.
I'm not worried about my web server any more today then I was last year. It's a web server, it's not me or my life, yes it how important stuff, but if the world ends it'll be the last thing I think of.
My web server is as safe as it needs to be. Thanks for your concern.
There's a world of possibilities between "public facing server" and "turn the internet off". Like using a VPN or mTLS. Or only connecting when you are at home.
However it sounds like you aren't worried about the increased threat landscape, or at least aren't willing to compromise on your current level of convenience. That is a fair answer to OP's question.
It's really not the publicly disclosed vulnerabilities you need to worry about. Most of those vulnerabilities have existed for years - the recent php thing is supposedly 12 years old. Maybe someone's been out there exploiting it for 12 years.
The people who have sought and exploited vulnerabilities since computers went online don't disclose what they find. They are the people who should be most worried about AI-assisted vulnerability research, because it directly attacks their business model.
10000% correct! I bet the NSA or KGB has had that PHP exploit for close to a decade and they are gutted its finally been patched! There are probably an infinite number of vulnerabilities in currently running servers and clients, a few 100 will already be known and being quietly exploited. Yes, ai will find some completely unknown ones for malicious actors, but it will also find those same ones for cybersec bods, so effectively cancel each other out.
The only thing I have exposed is my VPN, so no change here.
I don't expose much, just an always-on VPN. My HTML only site lives on vps, from which i can cut-and-run anytime. I don't have much need for more, really.
Back when I was working more with raw infosec stuff like packet analysis, etc, I thought surely we would see machine learning in every router to dynamically manage firewalls in such a way that they became foregone conclusions. We don't really have that, but code has sure changed, and you're right, we will see lots more vulns discovered and exploited at a much faster pace.
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:
[Thread #146 for this comm, first seen 23rd Oct 2026, 00:30] [FAQ] [Full list] [Contact] [Source code]
Just like before, I update frequently. Although now I've switched to updating once a month instead of once a week. And I maintain an enforced SELinux configuration and some other tools. That's all. I host quite a lot of services on the internet.