6 pagrindiniai saugos patarimai, kaip apsaugoti savo PHP svetainę nuo įsilaužėlių

Jūsų PHP svetainė paleista. Sveikiname! Bet palauk .. ar tu rūpinosi esminiu saugumo kietėjimu?


PHP yra lengva, tačiau labai galinga pagrindinio programavimo kalba. Ji valdo apie 80% pasaulinių interneto programų, todėl yra viena iš labiausiai paplitusių kalbų vystymosi pasaulyje.

Jo populiarumo ir plataus naudojimo priežastis yra lengva kodavimo struktūra ir patogios kūrėjams funkcijos. Yra daugybė CMS ir sistemų, sukurtų PHP viršuje, ir tūkstančiai žinomų kūrėjų iš viso pasaulio yra nuolatinė jos bendruomenės dalis..

Vienas puikus pavyzdys yra „WordPress“.

Kai PHP programos diegiamos tiesioginiuose serveriuose, tai gali susidurti su keliais įsilaužimo ir interneto atakų atvejais, todėl jos svetainės duomenys tampa ypač pažeidžiami, kad juos būtų galima pavogti. Tai, kaip sukurti visiškai saugią programą, prižiūrint visus pagrindinius projekto tikslus, yra viena iš labiausiai aptariamų temų bendruomenėje..

Nepaisant jų geriausių pastangų, kūrėjai visada saugosi paslėptų spragų, kurios nepastebimos kuriant programą. Šios spragos gali rimtai pakenkti gyvybiškai svarbių svetainės duomenų apsaugai interneto priegloba PHP MySQL programas, palikdami jas pažeidžiamas įsilaužimo bandymų.

Taigi, šis straipsnis yra apie keletą naudingų PHP saugos patarimų, kuriuos galėtumėte protingai naudoti savo projektuose. Naudodamiesi šiais mažais patarimais galite įsitikinti, kad jūsų programa visada yra labai saugi ir niekada nepakenks jokioms išorinėms žiniatinklio atakoms..

Skirtingų svetainių scenarijus (XSS)

Skirtingų svetainių scenarijų rašymas yra viena iš pavojingiausių išorinių atakų, atliekama įvedant į svetainę bet kokį kenksmingą kodą ar scenarijų. Tai gali paveikti jūsų programos branduolį, nes įsilaužėlis gali įleisti bet kokio tipo kodą į jūsų programą net nesuteikdamas užuominos. Ši ataka dažniausiai vyksta tose svetainėse, kurios priima ir pateikia vartotojo duomenis.

XSS atakos metu suleistas kodas pakeičia pradinį jūsų svetainės kodą, tačiau veikia kaip tikras kodas, trikdantis svetainės veikimą ir dažnai vagiantis duomenis. Piratai apeina prieigos prie jūsų programos kontrolę ir gauna prieigą prie jūsų slapukų, sesijų, istorijos ir kitų gyvybiškai svarbių funkcijų.

Galite užkirsti kelią šiai atakai naudodami specialias HTML raides & ENT_QUOTES jūsų programos koduose. Naudodami ENT_QUOTES galite pašalinti vienos ir dvigubos citatos parinktis, leidžiančias panaikinti bet kokio scenarijaus išpuolio tarp svetainių galimybę.

Klastotė kitose vietose (CSRF)

CSRF suteikia visišką įsilaužėlių programos valdymą, kad būtų galima atlikti bet kokius nepageidaujamus veiksmus. Pilnai kontroliuodami įsilaužėliai gali atlikti kenkėjiškas operacijas perkeldami užkrėstą kodą į jūsų svetainę, todėl gali būti vagystės, funkcinės modifikacijos ir tt. Ataka verčia vartotojus pakeisti įprastus prašymus į pakeistus destruktyvius, pavyzdžiui, pervesti lėšas nesąmoningai, ištrinti. visa duomenų bazė be jokio pranešimo ir pan.

CSRF ataka gali būti inicijuota tik spustelėjus užmaskuotą kenkėjišką nuorodą, kurią atsiuntė įsilaužėlis. Tai reiškia, kad jei esate pakankamai protingi, kad išsiaiškintumėte užkrėstus paslėptus scenarijus, galite lengvai atmesti bet kokią galimą CSRF ataką. Tuo pačiu galite sustiprinti savo programos saugumą dviem apsaugos priemonėmis, t. Y. Naudodami GET užklausas savo URL ir užtikrindami, kad ne GET užklausos būtų generuojamos tik iš jūsų kliento pusės kodo..

Sesijos užgrobimas

Sesijos užgrobimas yra išpuolis, per kurį įsilaužėlis pavogia jūsų sesijos ID, kad gautų prieigą prie numatytos paskyros. Naudodamas tą seanso ID, įsilaužėlis gali patvirtinti jūsų seansą, nusiųsdamas užklausą į serverį, kur $ _SESSION masyvas patikrina jo veikimo laiką, neturėdamas žinių. Tai galima atlikti per XSS ataką arba prisijungus prie duomenų, kur saugomi sesijos duomenys.

Norėdami užkirsti kelią seansų užgrobimui, visada surišite sesijas su jūsų faktiniu IP adresu. Ši praktika padeda panaikinti seansus, kai įvyksta nežinomas pažeidimas, ir iškart praneša, kad kažkas bando apeiti jūsų seansą, kad gautų programos prieigos kontrolę. Ir visada atsiminkite, kad jokiomis aplinkybėmis neatskleiskite asmens tapatybės dokumentų, nes tai vėliau gali pakenkti jūsų tapatybei dar viena ataka.

Užkirsti kelią SQL injekcijų priepuoliams

Duomenų bazė yra vienas iš pagrindinių programos komponentų, į kurį įsilaužėliai dažniausiai nukreipia per SQL injekcijos ataką. Tai yra atakos rūšis, kai įsilaužėlis naudoja tam tikrus URL parametrus, kad gautų prieigą prie duomenų bazės. Ataka taip pat gali būti padaryta naudojant interneto formos laukus, kur įsilaužėlis gali pakeisti duomenis, kuriuos perduodate pateikdami užklausas. Pakeitęs tuos laukus ir užklausas, įsilaužėlis gali valdyti jūsų duomenų bazę ir atlikti keletą pražūtingų manipuliacijų, įskaitant ištrinti visą programų duomenų bazę..

Norint išvengti SQL injekcijų atakų, visada patariama naudoti parametrines užklausas. Šios SKVN užklausos tinkamai pakeičia argumentus prieš paleisdami SQL užklausą, veiksmingai atmesdami bet kokią SQL injekcijos atakos galimybę. Ši praktika ne tik padeda apsaugoti jūsų SQL užklausas, bet ir padaro jas struktūrines, kad būtų galima efektyviai apdoroti.

Visada naudokite SSL sertifikatus

Norėdami gauti saugų duomenų perdavimą internetu, programose visada naudokite SSL sertifikatus. Tai yra visame pasaulyje pripažintas standartinis protokolas, žinomas kaip hiperteksto perdavimo protokolas (HTTPS), skirtas saugiam duomenų perdavimui iš serverių į kitą. Naudodama SSL sertifikatą, jūsų programa gauna saugų duomenų perdavimo kelią, dėl kurio įsilaužėliams beveik neįmanoma įsibrauti į jūsų serverius..

Visos pagrindinės žiniatinklio naršyklės, tokios kaip „Google Chrome“, „Safari“, „Firefox“, „Opera“ ir kitos, rekomenduoja naudoti SSL sertifikatą, nes jis suteikia užšifruotą protokolą duomenims perduoti, priimti ir iššifruoti internetu..

Slėpti failus iš naršyklės

Mikro PHP sistemose yra specifinė katalogų struktūra, kuri užtikrina svarbių pagrindų failų, tokių kaip valdikliai, modeliai, konfigūracijos failo (.yaml) ir kt., Saugojimą..

Dažniausiai šie failai nėra apdorojami naršyklėje, tačiau jie yra ilgiau matomi naršyklėje, taip sukuriant programos saugumo pažeidimą..

Taigi, visada laikykite failus viešame aplanke, o ne laikykite juos šakniniame kataloge. Tai padarys juos mažiau prieinamus naršyklėje ir paslėps funkcijas nuo bet kokio galimo užpuoliko.

Išvada

PHP programos visada yra pažeidžiamos išorinių atakų, tačiau pasinaudodami aukščiau paminėtais patarimais galite lengvai apsaugoti programos branduolį nuo bet kokio kenksmingo išpuolio. Būdamas kūrėjas, jūs esate atsakingi už savo svetainės duomenų apsaugą ir jų be klaidų naudojimą.

Be šių patarimų, daugelis būdų gali padėti apsaugoti jūsų žiniatinklio programą nuo išorinių atakų, pvz., Naudojant geriausią debesų prieglobos sprendimą, užtikrinantį optimalias saugos funkcijas, debesies WAF, dokumento šaknies sąranką, baltojo IP sąrašo įtraukimą ir dar daugiau.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map