Computerbeveiliging - Hoe je bad guys buiten de deur houdt

Domeinnamen scannen o.b.v. certificaat?

20-07-2020, 21:00 door Anoniem, 21 reacties
Er zijn sites waarop je domeinnamen kan zoeken, je zoekt dan bijvoorbeeld op "appelmoes" en krijgt dan appelmoes123.nl, appelmoes.com en appelmoes.online. Hoe werken deze indexeringsservices? Veel TLD eigenaren (waaronder SIDN) geven zone files niet zomaar uit handen. Scannen deze zoekmachines de hele ipv4 range om domeinnamen uit certificaten te lezen of hoe werkt dit? Is dat zoiets als curl -vvI https://1.2.3.4/?
Reacties (21)
21-07-2020, 17:49 door Anoniem
Daarvoor wordt gebruikt gemaakt van het dns en WHOIS protocol.
Re: https://dnsspy.io/scan
Ook voor sub-domeinen: https://securitytrails.com/blog/subdomain-scanner-find-subdomains

J.O.
21-07-2020, 17:51 door [Account Verwijderd]
Volgens mij kunnen dat verschillende bronnen kunnen zijn.

1) Automatisch gegenereerd. Dat lijkt mij veelal gebruikt bij websites waar je een domein kan registreren. Of hij al bestaat of niet kunnen ze eenvoudig controleren.
2) Via zone eigenaar. Het SIDN is er inderdaad erg voorzichtig mee, maar bij andere eigenaren zijn er verschillende routes om die wel te kunnen bemachtigen. Volgens mij krijgen (security)onderzoeks snel toegang, maar dat betekend niet dat je ze ook gelijk publiek op een website kan gebruiken als auto complete.
3) Via DNS queries. Bijvoorbeeld Cisco Umbrella (OpenDNS) verkoopt alle queries door aan derde partijen, hiermee kan je dus ook domeinen vinden die je anders niet had gevonden.
4) Via Certificate Transparancy. Alle publiek uitgegeven certificaten (voor websites) zijn publiek zichtbaar. Maar dat is dus beperkt tot domeinen die ook een website hebben. Zie https://crt.sh/.
5) Via scans. Zoals je al schrijft, het internet af zoeken zoals bijvoorbeeld Censys en Shodan doen. Dan krijg je niet alleen publieke certificaten te zien, ook alle ongeldige/prive certificaten. Eventueel zou je nog alle doorverwijzingen van http sites kunnen doen als dat de parsen is.
21-07-2020, 18:10 door Anoniem
2 scripts

1 script dat wat alternatieve namen genereert op basis van een ruleset en creativiteit van wat marketeers bedenken

2de script wat bijv 20 alternatieven test tegen een SOA record en de bezette domeinen bijv 10 filtert met 10 resultaten van vrije TLDs over als vrij alternatief

Met dig of een NS library in Perl of Python ben je zo klaar. Je hoeft echt geen zonefiles te hebben. Dit kán ook niet want je moet dan live toegang hebben tot de databases. Een domein wat nu vrij is kan over een minuut geregistreerd zijn. Dus via de zonefile manier moet je dus constant refreshen. Zo zal het dus niet gaan... Godaddy heeft echt niet de data van SIDN en die 30 andere CCTLDs en zeker niet in realtime.

Bovendien is een multithreaded Python scriptje die effe 50 of 100 dig soa requests uitvoert heel snel. De aanname is hierbij, geen SOA geen domein.

Ik denk dat het zo werkt?
21-07-2020, 18:13 door Anoniem
Oh wacht
Wat bedoel je met certificaten in deze context?
21-07-2020, 18:27 door MathFox
6) Whois queries.
21-07-2020, 18:32 door Anoniem
Deze vraag is hier al eerder gesteld... met vergelijkbare reacties.
Ik kan em niet meer terugvinden, wellicht iemand anders?
21-07-2020, 19:25 door Anoniem
Het is mogelijk om DNS (root-) directories te clonen.

Wanneer je dit dagelijks doet, kun je het verschil bepalen en daarmee zien welke domeinen zelfs zijn vrijgekomen. Vroeger zelf gedaan toen ik bij een webhoster werkte.
21-07-2020, 20:04 door Anoniem
Door MathFox: 6) Whois queries.

Die zijn rate limited of ingeperkt. Overal anders geregeld. Om leegtrekken van databases te voorkomen.

Dig/ns queries zijn onbeperkt uit te voeren. Een zone bestaat niet, dan is die in 99.9% van de gevallen ook niet geregistreerd.
De uitzondering is een domein zonder nameservers maar welke RIR laat dit nog toe?
21-07-2020, 20:07 door Anoniem
Ik heb de masterzonefile van SIDN eens gekopieeerd. Toen had ik alle .nl domeinen in omloop.

Ze waren vergeten een slotje te zetten op de 2de ns. Die stond wagewijd open.

In de tijd dat de domeinen 10x zo duur waren en SIDN lidmaatschap nog heel speciaal was.
21-07-2020, 21:40 door Erik van Straten
Door Anoniem: Deze vraag is hier al eerder gesteld... met vergelijkbare reacties.
Ik kan em niet meer terugvinden, wellicht iemand anders?
Bedoel je deze? https://www.security.nl/posting/644789/subdomain+enumeration+op+wordpress+multisite
21-07-2020, 21:51 door Anoniem
Door Erik van Straten:
Door Anoniem: Deze vraag is hier al eerder gesteld... met vergelijkbare reacties.
Ik kan em niet meer terugvinden, wellicht iemand anders?
Bedoel je deze? https://www.security.nl/posting/644789/subdomain+enumeration+op+wordpress+multisite
Ja dat was em.... niet dezelfde vraag maar wel "hoe kunnen ze nou alle domeinen weten".

Overigens begrijp ik niet helemaal of de originele poster nou verbaasd was dat er een zoekmachine zou zijn die alle
domeinen zou weten, of dat ie als ie ergens bij een provider bijv security.nl wil registreren dat ding dan binnen een seconde
weet te melden dat security.nl bezet is maar security123.nl wel beschikbaar. Want daar voor hoef je natuurlijk geen
lijst van gebruikte/beschikbare domeinen te hebben.
22-07-2020, 00:30 door Anoniem
Niet vergeten dat DNS een publiek systeem is. Alle domeinnamen zijn op te vragen.
22-07-2020, 11:45 door Anoniem
Door Anoniem: Niet vergeten dat DNS een publiek systeem is. Alle domeinnamen zijn op te vragen.
Je kunt wel opvragen of een domein bekend is, maar je kunt (normaal gesproken) geen lijst van bekende domeinen
opvragen bij een DNS server. Tenzij die zonetransfer ondersteunt, maar dat komt niet vaak voor op wat hogere levels.

Echter wat dus wel kan is een resolver draaien voor een grote groep gebruikers, en loggen welke domeinen daar
opgevraagd worden. En vervolgens die informatie verkopen. Dan krijg je nog steeds geen lijst van alle domeinen,
maar alleen degenen die die groep gebruikers ooit opvragen. Echter daarmee kun je wel domeinen vinden die je
niet puur uit DNS kunt halen als gebruiker. Zie de 2e reactie.
23-07-2020, 10:01 door Anoniem
Certificate Transparency logs. Bevatten alle domeinen van alle ooit uitgegeven SSL certificaten
23-07-2020, 10:36 door Anoniem
Door Anoniem:Je kunt wel opvragen of een domein bekend is, maar je kunt (normaal gesproken) geen lijst van bekende domeinen opvragen bij een DNS server. Tenzij die zonetransfer ondersteunt, maar dat komt niet vaak voor op wat hogere levels.
In uitzonderlijke gevallen kan je, bij het gebruik van DNSSEC en NSEC(3) wel gebruik maken van NSEC walking. Het gebruik van NSEC3 moet dat lastiger maken en enkele providers (bijv. Cloudflare) maken gebruik van 'white lies' waardoor dit helemaal niet meer mogelijk is.

In de praktijk als pentester heb ik hier overigens nog nooit gebruik van gemaakt. Certificate Transparancy is vaak voldoende om publieke sites te vinden.
23-07-2020, 10:57 door Anoniem
Door iatomory: Volgens mij kunnen dat verschillende bronnen kunnen zijn.

1) Automatisch gegenereerd. Dat lijkt mij veelal gebruikt bij websites waar je een domein kan registreren. Of hij al bestaat of niet kunnen ze eenvoudig controleren.
2) Via zone eigenaar. Het SIDN is er inderdaad erg voorzichtig mee, maar bij andere eigenaren zijn er verschillende routes om die wel te kunnen bemachtigen. Volgens mij krijgen (security)onderzoeks snel toegang, maar dat betekend niet dat je ze ook gelijk publiek op een website kan gebruiken als auto complete.
3) Via DNS queries. Bijvoorbeeld Cisco Umbrella (OpenDNS) verkoopt alle queries door aan derde partijen, hiermee kan je dus ook domeinen vinden die je anders niet had gevonden.
4) Via Certificate Transparancy. Alle publiek uitgegeven certificaten (voor websites) zijn publiek zichtbaar. Maar dat is dus beperkt tot domeinen die ook een website hebben. Zie https://crt.sh/.
5) Via scans. Zoals je al schrijft, het internet af zoeken zoals bijvoorbeeld Censys en Shodan doen. Dan krijg je niet alleen publieke certificaten te zien, ook alle ongeldige/prive certificaten. Eventueel zou je nog alle doorverwijzingen van http sites kunnen doen als dat de parsen is.

Goede reactie!
23-07-2020, 12:26 door Anoniem
Weet iemand ook hoe je in je lokale netwerk kunt scannen op alle intranet sites die je hebt om te kijken wanneer certificaten verlopen? En dat je dit in een fatsoenlijk overzicht krijgt?
23-07-2020, 22:28 door Anoniem
Ook SIDN biedt aan bedrijven dit gewoon aan.
Heet domeinbewakingsservice.

Maar ze zijn - gelukkig - dus wel veel meer privacygericht dan andere TLDs.

Random sites zullen die data dus niet snel gebruiken, maar pakken Crt.sh als bron.
24-07-2020, 00:38 door Anoniem
Door Anoniem: Weet iemand ook hoe je in je lokale netwerk kunt scannen op alle intranet sites die je hebt om te kijken wanneer certificaten verlopen? En dat je dit in een fatsoenlijk overzicht krijgt?

Wat dacht je van een nmap op poort 443 (of de poorten die gebruikt worden) en dan vervolgens de certificaten checken? Kan allemaal worden geautomatiseerd met een beetje fantasie en vrij beschikbare tooling.
24-07-2020, 08:02 door Anoniem
Door Anoniem: Weet iemand ook hoe je in je lokale netwerk kunt scannen op alle intranet sites die je hebt om te kijken wanneer certificaten verlopen? En dat je dit in een fatsoenlijk overzicht krijgt?

Je DNS beheerder vragen om de zone file.

Als je dat niet kunt ben je waarschijnlijk niet legitiem bezig.
24-07-2020, 11:11 door Anoniem
Door Anoniem:
Door Anoniem: Weet iemand ook hoe je in je lokale netwerk kunt scannen op alle intranet sites die je hebt om te kijken wanneer certificaten verlopen? En dat je dit in een fatsoenlijk overzicht krijgt?

Je DNS beheerder vragen om de zone file.

Als je dat niet kunt ben je waarschijnlijk niet legitiem bezig.

Alsof er maar 1 DNS en 1 beheergroep is in een grote organisatie....
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.