ΠΠ°ΡΠ΅Π½ΡΠ½ΠΎΡΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΠΈΠΌΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π²Π»ΠΈΡΠ°Π½ΠΈΠ΅ Π²ΡΠ· ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈΡΠ΅ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈΡΠ΅ ΠΈΠ»ΠΈ ΡΡΠ»ΡΠ³ΠΈΡΠ΅ ΠΊΠΎΠΈ ΠΊΠΎΠΌΡΠ½ΠΈΡΠΈΡΠ°Π°Ρ ΡΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ°. ΠΠΎΠ»ΠΊΡ Π΅ ΠΏΠΎΠΌΠ°Π»Π° Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡΠ°, ΡΠΎΠ»ΠΊΡ Π΅ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° Π΅ΡΠΈΠΊΠ°ΡΠ½ΠΎΡΡΠ°. ΠΠ²Π° Π²Π°ΠΆΠΈ Π·Π° ΡΠ΅ΠΊΠΎΡΠ° ΠΌΡΠ΅ΠΆΠ½Π° ΡΡΠ»ΡΠ³Π°, ΠΎΠ΄ ΠΎΠ±ΠΈΡΠ½Π° Π²Π΅Π±-Π»ΠΎΠΊΠ°ΡΠΈΡΠ° Π΄ΠΎ Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΈΠ»ΠΈ ΠΌΡΠ΅ΠΆΠ½ΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅.
ΠΠΎΠ±Π°Ρ ΠΏΡΠΈΠΌΠ΅Ρ Π΅ ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° ΠΈΠΌΠΈΡΠ° Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΈ (DNS). DNS ΠΏΠΎ ΠΏΡΠΈΡΠΎΠ΄Π° Π΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½ ΡΠΈΡΡΠ΅ΠΌ, ΡΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈ ΡΠ°Π·Π»ΠΈ ΡΠ°ΡΡΡΠ»Π°Π½ΠΈ Π½ΠΈΠ· ΡΠ΅Π»Π°ΡΠ° ΠΏΠ»Π°Π½Π΅ΡΠ°. ΠΠ° Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ ΠΏΡΠΈΡΡΠ°ΠΏΡΠ²Π°ΡΠ΅ Π΄ΠΎ ΠΊΠΎΡΠ° Π±ΠΈΠ»ΠΎ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ°, ΠΏΡΠ²ΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ° Π΄ΠΎΠ±ΠΈΠ΅ΡΠ΅ Π½Π΅ΡΠ·ΠΈΠ½Π°ΡΠ° IP Π°Π΄ΡΠ΅ΡΠ°.
ΠΠ΅ΠΌΠ° Π΄Π° Π³ΠΎ ΠΎΠΏΠΈΡΠ°ΠΌ ΡΠ΅Π»ΠΈΠΎΡ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΡΠ΅ΠΊΡΡΠ·ΠΈΠ²Π½ΠΎ ΠΏΠΎΠΌΠΈΠ½ΡΠ²Π°ΡΠ΅ Π½ΠΈΠ· βΠ΄ΡΠ²ΠΎΡΠΎβ Π½Π° Π΄ΠΎΠΌΠ΅Π½ΡΠΊΠΈΡΠ΅ Π·ΠΎΠ½ΠΈ, ΡΡΠΊΡ ΡΠ΅ ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°ΠΌ Π½Π° ΡΠ°ΠΊΡΠΎΡ Π΄Π΅ΠΊΠ° Π·Π° Π΄Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°ΠΌΠ΅ Π΄ΠΎΠΌΠ΅Π½ Π²ΠΎ IP Π°Π΄ΡΠ΅ΡΠ°, ΠΏΠΎΡΡΠ΅Π±Π΅Π½ Π½ΠΈ Π΅ ΡΠ°Π·ΡΠ΅ΡΡΠ²Π°Ρ Π½Π° DNS ΠΊΠΎΡ ΡΠ΅ ΡΠ° Π·Π°Π²ΡΡΠΈ ΡΠ΅Π»Π°ΡΠ° ΠΎΠ²Π°Π° ΡΠ°Π±ΠΎΡΠ° Π·Π° Π½Π°Ρ.
ΠΠ½Π°ΡΠΈ, ΠΊΠ°Π΄Π΅ ΡΠ° Π΄ΠΎΠ±ΠΈΠ²Π°ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ°ΡΠ° Π½Π° ΡΠ΅Π·ΠΎΠ»ΡΡΠΎΡΠΎΡ DNS?
- ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΎΡ ΡΠ° Π΄Π°Π²Π° Π°Π΄ΡΠ΅ΡΠ°ΡΠ° Π½Π° ΡΠ²ΠΎΡΠΎΡ ΡΠ΅Π·ΠΎΠ»ΡΡΠΎΡ Π·Π° DNS.
- ΠΠ°ΡΠ΄Π΅ΡΠ΅ ΡΠ° Π°Π΄ΡΠ΅ΡΠ°ΡΠ° Π½Π° ΡΠ°Π²Π΅Π½ ΡΠ°Π·ΡΠ΅ΡΡΠ²Π°Ρ Π½Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ.
- ΠΠ΅ΠΌΠ΅ΡΠ΅ Π³ΠΎ Π²Π°ΡΠΈΠΎΡ ΡΠΎΠΏΡΡΠ²Π΅Π½ ΠΈΠ»ΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π³ΠΎ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈΠΎΡ Π²ΠΎ Π²Π°ΡΠΈΠΎΡ Π΄ΠΎΠΌΠ°ΡΠ΅Π½ ΡΡΡΠ΅Ρ.
ΠΠΈΠ»ΠΎ ΠΊΠΎΡΠ° ΠΎΠ΄ ΠΎΠ²ΠΈΠ΅ ΠΎΠΏΡΠΈΠΈ ΡΠ΅ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈ Π±Π΅Π·Π³ΡΠΈΠΆΠ½ΠΎ ΡΡΡΡΠ°ΡΠ΅ Π½Π° World Wide Web, Π½ΠΎ Π΄ΠΎΠΊΠΎΠ»ΠΊΡ ΠΈΠΌΠ°ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π° Π΄Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°ΡΠ΅ Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π΄ΠΎΠΌΠ΅Π½ΠΈ Π²ΠΎ IP, ΡΠΎΠ³Π°Ρ ΡΡΠ΅Π±Π° ΠΏΠΎΠ²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΎ Π΄Π° ΠΏΡΠΈΡΡΠ°ΠΏΠΈΡΠ΅ ΠΊΠΎΠ½ ΠΈΠ·Π±ΠΎΡΠΎΡ Π½Π° ΡΠ΅Π·ΠΎΠ»ΡΡΠΎΡ.
ΠΠ°ΠΊΠΎ ΡΡΠΎ Π²Π΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π², ΠΏΠΎΠΊΡΠ°Ρ ΡΠ°Π·ΡΠ΅ΡΡΠ²Π°ΡΠΎΡ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΎΡ, ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³Ρ ΡΠ°Π²Π½ΠΈ Π°Π΄ΡΠ΅ΡΠΈ, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ ΠΎΠ²Π°Π° Π»ΠΈΡΡΠ°. ΠΠ΅ΠΊΠΎΠΈ ΠΎΠ΄ Π½ΠΈΠ² ΠΌΠΎΠΆΠ΅Π±ΠΈ ΡΠ΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠΏΠΎΠΆΠ΅Π»Π½ΠΈ Π±ΠΈΠ΄Π΅ΡΡΠΈ ΠΈΠΌΠ°Π°Ρ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ° ΠΌΡΠ΅ΠΆΠ½Π° ΠΊΠΎΠ½Π΅ΠΊΡΠΈΡΠ° ΠΎΠ΄ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈΠΎΡ ΡΠ΅Π·ΠΎΠ»ΡΡΠΎΡ.
ΠΠΎΠ³Π° ΡΠΏΠΈΡΠΎΠΊΠΎΡ Π΅ ΠΌΠ°Π», ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅ΡΠ½ΠΎ Π΄Π° Π³ΠΎ βΠΏΠΈΠ½Π³ΡΠ²Π°ΡΠ΅β ΡΠ°ΡΠ½ΠΎ ΠΈ Π΄Π° Π³ΠΈ ΡΠΏΠΎΡΠ΅Π΄ΡΠ²Π°ΡΠ΅ Π²ΡΠ΅ΠΌΠΈΡΠ°ΡΠ° Π½Π° ΠΎΠ΄Π»ΠΎΠΆΡΠ²Π°ΡΠ΅, Π½ΠΎ Π°ΠΊΠΎ Π΄ΡΡΠΈ ΠΈ Π³ΠΎ Π·Π΅ΠΌΠ΅ΡΠ΅ ΡΠΏΠΈΡΠΎΠΊΠΎΡ ΡΠΏΠΎΠΌΠ΅Π½Π°Ρ ΠΏΠΎΠ³ΠΎΡΠ΅, ΡΠΎΠ³Π°Ρ ΠΎΠ²Π°Π° Π·Π°Π΄Π°ΡΠ° Π²Π΅ΡΠ΅ ΡΡΠ°Π½ΡΠ²Π° Π½Π΅ΠΏΡΠΈΡΠ°ΡΠ½Π°.
ΠΠ°ΡΠΎΠ°, Π·Π° Π΄Π° ΡΠ° ΠΎΠ»Π΅ΡΠ½Π°ΠΌ ΠΎΠ²Π°Π° Π·Π°Π΄Π°ΡΠ°, ΡΠ°Ρ, ΠΈΡΠΏΠΎΠ»Π½Π΅Ρ ΡΠΎ ΡΠΈΠ½Π΄ΡΠΎΠΌ Π½Π° ΠΈΠ·ΠΌΠ°ΠΌΠ½ΠΈΠΊ, ΡΠΊΠΈΡΠΈΡΠ°Π² Π΄ΠΎΠΊΠ°Π· Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΎΡ Π½Π° ΠΌΠΎΡΠ°ΡΠ° ΠΈΠ΄Π΅ΡΠ° Π½Π° Go Π½Π°ΡΠ΅ΡΠ΅Π½Π°
ΠΠ°ΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π΅ΠΌΠ° Π΄Π° ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠ°ΠΌ ΡΠ΅Π»Π°ΡΠ° Π»ΠΈΡΡΠ° Π½Π° ΡΠ΅ΡΠ°Π²Π°ΡΠΈ, ΡΡΠΊΡ ΡΠ΅ ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°ΠΌ ΡΠ°ΠΌΠΎ Π½Π° Π½Π°ΡΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈΡΠ΅.
$ get-closer ping -f dnsresolver.txt -b=0 --count=10
Closest hosts:
1.0.0.1 [3.4582ms]
8.8.8.8 [6.7545ms]
1.1.1.1 [12.6773ms]
8.8.4.4 [16.6361ms]
9.9.9.9 [40.0525ms]
ΠΠ΄Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅, ΠΊΠΎΠ³Π° ΠΈΠ·Π±ΠΈΡΠ°Π² ΡΠ΅Π·ΠΎΠ»ΡΡΠΎΡ Π·Π° ΡΠ΅Π±Π΅, ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ² ΡΠ°ΠΌΠΎ Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π³Π»Π°Π²Π½ΠΈΡΠ΅ Π°Π΄ΡΠ΅ΡΠΈ (1.1.1.1, 8.8.8.8, 9.9.9.9) - Π½Π° ΠΊΡΠ°ΡΠΎΡ Π½Π° ΠΊΡΠ°ΠΈΡΡΠ°ΡΠ°, ΡΠΈΠ΅ ΡΠ΅ ΡΠΎΠ»ΠΊΡ ΡΠ±Π°Π²ΠΈ, ΠΈ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΡΠ΅ΠΊΡΠ²Π°ΡΠ΅ ΠΎΠ΄ Π³ΡΠ΄ΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ Π°Π΄ΡΠ΅ΡΠΈ.
ΠΠΎ, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΠΏΠΎΡΡΠΎΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ Π½Π°ΡΠΈΠ½ Π·Π° ΡΠΏΠΎΡΠ΅Π΄ΡΠ²Π°ΡΠ΅ Π½Π° Π΄ΠΎΡΠ½Π΅ΡΠ°ΡΠ°, Π·ΠΎΡΡΠΎ Π΄Π° Π½Π΅ ΡΠ° ΠΏΡΠΎΡΠΈΡΠΈΡΠ΅ Π»ΠΈΡΡΠ°ΡΠ°...
ΠΠ°ΠΊΠΎ ΡΡΠΎ ΠΏΠΎΠΊΠ°ΠΆΠ° ΡΠ΅ΡΡΠΎΡ, βΡΠ΅Π·Π΅ΡΠ²Π½Π°ΡΠ°β Π°Π΄ΡΠ΅ΡΠ° Π½Π° Cloudflare ΠΌΠΈ Π΅ ΠΏΠΎΡΠΎΠΎΠ΄Π²Π΅ΡΠ½Π°, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° Π²ΠΎ spb-ix, ΡΡΠΎ Π΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ±Π»ΠΈΡΠΊΡ Π΄ΠΎ ΠΌΠ΅Π½Π΅ ΠΎΠ΄ msk-ix, Π½Π° ΠΊΠΎΠ΅ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½Π°ΡΠ° 1.1.1.1.
Π Π°Π·Π»ΠΈΠΊΠ°ΡΠ°, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅, Π΅ Π·Π½Π°ΡΠ°ΡΠ½Π°, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π΄ΡΡΠΈ ΠΈ Π½Π°ΡΠ±ΡΠ·ΠΈΠΎΡ Π·ΡΠ°ΠΊ ΡΠ²Π΅ΡΠ»ΠΈΠ½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠΈΠ³Π½Π΅ ΠΎΠ΄ Π‘Π°Π½ΠΊΡ ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³ Π΄ΠΎ ΠΠΎΡΠΊΠ²Π° Π·Π° ΠΏΠΎΠΌΠ°Π»ΠΊΡ ΠΎΠ΄ 10 ms.
ΠΠΎΠΊΡΠ°Ρ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΈΠΎΡ ΠΏΠΈΠ½Π³, PoC ΠΈΠΌΠ° ΠΌΠΎΠΆΠ½ΠΎΡΡ ΠΈ Π΄Π° Π³ΠΈ ΡΠΏΠΎΡΠ΅Π΄ΡΠ²Π° Π΄ΠΎΡΠ½Π΅ΡΠ°ΡΠ° Π·Π° Π΄ΡΡΠ³ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ http ΠΈ tcp, ΠΊΠ°ΠΊΠΎ ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°ΡΠ΅ Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΈ Π²ΠΎ IP ΠΏΡΠ΅ΠΊΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅Π½ ΡΠ΅Π·ΠΎΠ»ΡΡΠΎΡ.
ΠΠΌΠ° ΠΏΠ»Π°Π½ΠΎΠ²ΠΈ Π΄Π° ΡΠ΅ ΡΠΏΠΎΡΠ΅Π΄ΠΈ Π±ΡΠΎΡΠΎΡ Π½Π° ΡΠ°Π·Π»ΠΈ ΠΏΠΎΠΌΠ΅ΡΡ Ρ ΠΎΡΡΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠΈ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΡΡΠ°ΠΊΠ΅ΡΡΡ Π·Π° ΠΏΠΎΠ»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ΅ Π½Π°ΡΠ΄Π°Ρ Ρ ΠΎΡΡΠΎΠ²ΠΈ ΠΊΠΎΠΈ ΠΈΠΌΠ°Π°Ρ ΠΏΠΎΠΊΡΠ°ΡΠΎΠΊ ΠΏΠ°Ρ Π΄ΠΎ Π½ΠΈΠ².
ΠΠΎΠ΄ΠΎΡ Π΅ Π³ΡΡΠ±, ΠΌΡ Π½Π΅Π΄ΠΎΡΡΠΈΠ³Π°Π°Ρ ΠΊΡΠΏ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, Π½ΠΎ Π΄ΠΎΡΡΠ° Π΄ΠΎΠ±ΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ° Π½Π° ΡΠΈΡΡΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΠΈ Π³ΠΎ ΡΠ΅Π½Π΅Π» ΡΠ΅ΠΊΠΎΡ ΠΏΠΎΠ²ΡΠ°ΡΠ΅Π½ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ
ΠΠ·Π²ΠΎΡ: www.habr.com