Don't ask to ask, just ask | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
I don't think there's any looking up by name--in the
example the IP was grabbed with getpeername and
the name isn't known. If you were to get the ip with
gethostbyname and then use gethostbyaddr on the
result, you would be verifying it as they suggest, just
in reverse.
Quoting extensively from the Cookbook: "Not really. That's only half the solution. Because a name lookup goes to the name's owner's DNS server and a lookup of an IP addresses goes to the address's owner's DNS server, you have to contend with the possibility that the machine that connecteed to you is giving incorrect names. For instance, the machine evil.crackers.org could belong to malevolent cyberpirates who tell their DNS server that its IP address (1.2.3.4) should be identified as trusted.dod.gov. If your program trusts trusted.dod.gov, a connection from evil.crackers.org will cause getpeername to return the right IP address (1.2.3.4), but gethostbyaddr will return the duplicitous name (my italics). "To avoid this problem, we take the (possibly deceitful) name returned by gethostbyaddr and look it up again with gethostbyname..." I'm just repeating, but it looks to me as if this is talking about gethostbyaddr having the potential to give incorrect information. In reply to RE(3): Resolve addresses in web access logs (kudra: gethostbyaddr could give incorrect info)
by kudra
|
|