Difference between revisions of "Security information"

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
Tag: 2017 source edit
(44 intermediate revisions by 5 users not shown)
Line 1: Line 1:
= Alerts =
+
<!-- BEGIN origin interlang links -->
No security bugs known at the moment.
+
<!-- You can edit this section but do NOT remove these comments
 +
    Links below will be automatically replicated on translated pages by PolyglotBot -->
 +
[[fr:Informations_sécurité]]
 +
[[es:Información_de_seguridad]]
 +
<!-- END interlang links -->
  
= Features =
+
[[Category:Admin]]
 +
[[Category:Admin_en]]
 +
 
 +
=[[File:securite.png]] Alerts=
 +
Last update: {{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY}}
 +
 
 +
Some SQL injections and CSRF vulnerabilities have been reported. They are a small risk as they are in page that need to be logged to be used. Fix is available into {{Template:SafeVersion}}.
 +
 
 +
Note: You can download from GitHub the '''intermediate''' versions (not yet realeased maintenance package) from [https://github.com/Dolibarr/dolibarr/archive/9.0.zip version 9] and [https://github.com/Dolibarr/dolibarr/archive/10.0.zip version 10]
 +
 
 +
=[[File:art.png]] Features=
 
Dolibarr implements several security features. Among them :
 
Dolibarr implements several security features. Among them :
* No passwords in logs, even technical logs.
+
 
* Passwords can be crypted in database.
+
'''Encryption'''
* Password can be encoded in the Dolibarr configuration file (conf.php).
+
 
* Anti SQL injection mechanism.
+
*User passwords are encrypted in database <sup>[*7]</sup> <sup>[*8]</sup>.
* Support or not ofr PHP safe_mode.
+
*Database technical password can be obfuscated into the [[Configuration_file|Dolibarr configuration file]] (conf.php) <sup>[*8]</sup>.
* Files saved by application are stored in a different root directory than web application (so they can not be downloaded without passing by the Dolibarr wrapper).
+
*Possibility to force HTTPS <sup>[*9]</sup>.
* Pages and contents are protected by permissions by groups or by users for each functionnal module (this feature is the only module you can't disable in Dolibarr).
+
 
* Delay anti brute force cracking on login page.
+
<source lang="php">
* Graphical code against robots on login page.
+
//conf/conf.php file
* Logger to save permanently all Dolibarr events, like successful or failed logins.
+
//example of $dolibarr_main_force_https  configuration
* Possibility to force HTTPS.
+
$dolibarr_main_force_https = '1';//to force https
* Possibility to run an anti-virus on every uploaded file.
+
</source>
 +
 
 +
{| class="wikitable" style="width:100%;"
 +
! scope="col" |Values
 +
! scope="col" |Description
 +
 
 +
|-
 +
| style="width:50%;" |
 +
0
 +
| style="width:50%;" |
 +
No forced redirect
 +
 
 +
|-
 +
| style="width:50%;" |
 +
1
 +
| style="width:50%;" |
 +
Force redirect to https, until SCRIPT_URI start with https into response
 +
 
 +
|-
 +
| style="width:50%;" |
 +
2
 +
| style="width:50%;" |
 +
Force redirect to https, until SERVER["HTTPS"] is 'on' into response
 +
 
 +
|}
 +
 
 +
'''Hacks and cracks'''
 +
 
 +
*Works with register_globals on or off (off highly recommended) <sup>[*2]</sup>.
 +
*Works with PHP safe_mode on or off (on recommended) <sup>[*3]</sup>.
 +
*Production option to disable any technical information leakage like debug, error stacktrace, version informations (See [[Configuration_file|configuration file]]) <sup>[*6]</sup>.
 +
*Protection against SQL injection <sup>[*2]</sup>.
 +
*Protection against XSS injection (Cross Site Scripting) <sup>[*1]</sup>.
 +
*Protection against CSRF (Cross Site Request Forgery) <sup>[*5]</sup>.
 +
 
 +
Note that it is also recommanded to protect your web server by disabled Apache option
 +
<source lang="ini">
 +
AcceptPathInfo Off
 +
</source>
 +
 
 +
'''Pages and files access'''
 +
 
 +
*Pages and contents are protected by centralized entry code to check permissions (granted on groups or users for each functional module) <sup>[*4]</sup> <sup>[*10]</sup>.
 +
*Files saved by Dolibarr are stored in a different root directory than web application (so they can't be downloaded without passing by the Dolibarr wrapper) <sup>[*3]</sup> <sup>[*10]</sup>.
 +
*Dolibarr directories content can't be accessed even if Apache option Indexes has be forgotten to on (should not) <sup>[*3]</sup>.
 +
 
 +
'''Login protection'''
 +
 
 +
*Delay anti brute force cracking on login page <sup>[*7]</sup>.
 +
*Option for graphical code (CAPTCHA) against robots on login page <sup>[*7]</sup>.
 +
*No passwords in logs, even in technical logs <sup>[*7]</sup>.
 +
*Internal logger to save permanently all Dolibarr events about user's administration and successful or failed logins or administration events (user or group or permission changes).
 +
 
 +
'''Viruses'''
 +
 
 +
*Possibility to run an external anti-virus on every uploaded files <sup>[*3]</sup>.
 +
 
 +
 +
----
 +
<sup>(*X)</sup> This solution is part of protection used to solve vulnerabilities classified by the [http://www.owasp.org/index.php/Top_10_2007 OWASP Top Ten] at range number X.

Revision as of 23:53, 16 September 2019


Securite.png Alerts

Last update: 2019-09-16

Some SQL injections and CSRF vulnerabilities have been reported. They are a small risk as they are in page that need to be logged to be used. Fix is available into 11.0.1.

Note: You can download from GitHub the intermediate versions (not yet realeased maintenance package) from version 9 and version 10

Art.png Features

Dolibarr implements several security features. Among them :

Encryption

  • User passwords are encrypted in database [*7] [*8].
  • Database technical password can be obfuscated into the Dolibarr configuration file (conf.php) [*8].
  • Possibility to force HTTPS [*9].
//conf/conf.php file
//example of $dolibarr_main_force_https  configuration
$dolibarr_main_force_https = '1';//to force https
Values Description

0

No forced redirect

1

Force redirect to https, until SCRIPT_URI start with https into response

2

Force redirect to https, until SERVER["HTTPS"] is 'on' into response

Hacks and cracks

  • Works with register_globals on or off (off highly recommended) [*2].
  • Works with PHP safe_mode on or off (on recommended) [*3].
  • Production option to disable any technical information leakage like debug, error stacktrace, version informations (See configuration file) [*6].
  • Protection against SQL injection [*2].
  • Protection against XSS injection (Cross Site Scripting) [*1].
  • Protection against CSRF (Cross Site Request Forgery) [*5].

Note that it is also recommanded to protect your web server by disabled Apache option

AcceptPathInfo Off

Pages and files access

  • Pages and contents are protected by centralized entry code to check permissions (granted on groups or users for each functional module) [*4] [*10].
  • Files saved by Dolibarr are stored in a different root directory than web application (so they can't be downloaded without passing by the Dolibarr wrapper) [*3] [*10].
  • Dolibarr directories content can't be accessed even if Apache option Indexes has be forgotten to on (should not) [*3].

Login protection

  • Delay anti brute force cracking on login page [*7].
  • Option for graphical code (CAPTCHA) against robots on login page [*7].
  • No passwords in logs, even in technical logs [*7].
  • Internal logger to save permanently all Dolibarr events about user's administration and successful or failed logins or administration events (user or group or permission changes).

Viruses

  • Possibility to run an external anti-virus on every uploaded files [*3].



(*X) This solution is part of protection used to solve vulnerabilities classified by the OWASP Top Ten at range number X.