Dezvoltatorii 1C-Bitrix - interpretarea rezultatelor scanerului de securitate

Stimați colegi, mă bucur să vă urez bun venit!
De la lansarea scanerului în 12.5.0 de securitate de presă de securitate a durat aproximativ o jumătate de an. În acest timp, recomandările sale au văzut aproximativ 12k + site-uri (un total de mai mult de 50k de cecuri). Din păcate, după cum arată statisticile marea majoritate a recomandărilor sale, fie ignoră sau nu știe ce să facă cu ei. De aceea, am decis să descrie mai detaliat testele și cum să interpreteze rezultatele lor. Voi încerca să descrie o amenințare comună sau o amenințare care cauzează cel mai mare număr de întrebări. Atenție, cantități mari de hardcore de mai jos.

După cum știți de la scanner anterior de securitate post - un adevărat prieten și ajutor. Scanerul este împărțit în două părți - locală și externă. Local - este responsabil pentru verificarea că este imposibil / imposibil de a efectua „în afara“, cum ar fi preferințele pentru un site sau performanța de PHP / Python / perl / etc Scripting în stocarea de director fișierele descărcate este mult mai eficient pentru a verifica din interior. Toate controalele sunt grupate în funcție de tipul (setări de mediu, configurare php, site-ul, etc), așa că propun să înceapă în ordine :)

setări de mediu
  • director sesiuni de stocare a fișierelor este disponibil pentru toți utilizatorii sistemului
    Puteți contempla mesajul acestei amenințări atunci când sesiuni de stocare fișiere director PHP (implicit session.save_path / tmp.) Este disponibil tuturor (altele), de exemplu:

Trebuie să găsești toate regulile actuale:

(Imagine completa este valabil pentru aviz PHP!), Apoi, la solicitarea dosarului, vom fi dat la corpul de tipul de text / html, care este logic, din moment ce stivuitoare Apache sunt invocate pentru a determina tipul:

Scanările externe par a merita un post separat, dar voi încerca să subliniez pe scurt principalele puncte.
  • Disponibil director listare
    Din păcate, inclus Directory autoindexare omniprezente și promite un minim de acces necontrolat la fișierele descărcate de utilizator. Pentru Nginx trebuie să fie eliminate autoindexare directive, se pare ca acest lucru:

Pentru Apache, această opțiune + indexuri, într-un fel se va uita în fișierul de configurare:

Iar acum, cu un arbitrar:

Anton, din păcate, nu știu răspunsul la această întrebare :( Din cauza mime-sniffing a fost mai mult ca răspuns IE la cultura de dezvoltare web teribil atunci când css'ki ar putea „acoperi“ ca text / plain, etc Îți amintești zilele când site-ul ar putea funcționa bine în IE și nu deschide în netscape? mi se pare, tocmai pentru a ascunde partea utilizatorului final a defectelor de dezvoltator și a fost inventat această caracteristică :( din păcate, întregul web a fost de mers pe jos pe această cale, și, prin urmare, o mulțime de răsfăț un cod html, de exemplu:

Duce la același rezultat :( Și mai multe măsuri de securitate curente - este limitarea în mod inerent dezvoltator pentru a face orice lucru pe care-l permite mai devreme exemplu, CSP (cel mai bun mijloc de a proteja site-ul de la XSS'ok - interzice toate inlaynovy JS la toate). sau HttpOnly (suficient de devreme poti fi de multe ori găsite manipula cookie-uri pentru JS)

Trebuie să găsești toate regulile actuale:

$ Găsiți ./upload de tip f -name“.htaccess' -print exec pisică <> \; ./ încărcare / suport / not_image / .htaccessDeny din all./upload/.htaccess php RemoveHandler .php3 .php4 .php5 .php6 .phtml .pl asp aspx .cgi .dll .exe ICO .shtm .shtml .fcg .fcgi .fpl .asmx .pht .py .psp AddType text / php simplu. php3 .php4 .php5 .php6 .phtml .pl asp aspx .cgi .dll .exe ICO .shtm .shtml .fcg .fcgi .fpl .asmx .pht .py .psp motor php_flag off

le muta la configurația gazdei virtuale site-ul dvs. și adăugați AllowOverride Nici unul pentru directorul de fișiere care pot fi descărcate, cum ar fi acest lucru:

AllowOverride nici unul hotara, neagă Refuzați de la toate AllowOverride none AddType text / php simplu .php3 .php4 .php5 .php6 .phtml .pl asp aspx .cgi .dll .exe ICO .shtm .shtml .fcg .fcgi .fpl .asmx .pht .py .psp php_value motorul oprit

Andrew, și în care fișier pentru a adăuga aceste reguli? Dacă adăugați în htaccess, atunci am obține o eroare de 500.

Deci, cel mai probabil, după verificarea dreapta vă spune că sesiunea este stocată în amestec cu ceilalți.

pe serverul utilizat în prezent pentru a stoca memoria cache OPcache

OPCache - l compilatorului și este folosit pentru cache / optimizarea codului PHP, date spațiale de utilizator (de exemplu cache, sau o sesiune Bitrix) nu pot fi stocate. Numele lui derutează multe :-)
Încă toate aceste opțiuni acoperă două și jumătate - schimba calea sesiunilor de stocare a fișierelor, a le stoca într-o bază de date, sau de a le stoca în memcached.
Cu prima opțiune vă va ajuta compania de găzduire, cred.
Cu a doua jumătate și este mai ușor:
1. Pentru sesiuni de magazin în baza de date este suficientă pentru a permite resp. setare. Atenție, sarcina pe baza de date va fi majorat
2. Pentru a le stoca în memcached trebuie să fie instalat, configurat și rulează memcached. Mai simplu:
- În dbconn.php stabiliți informațiile de conectare:

- Include sesiuni de depozitare în baza de date în BUS panoul de administrare.

8-800-250-1860 Contactați-ne Harta site-ului
site-ul web design -