Limiteu la reescriptura de contingut del proxy amb no-transform i HTTPS
Utilitzeu no-transform per declarar una política de contingut HTTP i HTTPS per protegir la connexió del navegador contra la modificació de la pàgina en trànsit.
Un proxy que transforma el contingut pot canviar una resposta pel camí cap al navegador: recomprimir una imatge, reescriure el marcatge o inserir JavaScript de suport. Una pàgina que funciona en una xarxa i adquireix marcatge desconegut en una altra pot estar trobant aquest comportament intermediari.
Per a un lloc que gestioneu, HTTP ofereix una directiva de resposta explícita:
Cache-Control: no-transform
La RFC 9111 exigeix que un intermediari que rebi aquesta directiva de resposta deixi el contingut sense transformar, tant si implementa una memòria cau com si no. És rellevant per a la recompressió d'imatges i la injecció de marcatge, no només per a si un objecte s'emmagatzema.
Manteniu-la amb la política de memòria cau existent
Si una resposta ja té directives de memòria cau, afegiu el requisit deliberadament en lloc de descartar la resta de la política. Per exemple, un actiu emmagatzemable públicament podria tenir:
Cache-Control: public, max-age=3600, no-transform
Aquest exemple conserva una política de frescor d'una hora mentre prohibeix la transformació del contingut. no-transform no implica no-store ni desactiva el processament ordinari de transferència. Definiu-lo a les respostes el contingut original de les quals importa, incloses les respostes d'imatge separades quan correspongui.
La directiva funciona mitjançant el compliment per part de l'intermediari. No impedeix criptogràficament que un dispositiu de xarxa ignori la instrucció.
Protegiu també el transport
HTTPS dona al navegador una connexió amb autenticació i protecció d'integritat vers el seu parell TLS. Un proxy d'operador habitual que deixa passar trànsit xifrat no pot inserir silenciosament un script en aquesta connexió protegida. Mantingueu la verificació de certificats; un proxy d'inspecció de confiança local que acaba el TLS és un arranjament diferent.
Serviu la pàgina i els recursos dependents per HTTPS. Redirigiu els visitants HTTP a HTTPS i considereu HSTS per a un desplegament que el pugui suportar de manera consistent. Només una redirecció comença amb un intercanvi HTTP no protegit per a un visitant que ha fet servir una URL HTTP; una política HSTS apresa prèviament o precarregada canvia aquesta elecció inicial.
Bloquejar un script injectat pot reduir-ne els efectes visibles, però la resposta pot contenir ja HTML canviat o URL d'imatge reescrites. Substituir un nom de funció antic, afegir un comentari inusual o mapar una adreça d'injecció històrica no estableix la integritat del contingut per al següent intermediari.
En investigar un informe, compareu la resposta rebuda amb el contingut previst de l'origen i identifiqueu on acaba el TLS. Aquesta evidència és més útil que tractar cada script desconegut com un error en el codi de l'aplicació del lloc.