— Odoo Cloud (het platform) —
CSA STAR Level 1
Odoo neemt deel aan het CSA Security Trust Assurance and Risk (STAR) Program.
Bekijk onze antwoorden op de CAIQv3.1 vragenlijst
Back-ups / Noodherstel
- We bewaren een geschiedenis van 14 volledige back-ups van elke Odoo-database gedurende ten minste 3 maanden: dagelijkse back-ups gedurende 7 dagen, wekelijkse back-ups gedurende 4 weken en maandelijkse back-ups gedurende 3 maanden.
- Back-ups worden gerepliceerd over minstens 3 verschillende datacenters.
- De locaties van onze datacenters staan vermeld in ons Privacybeleid.
- Je kunt op elk moment handmatige back-ups van je live gegevens downloaden via het controlepaneel.
- Je kunt contact opnemen met onze Helpdesk om een beschikbare back-up terug te zetten naar je live database of naar een aparte database.
- Hardware-failover: voor diensten die op bare-metalinfrastructuur worden gehost, waar hardwarestoringen mogelijk zijn, gebruiken we lokale hot-standbyreplicatie, monitoring en een handmatige failoverprocedure.
- Noodherstel: wij hanteren noodherstelprocedures die zijn ontworpen om Odoo Cloud-diensten en klantgegevens te herstellen na grote infrastructuurstoringen of rampen. Zie onze Cloud Service Level Agreement voor meer informatie en gedetailleerde Recovery Point Objectives (RPO) en Recovery Time Objectives (RTO).
Databasebeveiliging
- Klantgegevens worden opgeslagen in een speciale database en worden niet gedeeld tussen klanten.
- Toegangscontroles voor gegevens isoleren klantdatabases die op dezelfde cluster draaien, waardoor toegang van de ene klantdatabase naar de andere wordt voorkomen.
Wachtwoordbeveiliging
- Wachtwoorden van klanten worden beveiligd met behulp van de sectorstandaard PBKDF2+SHA512-wachtwoordhashing, met salting en key stretching over duizenden rondes.
- Medewerkers van Odoo hebben geen toegang tot je wachtwoord en kunnen dit ook niet opvragen. Als je je wachtwoord kwijt bent, moet het opnieuw worden ingesteld.
- Inloggegevens worden altijd veilig verzonden via HTTPS.
- Beheerders van klantendatabases kunnen een maximumaantal instellen en ook een afkoelperiode voor herhaalde inlogpogingen.
- Wachtwoordbeleid: databasebeheerders kunnen een minimale lengte voor gebruikerswachtwoorden opleggen. Andere beleidsregels, zoals vereiste tekenklassen, zijn standaard uitgeschakeld omdat uit onderzoek is gebleken dat ze contraproductief zijn. Zie [Shay et al. 2016] en NIST SP 800-63b.
Toegang van het personeel
- Medewerkers van de Odoo-Helpdesk kunnen indien nodig toegang krijgen tot je account om een ondersteuningsprobleem te onderzoeken. Zij gebruiken daarvoor speciale inloggegevens van het personeel in plaats van jouw wachtwoord, waartoe zij geen toegang hebben.
- Dankzij de speciale toegang voor medewerkers kunnen onze teams gemelde problemen reproduceren zonder dat jij je wachtwoord hoeft te delen, terwijl de acties van medewerkers afzonderlijk kunnen worden gecontroleerd en beheerd.
- Helpdeskmedewerkers beperken hun toegang tot de gegevens, bestanden en instellingen die nodig zijn om je probleem te diagnosticeren en op te lossen.
Beveiliging van het systeem
- Odoo Cloud-servers draaien op beveiligde (hardened) Linux-distributies met up-to-date beveiligingspatches.
- Serverinstallaties zijn doelgericht opgebouwd en minimaal, waardoor het aantal services dat kwetsbaarheden zou kunnen introduceren, wordt beperkt.
- Beheer van de servers op afstand is beperkt tot een klein aantal vertrouwde Odoo-technici en beveiligd met persoonlijke meerfactorauthenticatie.
Fysieke beveiliging
De Odoo Cloud-servers worden gehost in vertrouwde datacenters verspreid over meerdere regio's. Alle hostingfaciliteiten moeten voldoen aan onze eisen voor fysieke beveiliging, waaronder:
- Afgebakende zones die alleen toegankelijk zijn voor bevoegd datacenterpersoneel.
- Fysieke toegangscontrole met behulp van toegangsbadges of biometrische authenticatie.
- 24/7 bewaking van datacenterfaciliteiten via beveiligingscamera's.
- 24/7 beveiligingspersoneel ter plaatse.
Beveiliging van creditcards
- Wij slaan geen creditcardgegevens op in onze systemen.
- Creditcardgegevens worden veilig en rechtstreeks verzonden naar PCI-conforme betalingsverwerkers. Zie ons Privacybeleid voor de lijst met providers.
Gegevensversleuteling
Klantgegevens worden zowel tijdens verzending als in rust versleuteld.- De communicatie met klantinstanties wordt beschermd via HTTPS met 256-bits SSL-versleuteling.
- De interne communicatie tussen servers wordt beschermd met end-to-end-versleuteling.
- Onze servers worden continu bewaakt en bijgewerkt met patches voor SSL-kwetsbaarheden.
- Onze SSL-certificaten gebruiken sleutels van 2048 bits met volledige SHA-2-certificaatketens. Controleer de SSL-beoordeling hier.
- Klantgegevens, waaronder database-inhoud en opgeslagen bestanden, worden in rust versleuteld met AES-256, zowel in productiesystemen als in back-ups.
Netwerkbeveiliging
- De datacenterproviders die voor Odoo Cloud worden gebruikt, beheren netwerken met hoge capaciteit die ontworpen zijn om grote verkeersvolumes te weerstaan, waaronder de meeste Denial-of-Service-aanvallen. Geautomatiseerde en handmatige mitigatiesystemen detecteren aanvalsverkeer en leiden het om aan de rand van het netwerk, voordat het de beschikbaarheid van de dienst kan verstoren.
- Firewalls en inbraakpreventiesystemen op de Odoo Cloud-servers helpen bij het detecteren en blokkeren van bedreigingen zoals brute-force aanvallen op wachtwoorden.
- Beheerders van klantendatabases kunnen een maximumaantal instellen en afkoelperiodes instellen voor herhaalde inlogpogingen, of een CAPTCHA configureren om geautomatiseerde brute-force-aanvallen te beperken.
— Odoo (de software) —
Beveiliging van software
Odoo is opensource, waardoor de codebase voortdurend kan worden gecontroleerd door gebruikers en bijdragers wereldwijd. Meldingen vanuit de community vormen een belangrijke bron van feedback op het gebied van beveiliging, en we moedigen ontwikkelaars en beveiligingsonderzoekers aan om de code te controleren en beveiligingsproblemen te melden.
De Odoo R&D-processen omvatten codebeoordelingen waarbij rekening wordt gehouden met beveiligingsaspecten voor zowel nieuwe als bijgedragen code.
Veilig ontwerp
Het Odoo-framework is ontworpen om gangbare soorten beveiligingslekken standaard te voorkomen:
- SQL-injectie wordt voorkomen door een API van een hoger niveau, waardoor handmatig opgebouwde SQL-query's over het algemeen niet nodig zijn.
- Cross-site scripting (XSS) wordt voorkomen door een geavanceerd templatingsysteem dat ingevoegde gegevens automatisch escapet.
- Het framework voorkomt RPC-toegang tot private methoden, waardoor het risico op blootstelling van uitbuitbare functionaliteit kleiner wordt.
Bekijk de sectie Meest voorkomende kwetsbaarheden volgens OWASP voor meer informatie over de beveiligingsmaatregelen die in het Odoo-framework zijn ingebouwd.
Onafhankelijke beveiligingsaudits
Odoo wordt regelmatig beoordeeld door onafhankelijke beveiligingsbedrijven die door onze klanten en prospects worden ingeschakeld om beveiligingsaudits en penetratietests uit te voeren. Het Odoo Security Team beoordeelt de bevindingen en voert waar nodig corrigerende maatregelen door.
Wij kunnen deze beoordelingsrapporten niet openbaar maken, omdat ze vertrouwelijk zijn en eigendom zijn van de organisaties die ze hebben laten uitvoeren.
Odoo werkt ook samen met een actieve gemeenschap van onafhankelijke beveiligingsonderzoekers die onze broncode doorlichten en ons helpen de beveiliging voortdurend te verbeteren. Ons proces voor beveiligingsonderzoek en openbaarmaking wordt beschreven op onze Responsible Disclosure .
Meest voorkomende kwetsbaarheden volgens OWASP
Hieronder wordt samengevat hoe Odoo omgaat met veelvoorkomende beveiligingsrisico's voor webtoepassingen die geïdentificeerd zijn door het Open Web Application Security Project (OWASP):
-
Injectiefouten: Injectiefouten treden op wanneer niet-vertrouwde gegevens als onderdeel van een opdracht of query aan een interpreter worden doorgegeven, waardoor onbedoelde opdrachten kunnen worden uitgevoerd of gegevens kunnen worden gewijzigd.
Odoo maakt gebruik van een ORM-framework (object-relational mapping) dat het opbouwen van queries abstraheert en SQL-injectie standaard voorkomt. Ontwikkelaars hoeven normaal gesproken geen SQL-query's handmatig op te bouwen: query's worden door de ORM gegenereerd en parameters worden correct geëscaped.
-
Cross-Site Scripting (XSS): XSS-kwetsbaarheden ontstaan wanneer niet-vertrouwde inhoud zonder passende escaping of codering in een webpagina wordt opgenomen, waardoor een aanvaller mogelijk scripts kan uitvoeren in de browser van een andere gebruiker.
Het Odoo-framework escapet standaard expressies die in weergaven en pagina's worden weergegeven, waardoor XSS bij normaal gebruik wordt voorkomen. Ontwikkelaars moeten expressies expliciet als veilig markeren voordat ze als ruwe inhoud in weergegeven pagina's kunnen worden opgenomen.
-
Cross-Site Request Forgery (CSRF): Een CSRF-aanval probeert de browser van een geauthenticeerde gebruiker een ongeautoriseerd verzoek aan een webtoepassing te laten indienen, met gebruikmaking van de bestaande sessie van de gebruiker.
De websitemotor van Odoo bevat ingebouwde CSRF-bescherming. HTTP-controllers accepteren beschermde POST-verzoeken niet zonder het bijbehorende beveiligingstoken. Het token wordt verstrekt wanneer de gebruiker op legitieme wijze het betreffende formulier opent en kan niet door een aanvaller worden vervalst.
-
Uitvoering van kwaadaardige bestanden: Kwetsbaarheden voor het op afstand insluiten van bestanden (remote file inclusion) kunnen een aanvaller in staat stellen vijandige code of gegevens op een server te laden en uit te voeren.
Odoo biedt geen functionaliteit voor het op afstand insluiten van bestanden. Gebruikers met bijzondere rechten kunnen bepaalde functies aanpassen met expressies die door het systeem worden geëvalueerd, maar deze expressies draaien in een afgeschermde (sandbox) en gesaneerde omgeving met toegang die beperkt is tot toegestane functies.
-
Onveilige directe objectverwijzing: Directe objectverwijzingen maken identificatiegegevens van interne objecten, zoals records of bestanden, zichtbaar. Ze worden een kwetsbaarheid wanneer het manipuleren van die identificatiegegevens ongeautoriseerde toegang mogelijk maakt.
De toegangscontrole van Odoo wordt onafhankelijk van de gebruikersinterface afgedwongen. Het opnemen van verwijzingen naar interne objecten in URL's omzeilt de autorisatie daarom niet: elk verzoek moet nog steeds door de validatielaag voor gegevenstoegang.
-
Onveilige cryptografische opslag: Zwakke bescherming van opgeslagen inloggegevens of gevoelige gegevens kan gebruikers blootstellen aan ongeautoriseerde toegang, identiteitsdiefstal en andere vormen van misbruik.
Odoo gebruikt veilige wachtwoordhashing volgens de industriestandaard (standaard PBKDF2 + SHA-512 met key stretching) om opgeslagen gebruikerswachtwoorden te beschermen. Externe authenticatiesystemen zoals OIDC/OAuth kunnen ook worden gebruikt om te vermijden dat gebruikerswachtwoorden lokaal worden opgeslagen.
-
Onveilige communicatie: Gevoelige informatie kan openbaar worden wanneer applicaties de netwerkcommunicatie niet op de juiste manier versleutelen.
Odoo Cloud dwingt standaard HTTPS af. Voor on-premise-installaties raden we aan Odoo te draaien achter een webserver die versleuteling biedt en verzoeken naar Odoo doorstuurt (proxy), zoals Apache, Lighttpd of nginx. De implementatiehandleiding van Odoo bevat een beveiligingschecklist voor het beveiligen van openbare implementaties.
-
Het niet beperken van URL-toegang: Toepassingen kunnen gevoelige functionaliteiten blootstellen wanneer autorisatie alleen wordt afgedwongen door koppelingen of URL's voor onbevoegde gebruikers te verbergen.
Odoo vertrouwt niet op de gebruikersinterface of verborgen URL’s voor toegangscontrole. Elk verzoek moet door de validatielaag voor gegevenstoegang, dus het manipuleren van of direct toegang krijgen tot een URL omzeilt de autorisatie niet. Wanneer een URL opzettelijk niet-geauthenticeerde toegang biedt tot gevoelige informatie, zoals een link voor een orderbevestiging van een klant, wordt de URL beveiligd met een uniek, digitaal ondertekend token en uitsluitend naar de beoogde ontvanger verzonden.
Beveiligingsproblemen melden
Om een beveiligingslek te melden, kun je onze pagina voor Responsible Disclosure gebruiken. Beveiligingsmeldingen worden met hoge prioriteit behandeld en beoordeeld door het Odoo Security Team. We werken samen met de melders om bevestigde problemen te onderzoeken en op te lossen en, waar gepast, op verantwoorde wijze bekend te maken aan Odoo-klanten en -gebruikers.