Turinį transformuojantis tarpinis serveris gali pakeisti atsakymą kelyje į naršyklę: iš naujo suspausti vaizdą, perrašyti žymėjimą arba įterpti papildomą JavaScript. Puslapis, kuris veikia viename tinkle, o kitame gauna nepažįstamą žymėjimą, gali susidurti būtent su šiuo tarpininko elgesiu.

Jūsų valdomai svetainei HTTP suteikia aiškią atsakymo direktyvą:

Cache-Control: no-transform

RFC 9111 reikalauja, kad šią atsakymo direktyvą gavęs tarpininkas paliktų turinį netransformuotą, nepriklausomai nuo to, ar jis įgyvendina talpyklą. Tai aktualu vaizdų pakartotiniam suspaudimui ir žymėjimo įterpimui, ne tik tam, ar objektas bus saugomas.

Išsaugokite ją kartu su esama talpyklos politika

Jei atsakymas jau turi talpyklos direktyvų, reikalavimą pridėkite sąmoningai, o ne atmeskite likusią politiką. Pavyzdžiui, viešai talpinamas išteklius gali turėti:

Cache-Control: public, max-age=3600, no-transform

Šis pavyzdys išlaiko vienos valandos šviežumo politiką ir draudžia turinio transformavimą. no-transform nereiškia no-store ir neišjungia įprasto perdavimo apdorojimo. Nustatykite jį atsakymams, kurių originalus turinys svarbus, įskaitant atskirus vaizdų atsakymus, kur tinka.

Direktyva veikia per tarpininko laikymąsi. Ji kriptografiškai netrukdo tinklo įrenginiui ignoruoti nurodymo.

Apsaugokite ir perdavimą

HTTPS suteikia naršyklei ryšį su autentifikavimu ir vientisumo apsauga į savo TLS partnerį. Įprastas operatoriaus tarpinis serveris, praleidžiantis šifruotą srautą, negali tyliai įterpti scenarijaus į tą apsaugotą ryšį. Palikite sertifikatų tikrinimą įjungtą; vietinis patikimas tikrinimo tarpinis serveris, užbaigiantis TLS, yra kita sąranka.

Teikite puslapį ir nuo jo priklausančius išteklius per HTTPS. Nukreipkite HTTP lankytojus į HTTPS ir apsvarstykite HSTS diegimui, kuris gali jį nuosekliai palaikyti. Vien nukreipimas prasideda neapsaugotu HTTP mainu lankytojui, kuris naudojo HTTP URL; anksčiau išmokta ar iš anksto įkelta HSTS politika pakeičia šį pradinį pasirinkimą.

Užblokavus įterptą scenarijų galima sumažinti jo matomą poveikį, tačiau atsakyme jau gali būti pakeistas HTML arba perrašyti vaizdų URL. Vieno seno funkcijos pavadinimo pakeitimas, neįprasto komentaro pridėjimas ar istorinio įterpimo adreso susiejimas nenustato turinio vientisumo kitam tarpininkui.

Tirdami pranešimą, palyginkite gautą atsakymą su numatytu šaltinio turiniu ir nustatykite, kur baigiasi TLS. Šis įrodymas naudingesnis nei kiekvieną nepažįstamą scenarijų laikyti pačios svetainės programos kodo klaida.

Susiję straipsniai