Security Professionals - ipfw add deny all from eindgebruikers to any

Cloudflare strict ssl-mode

25-06-2021, 21:31 door Anoniem, 1 reacties
Als ik mijn website achter cloudflare zet heb ik een aantal mogelijkheden voor de configuratie van mijn TLS-traffic.
Een van deze modus is full-mode. Het volstaat op op je eigen backend een self-signed certificaat te plaatsen. Hierdoor is het TLS-verkeer wel gecryped tussen mijn backend en cloudflare maar wel met een self signed certifcaat.
Lekker onderhoudsvrij maar niet ideaal.

Ik wil nu graag strict-mode gebruiken. Op mijn webserver staat nu een geldig letsencrypt certificaat.
Nu is het gelukt, maar nu zie ik beide certificaten van mijn domeinnaam terug komen in de certificate transparency logs. (dus het certificaat dat cloudflare heeft aangevraagd en het certificaat wat ik eerder zelf heb aangevraagd op mijn domein)
Nu kan je dus op basis van de certificaat fingerprint mijn echte endpoint ontdekken. (via b.v. censys.io)

Kortom: Mag ik alleen traffic toestaan op mijn endpoint van cloudflare om scanners buiten de deur te houden of zijn er meer manieren om mijn endpoint te verhullen?
Het enkel toelaten van cloudflare verkeer is voor mijn usecase niet ideaal omdat ik regelmatig andere services benader op dit endpoint vanaf een dynamic ip. ik wil dus bepaalde services ook buiten cloudflare om kunnen benaderen.

Is een alternatieve methode dat als ik mijn endpoint zo configureer dat https connecties direct naar mijn endpoint ip-adres nooit mijn publieke certificaat van mijn domein terug krijgen maar een self-signed certificaat? Ik denk dat het dan niet mogelijk is voor scanners etc om mijn certificaat van mijn domein te achterhalen want dit is dan een andere vhost, alleen cloudflare kan dit dan zien...denk ik.

scenario 1:Cloudflare connect naar mijn domein met hostheader mijndomein.nl, mijn server geeft antwoord met het certificaat wat bij mijn domein hoort. resultaat: strict TLS mode.
scenario 2: Een scanner komt voorbij en connect naar het domein: Cloudflare geeft antwoord en geeft het cloudflare certificaat. resultaat: mijn webserver is niet te achterhalen.
scenario 3: Een scanner/censys connect naar het ip-adres (met zmap ofzo) van mijn endpoint. Mijn endpoint geeft een self-signed certificaat terug als antwoord. Omdat ik niet het certificaat van mijn domein (by default) terug stuur kan de scanner nooit de relatie tussen het ip en mijn domein achterhalen.


Kloppen mijn hypotheses? Kan ik in plaats van het enkel toelaten van cloudflare ip-adressen naar mijn endpoint ook optie 2 gebruiken, een aparte vhost voor mijn domein?

Alvast bedankt voor het antwoord.

Meneer kruidenkaas
Reacties (1)
26-06-2021, 11:47 door Anoniem
Beste heer Kruidenkaas,

Wat je zou kunnen proberen is om een IP-filter in te stellen op je webserver. Al het inkomende verkeer op poort 443 beperk je dan tot cloudflare. Dat wil niet zeggen dat eventueel ander verkeer geblokkeerd (bv. als je APIs van iets zou gebruiken) wordt vanaf dat IP, maar wel dat niemand obv. het certificaat dit systeem gaat vinden. Wel even het certificaat vernieuwen natuurlijk en dan wisselen van IP, want eenmaal publiek geworden blijft dat publiek. Tenzij dat geen probleem is (normale situatie).
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.