Pievienot darbus Atzīmētie0
Darbs ir veiksmīgi atzīmēts!

Atzīmētie darbi

Skatītie0

Skatītie darbi

Grozs0
Darbs ir sekmīgi pievienots grozam!

Grozs

Reģistrēties

interneta bibliotēka
Atlants.lv bibliotēka
6,49 € Ielikt grozā
Gribi lētāk?
Identifikators:334877
 
Autors:
Vērtējums:
Publicēts: 22.02.2019.
Valoda: Latviešu
Līmenis: Augstskolas
Literatūras saraksts: Nav
Atsauces: Ir
Laikposms: 2016. - 2020. g.
Darba fragmentsAizvērt

Tomēr ja ir nepieciešams lietot PHP 5.4.0 vai vecāku versiju, atkarībā no lietojamiem ietvariem (jo visi to neatbalsta), varētu apsvērt arī PHP safe mode ieslēgšanu, kas ierobežo skriptu izpildes tiesības[27].

Lai izvairītos no pārāk liela sistēmas noslogojuma (piemēram, DDoS gadījumā), jāieslēdz arī ierobežojumi, kas nepieļauj pārāk lielu individuālo skriptu izpildes laiku vai resursu patēriņu. To ir iespējams izdarīt ar max_execution_time parametru, kā arī memory_limit parametru. Vēl šeit var palīdzēt maksimālo POST pieprasījumu satura izmēru iestatīšana, ko var izdarīt ar post_max_size komandu. Līdzīgi, vajadzētu iestatīt arī maksimālo augšupielādēto failu izmēru ar upload_max_filesize.

Tāpat produkcijas kodā ir nepieciešams atslēgt kļūdu izvadi HTML, jo pretējā gadījumā ārējiem lietotājiem kļūs pieejama informācija par skripta saturu, kas var būt par lielu drošības risku (jo īpaši tad, ja nav atslēgta magic quotes funkcionalitāte).

Ja ir nepieciešamība pēc vēl lielākas drošības, pastāv iespēja konfigurācijā atslēgt individuālās PHP valodas komandas, piemēram exec(), kas atļauj palaist tekstu kā PHP koda fragmentu. To ir iespējams izdarīt ar disable_functions komandu.

Runājot par pašu programmēšanu, ļoti noderīgi būtu atcerēties, ka drošāk ir izmantot kādu no jau gatavajiem lietotāja autentifikācijas risinājumiem, piemēram, uLogin PHP[28], PHP-Auth[29], vai arī funkcionalitāti, kas pieder lielākiem ietvariem, piemēram Symfony[30], lai nav jāriskē ar tik kritiskas funkcionalitātes sliktu implementāciju neuzmanības dēļ.

Svarīga ir arī ievades datu validācija, pretējā gadījumā ļaunprātīgi noskaņoti lietotāji var izpildīt koda injekciju, piemēram, padodot teksta laukam ne tikai vērtību, bet arī SQL kodu, kas tiks izpildīts uz servera un ļaus izmainīt lietojuma darbību.

Datu bāzu gadījumā to var novērst, izmantojot PDO vai MySQLi priekš savienojuma izveidošanas[31], kas atļauj veidot sagatavotus vaicājumus, kuros injekcija nav iespējama. Lai nu kā, vajadzētu arī citviet atcerēties, ka lietotāja ievadei nedrīkst uzticēties – neizmantot eval() funkciju ar nedrošiem datiem un saprasta atšķirību PHP starp vienkāršām un dubultām pēdiņām, jo pirmajā gadījumā ievietojot saturā mainīgo nosaukumu tas netiks interpretēts, taču otrajā tiks atgriezta mainīgā vērtība.

Autora komentārsAtvērt
Parādīt vairāk līdzīgos ...

Atlants

Izvēlies autorizēšanās veidu

E-pasts + parole

E-pasts + parole

Norādīta nepareiza e-pasta adrese vai parole!
Ienākt

Aizmirsi paroli?

Draugiem.pase
Facebook

Neesi reģistrējies?

Reģistrējies un saņem bez maksas!

Lai saņemtu bezmaksas darbus no Atlants.lv, ir nepieciešams reģistrēties. Tas ir vienkārši un aizņems vien dažas sekundes.

Ja Tu jau esi reģistrējies, vari vienkārši un varēsi saņemt bezmaksas darbus.

Atcelt Reģistrēties