Plone Conference 2015
se organizează la București
Hotel Intercontinental

Vulnerabilitate de securitate: 20151006 – CSRF

Patch-uri pentru Zope și Plone pentru multiple probleme CSRF

Natura vulnerabilității: multiple vulnerabilități CSRF (cross-site request forgery) în ZMI (Zope Management Interface).

Aceest patch a fost lansat marți 6 octombrie la ora 15:00 UTC și este disponibil aici https://pypi.python.org/

Pentru informații generale legate de vulnerabilitățile CSRF, citiți aici https://en.wikipedia.org/wiki/Cross-site_request_forgery

Versiuni afectate

Toate versiunile înaine de Plone 5.x sunt vulnerabile

Acest patch va fi compatibil cu toate versiunile Plone 4.x. Plone 5.x este deja protejat și nu are nevoie de acest patch.

Nginx/Apache proxy block rules

Dacă folosiți versiuni Plone de dinainte de 4.x, vă recomandăm să faceți upgrade sau să blocați accesul public la ZMI

Indiferent că folosiți Nginx sau Apache , aceste reguli trebuie să apară întâi, înaintea regulii “location /”

Folosiți această regulă de blocare pentru Nginx

location  ~ /manage(_(?!translations).+)?$ {
deny all;
}

Folosiți această regulă de blocare pentru Apache(2.2 syntax)

RewriteRule ^(.*)/manage(_(?!translations).*)$ - [L,NC]
<LocationMatch "^(.*)/(manage|manage_main|manage(_(?!translations).*))$" >
Order deny,allow
Deny from all
</LocationMatch>

Aceste mecanisme de blocare nu elimină în totalitate vulnerabilitățile CSRF, dar le fac mult mai greu de exploatat. Managerii de site ar trebui să se disciplineze ei însuși să folosească accesul direct (tunel ssh) numai temporar, atunci când au nevoie pentru a utiliza interfața de gestionare Zope.

Firewall

De asemenea vă recomandăm să aveți firewall care nu permite accesul direct la porturile clientului ZEO, ex. 8080, 8081, și nici la porturile server ZEO ex 8100.

Pentru mai multe informații despre folosirea firewall-ului pentru a proteja Plone, citiți http://docs.plone.org/manage/deploying/production/ubuntu_production.html#step-8-set-up-a-firewall

Despre patch

În scopul de a preveni aceste probleme CSRF, patch-ul transpune noul CSRF protection framework de la Plone 5 la Plone 4.x

Spre deosebire de patch-urile anterioare Plone, acest patch nu este un produs simplu, care poate fi instalat fără a executa buildout.

Protecția CSRF pentru Plone funcționează fără probleme pe site-uri Plone default. Cu toate acestea, ea poate fi prea agresivă dacă utilizați addons sau personalizări care includ următoarele:

  • cod care nu este protejat CSRF
  • cod personalizat non-jQuery AJAX JavaScript care nu este protejat CSRF
  • cod care face write-on-read

Odată ce patch-ul a fost aplicat, Plone poate da erori când întâlnește cele de mai sus.

Veți avea nevoie să adăugați valori _authenticator la multe URL-uri pentru a preveni erorile write-on-read. Pentru detalii cu privire la modul de a face acest lucru, citiți aici https://pypi.python.org/pypi/plone.protect

Vă recomandăm să testați cu atenție site-urile înainte de a da drumul live la patch.

În timp ce lucrați la efectele patch-ului pe site, vă recomandăm cu tărie să implementați regulile de blocare de mai sus pentru Nginx și Apache.

Echipa de securitate își dă seama că acest patch poate fi dificil de încorporat pe site-urile voastre. Am încercat din greu și am lucrat mult timp la această problemă pentru a face tot ce putem pentru a preveni vulnerabilități CSRF.

Vă rugăm să contactați echipa de securitate la security@plone.org cu sugestiile dumneavoastră pentru îmbunătățirile pe care le-am putea încorpora în patch.

Instalare

Instrucțiunile complete de instalare sunt disponobile pe pagina de lansări de HotFix

ATENȚIE: Instalarea acestui patch necesită rularea de buildout. Alte metode de instalare utilizate cu patch-uri anterioare nu vor funcționa corect și vor avea ca rezultat erori și / sau site-ul va continua să fie vulnerabil.

Ajutor Suplimentar

În cazul în care nu aveți administratori de server interni sau a unui contract de servicii de support pentru site-ul vostru puteți găsi companii de consultanță la plone.com/providers și plone.org/support/network

Există de asemenea suport gratuit disponibil on-line, prin intermediul listelor de mail Plone și canalelor IRC Plone.

Întrebări și răspunsuri

 

Î. Ce implică aplicarea patch-ului ?

R. Acest patch este pus la dispoziție ca un pachet de Python care trebuie să fie instalat prin editarea unui fișier de configurare buildout și rularea de buildout. Aplicarea patch-ului este în general ușor și rapid de realizat, totuși ar trebui să aveți grijă să testați site-ul dupa aceea.

Î. Cum a fost găsită această vulnerabilitate ?

R. Majoritatea problemelor s-au constatat, ca parte a auditurilor efectuate de echipa de securitate Plone. Un subset a fost raportat de către utilizatori.

Î. Este site-ul meu Plone în primejdie legat de această vulnerabilitate ?

Î. Cum știu dacă site-ul meu a fost exploatat ?

R. Nu există nici un exploit cunoscut în ceea ce privește problemele CSRF care a primit patch-ul.

Î. Cum pot să confirm că patch-ul a fost instalat corect și site-ul meu este protejat ?

R. Asigură-te că pachetul plone4.csrffixes este instalat pe site-ul tău. Puteți vedea că este activ dacă atunci când sunteți conectat veți vedea că link-urile de editare inlcud valori _authenticator în adresa URL

Î. Cum pot raporta alte posibile vulnerabilități de securitate ?

R. Trimiteți mail la echipa de securitate Plone la adresa security@plone.org mai degrabă decât să discutați în mod public problemele potențiale de securitate.

Î. Cum pot aplica patch-ul fără să afectez utilizatorii ?

R. Puteți rula buildout fără afectarea utilizatorilor. Aveți posibilitatea să reporniți o instalare multi-client Plone fără a afecta utilizatorii; vezi http://docs.plone.org/manage/deploying/processes.html

Î. Cum pot obține ajutor pentru a efectua patch-ul pe site ?

R. Furnizorii de servicii Plone sunt listați aici plone.com/providers și aici plone.org/support/network. Există, de asemenea, suport gratuit disponibil on-line, prin intermediul listelor de mail Plone si canalelor IRC Plone.

Î. Cine este în echipa de securitate Plone și cum este finanțată ?

R. Echipa de securitate Plone este formată din voluntari care sunt dezvoltatori familiarizați cu baza de cod Plone și cu exploatările de securitate. Echipa de securitate Plone nu este finanțată; membrii și/sau angajatorii lor își oferă voluntar timpul lor în interesul comunității Plone.

 

Întrebări generale cu privire la acest anunț, proceduri de aplicare a patch-ului și disponibilitatea de sprijin pot fi adresate pe forumurile de sprijin Plone. Cu toate acestea, dacă aveți întrebări specifice cu privire la această vulnerabilitate evitați să le discutați public: în schimb, contactați echipa Plone de securitate la security@plone.org

Pentru a raporta probleme potențiale legate de securitate, trimiteți un e-mail echipei de securitate la security@plone.org - suntem întotdeauna fericiți să dăm credit persoanelor fizice și companiilor care fac prezentări de informații responsabile.

Informații pentru Vulnerability Database Maintainers

Vom aplica pentru numere CVE pentru aceste probleme. Informații suplimentare cu privire la vulnerabilitățile individuale (inclusiv scoruri CVSS, identificatori CWE și rezumatele) vor fi disponibile în lista completă de vulnerabilități.

Știri Plone.ro
Site-ul Conferinței Plone București 2015 a fost lansat!
Conferința Plone București 2015 România
2015-03-18
Plone 5 demo portal
Portal demo pentru Plone 5
2014-10-15
Cel mai interesant poster ;-)
Plone.ro pe harta Plone.
2014-07-22
EEA Annotator - Inline comments Plone Add-on versiunea 2.0
Pachetul Plone "EEA Annotator - Inline comments" versiunea 2.0 a fost publicat pe PyPi si Plone.org
2014-02-21
eea.daviz screencasts available
Your feedback is needed!
2014-02-03
Știri Plone.ro - More…
Știri Plone.org
Plone urează bun venit celor 4 studenți aleși pentru Google Summer of Code 2016
Le urăm bun venit acestor studenți promițători ce exemplifică o mare diversitate geografică și de subiecte, și le dorim să aibă un Summer of Code minunat.
2016-04-24
Patch de securitate lansat: 20160419
Hotfix pentru remedierea unor diferite vulnerabilități
2016-04-19
Pre-anunț vulnerabilitate de securitate: 20160419
Hotfix pentru remedierea unor diferite vulnerabilității
2016-04-11
Plone selectat pentru Google Summer of Code 2016
Programul Google încurajează studenții dezvoltatori să participe la open source
2016-03-07
Plone Keynote la PyCon 2016
Cris Ewing va vorbi la PyCon în Portland, Oregon, SUA, 30 mai - 1 iunie , 2016
2016-02-20
Știri Plone.org - More…