OpenBSD

OpenBSD
Siglă
Gratuit, funcțional și sigur
Gratuit, funcțional și sigur
Familie Tip Unix ( BSD )
Tipul de bază Monolitic
Starea proiectului activ
Depozit cvsweb.openbsd.org/cgi-bin/cvsweb
Platforme Alpha , AMD64 , armish , PA-RISC , i386 , SH4 , Loongson , macppc , sgi , Sparc , Sparc64 , VAX , Zaurus și altele
Companie /
Fondator
Theo de Raadt
Companie /
Dezvoltator
Theo de Raadt și OpenBSD Project ( d )
Licență Compatibil ISC și BSD
Prima versiune 18 octombrie 1995
Ultima versiune stabilă 6.9 (1 st mai 2021)
Manager de pachete pachet
Site-ul web www.openbsd.org

OpenBSD este un sistem de operare lipsit de Unix , derivat din 4.4BSD . Creat în 1994 de Theo de Raadt , a apărut din separarea de NetBSD , cel mai vechi dintre celelalte trei sisteme de operare majore din familia BSD aflată în funcțiune. Proiectul OpenBSD este renumit pentru intransigența sa asupra libertății software-ului și a codului sursă, calitatea documentației sale și accentul pus pe securitate și criptografie încorporată.

OpenBSD include o serie de măsuri de securitate absente sau opționale în alte sisteme de operare. Dezvoltatorii săi au tradiția de a efectua audituri de cod în căutarea problemelor de securitate și a erorilor . Proiectul respectă politici stricte de licențiere și preferă propria licență open source ISC și alte variante ale licenței BSD  : în trecut, acest lucru a condus la un audit exhaustiv al licențelor și înlocuirilor, chiar și la ștergerile codului licențiat considerate ca fiind mai puțin acceptabile.

La fel ca majoritatea sistemelor de operare bazate pe BSD, kernel-ul OpenBSD și programele sale de utilizator, precum shell - ul și instrumentele obișnuite precum cat și ps , sunt dezvoltate într-un singur depozit CVS . Software-ul terț vine în pachete binare sau poate fi compilat din sursă folosind colecția de porturi.

Proiectul este coordonat de Theo de Raadt din casa sa din Calgary , Alberta , Canada , iar mascota proiectului este Puffy , un diodon .

Istorie

Theo de Raadt a fost co-fondatorul NetBSD și membru al echipei de dezvoltare. În 1994 , echipa i-a cerut să demisioneze și accesul său la CVS a fost revocat. Motivele evacuării rămân neclare până în prezent, dar alți câțiva membri ai echipei NetBSD au ridicat probleme legate de relația lor cu Raadt. El a fost criticat în special pentru că a fost nepoliticos cu utilizatorii folosind un ton agresiv pe listele de corespondență NetBSD .

Personalitatea lui Theo de Raadt

Potrivit multor alte personalități ale software-ului liber, inclusiv Linus Torvalds , se știe că Theo de Raadt este direct și dificil. Pozițiile sale puternice sunt o sursă de conflict și uneori sunt considerate jignitoare. De Raadt a spus acest lucru despre sistemul de operare GNU / Linux într-un interviu acordat ziarului Forbes: „Este groaznic ... toată lumea îl folosește și nu își dau seama cât de rău este. Iar utilizatorii de Linux se vor mulțumi cu asta și o vor rezolva, mai degrabă decât să facă un pas înapoi și să spună „Aceasta este gunoaie și ar trebui să o remediem”. "

Deși personalitatea sa este rareori indiferentă, majoritatea comentatorilor sunt de acord că Theo de Raadt este un programator talentat și un guru al securității. Spontaneitatea sa, pe care unii o apreciază, a fost ilustrată în acest conflict cu echipa NetBSD , a cărei majoritate a membrilor sunt încă tăcute cu privire la acest episod astăzi. În schimb, Theo de Raadt a răspuns la toate întrebările care i-au fost puse și a pus la dispoziție e-mailurile schimbate și jurnalele camerelor de chat cu echipa NetBSD .

O demisie forțată

Theo de Raadt nu a fost exclus imediat din proiectul NetBSD . Depozitul CVS pentru acest proiect necesită niveluri diferite de permisiuni de citire și scriere. În calitate de cofondator și al doilea cel mai activ colaborator, de Raadt avea acces la citire și scriere pe baza sistemului. Echipa NetBSD a luat apoi posibilitatea de a trimite modificări direct la depozit și de a face aceste modificări permanente. De Raadt a fost apoi obligat să trimită prin e-mail fiecare dintre contribuțiile sale unui membru al echipei pentru examinare.

De Raadt a văzut această acțiune ca fiind abuzivă și a încercat fără succes să recâștige accesul complet la depozitul CVS al NetBSD . Întrucât echipa de dezvoltare a dorit să se asigure că contribuțiile lor vor fi „pozitive”, au oferit lui Raadt mai multe soluții, inclusiv o scrisoare de semnat, rezumând condițiile, drepturile și obligațiile lui Raadt. După câteva luni de certuri asupra listelor de corespondență ale proiectului, de Raadt a demisionat oficial și, în 1994, a creat sistemul de operare OpenBSD bazat pe versiunea 1.0 a NetBSD , conform licenței.

Crearea OpenBSD

După crearea OpenBSD, fiecare proiect a încercat să atragă dezvoltatori către el. Două tabere aproape sigilate s-au format rapid și mai mulți dezvoltatori NetBSD l- au urmat pe de Raadt. Acesta din urmă a observat că o serie de e-mailuri și scrisori postate pe site-ul său personal au dispărut. Deși a refuzat oficial să incrimineze membrii echipei NetBSD, Theo de Raadt a decis să examineze securitatea NetBSD , pe care a considerat-o deficitară.

La scurt timp după crearea OpenBSD, Theo de Raadt a fost contactat de Secure Networks inc. (sau SNI), o companie locală de software de securitate care dezvoltă un instrument de audit al securității rețelei numit Ballista (redenumit Cybercop Scanner după ce SNI a fost achiziționat de Network Associates ), destinat găsirii și încercării de a exploata posibile vulnerabilități de securitate software. Acest lucru a coincis cu propriul interes al lui De Raadt pentru securitate: cele două părți au decis astfel să coopereze, într-o relație deosebit de benefică care a condus la lansarea OpenBSD 2.3.

Securitatea codului și auditul

Pentru mai multe detalii despre această secțiune, consultați pagina cu caracteristicile de securitate OpenBSD  (en) (en) .

Această cooperare a permis, de asemenea, proiectului să se concentreze asupra unui punct specific: dezvoltatorii OpenBSD ar trebui să încerce să facă ceea ce este corect, curat și sigur, chiar și în detrimentul ușurinței de utilizare, vitezei sau funcționalității. Pe măsură ce defectele OpenBSD au devenit mai greu de detectat și exploatat, compania de securitate a decis că auditul codului a devenit prea dificil și neprofitabil. După ani de cooperare, cele două părți au fost de acord că obiectivele lor comune au fost atinse și au mers pe căi separate.

Argumentul numărului redus de defecte exploatabile de la distanță

Până în iunie 2002 , site-ul web OpenBSD avea următorul slogan:

„Cinci ani fără vulnerabilitate la distanță în instalarea implicită! "

În Iunie 2002, Mark Dow de la Internet Security Systems a descoperit o lacună în codul OpenSSH care implementa autentificarea bazată pe întrebări. Aceasta a fost prima vulnerabilitate descoperită în instalarea implicită a OpenBSD care permite unui atacator să acceseze de la distanță contul de superutilizator. Utilizarea pe scară largă a OpenSSH în acest moment a fost responsabilă de severitatea vulnerabilității, care a afectat un număr considerabil de alte sisteme de operare. Această problemă a necesitat ajustarea sloganului site-ului web OpenBSD:

"O singură vulnerabilitate la distanță în instalarea implicită, în 6 ani!" "

Această afirmație a fost criticată pentru lipsa de software activat în instalarea implicită OpenBSD și, de asemenea, pentru faptul că vulnerabilitățile la distanță au fost descoperite după lansarea unei versiuni. Cu toate acestea, proiectul insistă asupra faptului că sloganul se referă la instalarea implicită și, prin urmare, este corect la acest nivel. Una dintre ideile fundamentale din spatele OpenBSD este de a proiecta un sistem care să fie simplu, curat și sigur în mod implicit. De exemplu, setările minime implicite corespund practicii standard în securitatea IT de a permite cât mai puține servicii pe sistemele de producție, iar proiectul practică audituri de cod considerate elemente importante de securitate. ”Un sistem.

În Martie 2007, descoperirea unui nou defect în OpenBSD, situat în stiva IPv6, a necesitat înlocuirea sloganului prin:

„Doar două vulnerabilități la distanță în instalarea implicită, în peste 10 ani!” "

La ieșirea din 4.5 30 aprilie 2009, numărul de ani este eliminat:

"Doar două vulnerabilități la distanță în instalarea implicită, pentru un timp diabolic!" "

Principalele caracteristici de securitate

OpenBSD include o serie de caracteristici specifice menite să sporească securitatea, inclusiv:

Managementul privilegiilor

Pentru a reduce riscul ca o vulnerabilitate sau o configurare greșită să permită falsificarea privilegiilor, unele programe au fost scrise sau adaptate pentru a utiliza separarea privilegiilor, revocarea privilegiilor sau chroot.

Separarea Privilege este o tehnica, pionier pe OpenBSD și inspirat de principiul cel mai puțin privilegiu, în cazul în care un program este împărțit în două sau mai multe părți, una dintre care efectuează operațiuni privilegiate , iar cealaltă - aproape întotdeauna restul codului - funcționează fără privilegiu. Revocarea privilegiilor este similară și implică un program efectuează toate operațiunile necesare cu privilegiile cu care a fost lansat, iar apoi el dă aceste privilegii. Stabilirea în cușcă implică restricționarea mediului de execuție al unui program la o parte a sistemului de fișiere, interzicând astfel accesul la zonele care conțin fișiere sau sisteme private.

Dezvoltatorii au aplicat aceste caracteristici versiunilor OpenBSD ale aplicațiilor obișnuite, inclusiv tcpdump și serverul web Apache , care este doar versiunea 1.3 puternic modificată din cauza problemelor de licențiere cu seria Apache 2.

Audituri de cod

Proiectul urmează o politică de audit constant a codului pentru probleme de securitate, un dezvoltator de locuri de muncă Marc Espie descrie ca „niciodată terminat [...] mai mult o chestiune de proces decât găsirea unui bug specific. „Acesta din urmă a produs, de asemenea, o listă cu mai mulți pași tipici de urmat atunci când este detectată o eroare, inclusiv o examinare amănunțită a surselor pentru probleme identice și similare", [încercând] să determine dacă documentația necesită modificarea "și investigând „dacă este posibil să îmbunătățim compilatorul pentru a produce avertismente despre această problemă specifică. La fel ca DragonFly BSD , OpenBSD este unul dintre cele două sisteme de operare gratuite a căror politică este să caute codul C în formatul clasic pre- ANSI și să îl convertească în echivalentul său modern ANSI. Acest lucru nu ar trebui să implice nicio modificare a funcționalității și se face numai din motive de lizibilitate și coerență. Un standard de stil, Kernel Normal Form, care dictează care ar trebui să fie forma codului pentru ușurința întreținerii și înțelegerii, trebuie aplicat oricărui cod înainte de a putea fi inclus în sistemul de operare de bază. Codul existent este actualizat constant pentru a se potrivi cu aceste convenții de stil.

Platforme și compatibilitate acceptate

OpenBSD funcționează sau a funcționat pe 32 de platforme hardware diferite:

Numele

Numele OpenBSD provine din aventura NetBSD a lui Theo de Raadt . Într-adevăr, NetBSD CVS nu era accesibil dezvoltatorilor neoficiali; au fost distribuite doar lansările . Pentru furculița sa , Theo de Raadt a creat un server CVS public: toată lumea poate accesa cele mai recente surse ale proiectului.

Mascotă

La fel ca alte BSD-uri ( FreeBSD și NetBSD ), mascota OpenBSD este BSD Daemon (alias Beastie ). De asemenea, are ca mascotă Blowfish , alias Puffy . Acesta din urmă este o referință la algoritmul criptografic al lui Bruce Schneier cu același nume (folosit printre altele de OpenSSH ): grafica sa atractivă, combinată cu aspectul defensiv impresionant al diodonului cu vârfuri, l- au făcut foarte popular. Fiecare versiune a OpenBSD vine cu o piesă muzicală, precum și cu o bandă desenată de obicei cu Puffy. Recent, există derivate Blowfish desenate în stil manga , Sushi Fugu și Harisenbon.

Starea proiectului

OpenBSD este în prezent în versiunea 6.9 (de la 1 st mai 2021).

Echipa produce o versiune la fiecare 6 luni.

Potrivit unui post postat pe undeadly.org, proiectul OpenBSD a suferit pierderi financiare de aproximativ 20.000 de dolari pe an în 2004 și 2005. Recent (2015), noii investitori voluntari, inclusiv Microsoft Corporation, au injectat „lichidități semnificative pentru a sprijini proiectul și multiplele sale sub-proiecte, în special OpenSSH .

Punctul de vedere al utilizatorului

Mulți utilizatori nu sunt familiarizați cu OpenBSD și apelează la sisteme unix-like mai populare, cum ar fi Linux sau FreeBSD . Utilizatorii OpenBSD sunt mai degrabă oameni obișnuiți cu mediile de tip Unix , deoarece sistemul nu este conceput pentru a simplifica utilizarea mașinii și necesită anumite „cunoștințe de bază” din partea utilizatorului pentru a îndeplini sarcini care ar fi necesare, poate automatizate pe alte sisteme.

Dezvoltatorii OpenBSD spun adesea că proiectează sistemul pentru ei înșiși înainte de al face pentru alții. Prin urmare, rezultă un sistem foarte interesant pentru dezvoltatori (funcții multiple, compatibilitate etc.) care poate părea destul de rece la început pentru un utilizator neinițiat.

Alte proiecte

Echipa OpenBSD lucrează și la alte proiecte care devin părți complete ale sistemului de operare și care sunt, de asemenea, portate (sau portabile) către alte sisteme de operare . Printre aceste proiecte în derulare, putem menționa:

În plus, sunt furnizate diverse interfețe de programare securizate, cum ar fi strlcat (3), strlcpy (3), strtonum (3) sau chiar arc4random (3). Aceste API-uri sunt adesea utilizate în alte programe software sau sisteme de operare.

Note și referințe

  1. Lista platformelor acceptate
  2. Model de licență
  3. OpenBSD - Politica privind drepturile de autor
  4. "  http://undeadly.org/cgi?action=article&sid=20061019013207  "
  5. (în) Theo de Raadt , „  OpenBSD 6.9 lansat pe 1 mai  ” ,30 aprilie 2021(accesat la 3 mai 2021 )
  6. De Raadt Theo în „  Is Linux For Losers?  », Forbes , 2005.
  7. Wayner Peter, „ 18.3 Flames, bights  , and the birth of OpenBSD  ” în Free for all , 2000.
  8. OverBSD's IPv6 mbuf's remote kernel buffer overflow (13 martie 2007)
  9. (în) OpenBSD Finance , undeadly.org, 21 martie 2006, accesat la 11 iulie 2009

Vezi și tu

Articole similare

linkuri externe