A Google Recaptcha hostname
ellenőrzése "be van sütve". Amikor egy felhasználó elküldi a Recpatcha választ, a tartomány, amelyről a választ kapta, érvényesül a tartományok engedélyezőlistáján, amelyet a Recaptcha telepítésekor adott meg.
Ha azonban a Recaptchát több domainnel használja, akkor lehetősége van letiltani a Google alapértelmezett hosztnév
érvényesítését és saját maga kezelni ( https://developers.google.com/recaptcha/docs/domain_validation).
A Google ezt kiemelt figyelmeztetéssel kíséri, miszerint a hostname
érvénytelenítése bármely adott válasz esetén biztonsági rést jelent. De ha figyelembe vesszük, hogy milyen könnyű hamisítani a hostname
-ot, nem látom, hogy ez a valaha milyen fokú biztonságot nyújtott volna.
Egyszerű teszt számomra bebizonyította, mennyire könnyű elcsalni azt a hostname
értéket, amelyet a Google használ a Recaptcha válasz eredetének ellenőrzéséhez:
$ sudo nano / etc / hosts127. 0.0.1 spoofedhostname.com
És amikor egy teszt Recaptcha választ küldtem, az eredmény a következő volt:
{"siker": true, "challenge_ts": "2016-12-24T14: 15: 22Z", "hosztnév": "spoofedhostname.com"}
Miért bántja tehát egyáltalán a hosztnév érvényesítését ?
- A gazdagépnév ellenőrzése nagyrészt haszontalan, tekintve, hogy mennyire könnyű hamisítani.
- Úgy tűnik, hogy ennek köze van ahhoz, hogy megakadályozzuk a támadókat abban, hogy ellopják a nyilvános Recaptcha kulcsot, majd generáljanak egy csomó érvényes Recaptcha választ, amelyeket tárolhatnak, majd felhasználhatnak az érzékeny végpontok elleni támadás automatizálásához (
/ login
,/ reset-password
). Elméletileg ezt fel lehetne használni valamiféle durva erő támadásban, de ennek valójában nincs értelme, tekintve, hogy a válaszjelzők 1 perc után lejárnak. És akkor is manuálisan kell megoldania az összes Recaptchát, amit egyszerűen megtehet a tényleges tartományban. És megint: könnyen megcsalhatják a domainjét, még akkor is, hahosztnév
ellenőrzést végez.
Ez egyszerűen nem teszi lehetővé van értelme számomra, de ha egy Google-termékről van szó, akkor azt kell gondolnom, hogy a biztonsági mérnökeik tudnak valamit, amit én nem.
Mi hiányzik?