Žiniatinklio programų sauga yra saugumo filosofija, skirta apsaugoti svetainėse esančias programas ir pačias svetaines. Saugomas objektas yra prijungtas prie svetainės, todėl žiniatinklio programų sauga turėtų būti sukurta programavimo kalba, kurią svetainės gali suprasti. Šiai apsaugai užtikrinti paprastai naudojamos kelių tipų saugos programos, įskaitant pažeidžiamumo skaitytuvus ir įvesties testavimą. Svetainę ar žiniatinklio programą gali įvykti daugybė atakų tipų, tačiau scenarijų kūrimas ir kodo įterpimas yra dvi labiausiai paplitusios grėsmės saugai internete.
Svetainės arba žiniatinklio programos apsauga labai skiriasi nuo programos, įdiegtos darbalaukyje, saugos sukūrimo. Programa yra prisijungusi ir paprastai ją gali pasiekti bet kas arba bent jau didelė vartotojų grupė, todėl tai padidina galimybę, kad kenkėjiškas vartotojas suras žiniatinklio programą. Kenkėjiškam vartotojui taip pat paprastai lengviau įvesti kodą į svetainę, todėl žiniatinklio programų sauga turi įveikti šiuos iššūkius.
Kurdami žiniatinklio programų saugos programą, programinės įrangos kūrėjai turi sukurti programą tokia kalba, kurią būtų galima naudoti serveryje arba svetainėje. Jei serveris ar svetainė nesupranta programavimo kalbos, yra didelė tikimybė, kad programa bus neveiksminga. Daugelis darbalaukio saugos programų yra sukurtos šiomis kalbomis, todėl daugumai programinės įrangos kūrėjų tai paprastai nesukelia problemų.
Kodavimas yra labai svarbus žiniatinklio programų saugumui, nes dėl prasto svetainės ar žiniatinklio programos kodavimo įsilaužėlis gali lengvai patekti į sistemą. Dėl šios priežasties daugelis žiniatinklio programų saugos programų skirtos pažeidžiamumui ar įsiskverbimo nepastovumui koduoti analizuoti. Įvesties skiltys taip pat gali padėti įsilaužėliui patekti į sistemą, todėl programos paprastai naudojamos patikrinti šių įvesties sričių stabilumą. Užkardos ir slaptažodžių tikrintuvai taip pat dažnai naudojami papildomam svetainės saugumui.
Įsilaužėlis gali atakuoti žiniatinklio programą ar svetainę įvairiais būdais, tačiau dažniausiai naudojamos dvi pagrindinės atakos. Kodo įterpimas, dažniausiai iš struktūrinės užklausos kalbos (SQL), prideda kodą į svetainę arba jos duomenų bazę. Tai gali sukelti problemų savaime arba gali atverti saugumo skyles sunkesnėms atakoms. Scenarijai yra panašūs į kodo įvedimą, išskyrus tai, kad jie paleidžia kenkėjišką programą, o ne įtraukia į sistemą kenkėjiškų programų.