Search squid archive

Re: Squid 4.x and Peek and Splice - Host Header Forgery

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Also here is an example showing the issues when pushing to S3 as well as the same error with some google url's.

2016/10/17 18:33:32 kid1| SECURITY ALERT: Host header forgery detected on local=209.85.144.113:443 remote=x.x.x.x:62402 FD 49 flags=33 (local IP does not match any domain IP)
2016/10/17 18:33:32 kid1| SECURITY ALERT: on URL: tools.google.com:443
2016/10/17 18:34:04 kid1| SECURITY ALERT: Host header forgery detected on local=209.85.144.113:443 remote=x.x.x.x:62405 FD 110 flags=33 (local IP does not match any domain IP)
2016/10/17 18:34:04 kid1| SECURITY ALERT: on URL: tools.google.com:443
2016/10/17 18:34:45 kid1| SECURITY ALERT: Host header forgery detected on local=209.85.144.113:443 remote=x.x.x.x:62409 FD 56 flags=33 (local IP does not match any domain IP)
2016/10/17 18:34:45 kid1| SECURITY ALERT: on URL: tools.google.com:443
2016/10/17 18:35:16 kid1| SECURITY ALERT: Host header forgery detected on local=209.85.144.113:443 remote=x.x.x.x:62412 FD 65 flags=33 (local IP does not match any domain IP)
2016/10/17 18:35:16 kid1| SECURITY ALERT: on URL: tools.google.com:443
2016/10/17 18:57:11 kid1| SECURITY ALERT: Host header forgery detected on local=172.217.17.78:443 remote=x.x.x.x:52958 FD 66 flags=33 (local IP does not match any domain IP)
2016/10/17 18:57:11 kid1| SECURITY ALERT: on URL: alt2-safebrowsing.google.com:443
2016/10/17 18:58:00 kid1| SECURITY ALERT: Host header forgery detected on local=172.217.17.78:443 remote=x.x.x.x:52965 FD 42 flags=33 (local IP does not match any domain IP)
2016/10/17 18:58:00 kid1| SECURITY ALERT: on URL: alt2-safebrowsing.google.com:443



Also please note my dig response time :

;; Query time: 1 msec


And from my DNS server itself :

;; Query time: 2 msec


My bind server is setup as a simple forwarder which always returns repsonses in about 1-2 msec 

So again , things that are big , big files, timely requests to query some API , they all appear to have host header forgery problems that squid shows and then drops if the request takes longer to process than the TTL of the DNS entry associated with the traffic

I have many examples and if i dont use squid everything works fine, with squid it breaks , thats my simple point is squid is seeing an issue the app and client themselves dont and thats OK but with no way to "disable " or "workaround" the errors for lets say S3 on AWS

how do i keep using squid?


On Tue, Oct 18, 2016 at 2:10 PM, John Wright <unixdeaf@xxxxxxxxx> wrote:
In response to it not being a false positive , maybe its not specifically the TTL but in this other article on the mailing lists someone else had the same issue


Here is the response Amos gave, this is a known issue and apparently there is no way to "ignore host header forgery issues" or bypass them in the squid config.
My understanding is that , maybe the short TTL is ok, but it is small enough to where when a cloud based client is connecting to server a server b to amazon S3 etc it can take a few seconds 
Thus that 5 second TTL (which again is often 2-3 seconds) is small enough to hurt.

Specifically some of these people (aws , google) in some dns situations they are doing things that squid has been known to identify as host header forgery just becuse it doesnt understand whats happening.
Also if im doing an S3 call pulling or pushing a big file which is very common in cloud environments it can take 10-20 seconds for the request to process , and if TTL expires mid stream , squid is for some reason flagging as forgery and it hangs until it either returns to the same ip in 
DNS by chance or until the connection is dropped.

Here is the note from Amos
>> The cases where Squid still gets it wrong are where the popular CDN
>> service(s) in question are performing DNS actions indistinguishable to
>> those malware attacks. If Squid can't tell the difference between an
>> attack and normal DNS behaviour the only code change possible is to
>> disable the check (see above about the risk level).
>>

On Tue, Oct 18, 2016 at 2:01 PM, <garryd@xxxxxxxxx> wrote:
On 2016-10-18 22:42, John Wright wrote:
Hi

Replying to the list

Yes i get that error on many different sites same exact error about
host headers.
Also if you watch the TTL on the amazonaws url i provided it changes
from 3 to 5 to 10 seconds to 60 to 10 back and forth.
If you go online to an dns lookup site like kloth i see via kloth 5
seconds TTL

i get a different TTL value at different times, it appears they dont
have a set TTL but they change it often and it varies.
Right now it appears to be a ttl of 60 seconds as you found but
earlier and over the weekend it has shown 5 seconds and even AWS
support verified it can vary as low as 5 seconds.
That being said , when it is changing every 3-5 seconds which comes
and goes , squid gives the header forgery errors as shown before.

The time interval between client's and Squid's name lookup is measured in milliseconds. So, in most cases, the would not be false positives in environments where same cashing DNS server is used.

That specific issue you encounter except alert messages and Squid's inability to cache HTTP responses for "forged" HTTP requests?

_______________________________________________
squid-users mailing list
squid-users@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-users



--
Thank you for your time,

John Wright




--
Thank you for your time,

John Wright

_______________________________________________
squid-users mailing list
squid-users@xxxxxxxxxxxxxxxxxxxxx
http://lists.squid-cache.org/listinfo/squid-users

[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux