[squid-users] Rewriting HTTP to HTTPS for generic package proxy
Alex Rousskov
rousskov at measurement-factory.com
Mon Jul 15 22:35:41 UTC 2024
On 2024-07-15 17:19, Amos Jeffries wrote:
> On 12/07/24 10:10, Alex Rousskov wrote:
>> On 2024-07-11 17:03, Amos Jeffries wrote:
>>> On 11/07/24 00:49, Alex Rousskov wrote:
>>>> On 2024-07-09 18:25, Fiehe, Christoph wrote:
>>>>
>>>>> I hope that somebody has an idea, what I am doing wrong.
>>>>
>>>> AFAICT from the debugging log, it is your parent proxy that returns
>>>> an ERR_SECURE_CONNECT_FAIL error page in response to a seemingly
>>>> valid "HEAD https://..." request. Can you ask their admin to
>>>> investigate? You may also recommend that they upgrade from Squid v4
>>>> that has many known security vulnerabiities.
>>>>
>>>> If parent is uncooperative, you can try to reproduce the problem by
>>>> temporary installing your own parent Squid instance and configuring
>>>> your child Squid to use that instead.
>>>>
>>>> HTH,
>>>>
>>>> Alex.
>>>> P.S. Unlike Amos, I do not see serious conceptual problems with
>>>> rewriting request target scheme (as a temporary compatibility
>>>> measure). It may not always work, for various reasons, but it does
>>>> not necessarily make things worse (and may make things better).
>>
>>
>>> To which I refer you to:
>>
>> None of the weaknesses below are applicable to request target scheme
>> rewriting (assuming both proxies in question are
>> implemented/configured correctly, of course). Specific
>> non-applicability reasons are given below for each weakness URL:
>>
>>> https://cwe.mitre.org/data/definitions/311.html
>>
>> The above "The product does not encrypt sensitive or critical
>> information before storage or transmission" case is not applicable:
>> All connections can be encrypted as needed after the scheme rewrite.
>>
>
> Reminder, OP requirement is to cache the responses and send un-encrypted.
The client does not support TLS so what happens between the client and
Squid is irrelevant to this discussion -- a correctly
configured/implemented Squid is not going to make things worse there.
Squid is a part of the "product" in the above definition; client is not.
The only relevant communication part is between Squid and origin server
(possibly via a parent). All those network segments can be configured to
be encrypted "before storage or transmission", avoiding the above weakness.
>>> https://cwe.mitre.org/data/definitions/312.html
>>
>> The above "The product stores sensitive information in cleartext
>> within a resource that might be accessible to another control sphere."
>> case is not applicable: Squid does not store information in such an
>> accessible resource.
> Reminder, Squid does cache both https:// and http:// traffic.
I do not see how that assertion is relevant. Everything Squid caches is
_not_ stored in an "accessible resource" described in that weakness.
>>> https://cwe.mitre.org/data/definitions/319.html
>>
>> The above "The product transmits sensitive or security-critical data
>> in cleartext in a communication channel that can be sniffed by
>> unauthorized actors." case is not applicable: All connections can be
>> encrypted as needed after the scheme rewrite.
>
> The relevant sensitive data is in the Responses, which are absolutely
> transmitted un-encrypted per the OP requirements.
See 311.html case above: Responses are encrypted on the relevant network
segments.
Alex.
More information about the squid-users
mailing list