Commit graph

155718 commits

Author SHA1 Message Date
Laurent Destailleur
c85d0e8407 Fix add guard on salary field permission when module salary is -
reported by vulncheck
2026-08-18 12:45:00 +02:00
Laurent Destailleur
c100564d05 Fix missing protection for external user - reported by Vulncheck 2026-08-18 12:31:40 +02:00
Laurent Destailleur
6873eca813 Fix: do no try to insert if calendar closed. 2026-08-18 12:15:11 +02:00
Laurent Destailleur
5391c3e313 Fix refuse use of .. into PHP_SELF - reported by Wenhao Wu 2026-08-18 12:01:01 +02:00
Laurent Destailleur
6acce68070 Doc 2026-08-18 10:43:30 +02:00
Laurent Destailleur
da94a9b1ae Doc 2026-08-18 10:40:28 +02:00
Laurent Destailleur
c1e582588d Debug v24 2026-08-17 18:26:39 +02:00
Laurent Destailleur
690f811047 Fix label 2026-08-17 16:11:30 +02:00
Aymeric Cucherousset
da73d2daed Fix #39559 Invisible Reject check icon in cheque deposit slips (#39562)
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2026-08-17 15:35:24 +02:00
Laurent Destailleur
20b4f05018 Fix must encrypt const with _SECRET_ inside 2026-08-17 15:26:17 +02:00
Laurent Destailleur
8c49a00c2c Debug v24 2026-08-17 04:29:49 +02:00
Laurent Destailleur
355f89af51 Debug v24 2026-08-17 04:12:10 +02:00
Laurent Destailleur
0d562d61fe Debug v24 2026-08-17 03:46:43 +02:00
Laurent Destailleur
2884902018 Clean code 2026-08-17 03:32:03 +02:00
Laurent Destailleur
fe4d53e1d8 Doc 2026-08-16 23:39:41 +02:00
Laurent Destailleur
86be225687 Fix sql 2026-08-16 23:09:33 +02:00
Laurent Destailleur
c70c25e375 Fix sql 2026-08-16 23:07:58 +02:00
Laurent Destailleur
2ea0d552db Missing field 2026-08-16 23:04:45 +02:00
Laurent Destailleur
4cf305ebb9 Fix prevent edit by external users - reported by VulnCheck 2026-08-16 06:31:33 +02:00
Laurent Destailleur
08527d0e76 Trans 2026-08-15 19:18:41 +02:00
Laurent Destailleur
80c909618e Sync transifex 2026-08-15 19:10:22 +02:00
Laurent Destailleur
275519a544 Transifex sync 2026-08-15 17:58:50 +02:00
Laurent Destailleur
a9254763f3 Add dolSort to offer a secured solution to use sort in dynamic fields 2026-08-15 17:54:12 +02:00
Laurent Destailleur
41dfccfc14 Complete #39546 and #39547 2026-08-15 16:53:30 +02:00
Laurent Destailleur
cffdd75591 Merge branch '24.0' of git@github.com:Dolibarr/dolibarr.git into 24.0 2026-08-15 16:39:31 +02:00
Laurent Destailleur
e6e55562da Doc 2026-08-15 16:39:19 +02:00
Aymeric Cucherousset
954685b729
Fix #39436 Block callable-dispatch bypass of PHP eval-guard blacklists (#39547)
* Fix #39436 Block callable-dispatch bypass of PHP eval-guard blacklists

dol_eval_new() and checkPHPCode() blacklisted dangerous sink functions
(exec, system, eval...) by name but missed PHP callable-dispatch
functions (array_map, usort, preg_replace_callback, etc). Since these
call a function by name-as-data, a payload like
array_map('sys'.'tem', ['id']) reached system() unblocked, bypassing
WEBSITE_PHP_ALLOW_EXEC=off and the opt-in dol_eval_new engine.

Port the callable-dispatch function list already used by the default
dol_eval_standard() whitelist engine (unaffected) into both guards.

* Revert checkPHPCode() change, move it to a PR targeting develop

As pointed out by @eldy on the PR review: adding the callable-dispatch
function blacklist to checkPHPCode() can break existing legitimate
website custom-PHP snippets that use array_map/usort/etc, since that
feature is admin-only but still user-authored content. That kind of
behavior change belongs on develop, not on a stable maintenance branch.

The dol_eval_new() fix stays here: it's an opt-in engine, off by
default (MAIN_USE_DOL_EVAL_NEW), so the added restrictions carry no
practical regression risk for existing installs.

* Update functions.lib.php

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2026-08-15 16:39:00 +02:00
Laurent Destailleur
87c68f29b7 Try to align dol_eval_new with dol_eval_standard (##39546, ##39547) 2026-08-15 16:34:12 +02:00
Laurent Destailleur
a8cfb55960 Fix option blocked by waf 2026-08-15 15:55:22 +02:00
Laurent Destailleur
6859adbbbb Merge branch '24.0' of git@github.com:Dolibarr/dolibarr.git into 24.0 2026-08-15 15:50:43 +02:00
Laurent Destailleur
8a0297de4b Clean code and doc to have whitelist use easier to understand. 2026-08-15 15:50:16 +02:00
Günter Lukas
0fed3b6d12
FIX Agenda "per user" view does not fire printFieldListFrom hook (#39507)
comm/action/index.php (agenda month/week/day view) fires the
printFieldListFrom hook right before the WHERE clause of the event query,
letting external modules add extra JOIN conditions to the agenda SQL
query. comm/action/peruser.php (agenda "per user" view) builds a
structurally identical query but never calls this hook - it only fires
printFieldListSelect, whose output lands before FROM and can't be used to
add a WHERE-equivalent join condition. printFieldListWhere isn't fired in
either file, so printFieldListFrom is the only hook point available
before WHERE.

This adds the same hook call already present in index.php, at the same
relative position (after the FROM/JOIN clauses, right before WHERE), so
modules can extend the agenda query the same way in both views.

Fixes #39506

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2026-08-15 02:29:45 +02:00
Noé Cendrier
030c1ea85b FIX: CommonObject::updateExtraField() method should call the corresponding object update trigger (#39526) 2026-08-15 02:06:08 +02:00
MDW
e7273973e7
Fix(ci): security access check (#39530) 2026-08-15 01:58:01 +02:00
Laurent Destailleur
54c4982c6c Merge branch '24.0' of git@github.com:Dolibarr/dolibarr.git into 24.0 2026-08-15 01:32:06 +02:00
Laurent Destailleur
68abf1fb93 Lang 2026-08-15 01:31:22 +02:00
Laurent Destailleur
dc96d8d720 Merge branch '23.0' of git@github.com:Dolibarr/dolibarr.git into 24.0 2026-08-14 20:32:03 +02:00
Frédéric FRANCE
592128018b
Update ci-checkfilesetlock.yml (#39525) 2026-08-14 20:31:46 +02:00
Laurent Destailleur
cc8cca3a04 Fix check for external user when using a child object like order lines -
reported by Pavel Kohout
2026-08-14 20:29:05 +02:00
Laurent Destailleur
2d765488ac Clean url 2026-08-14 20:08:48 +02:00
Laurent Destailleur
fbf476cc5d Restrict some field in api create/update of member for secure purpose -
reported by vulncheck
2026-08-14 20:01:30 +02:00
Laurent Destailleur
52d83c89d6 Disqualified some fields from api 2026-08-14 19:47:17 +02:00
Laurent Destailleur
9e385dc0ab Exclude some keys in api put and post 2026-08-14 19:45:47 +02:00
Laurent Destailleur
4da2578588 Fix AISLE-2026-0340-0087 IDOR in user bank account edit flow - reported
by Pavel Kohout
2026-08-14 18:10:58 +02:00
Laurent Destailleur
1730aa5667 Fix AISLE-2026-0340-0086 Authorization bypass in clonetasks: private
destination project check is inverted - reported by Pavel Kohout
2026-08-14 16:25:46 +02:00
Laurent Destailleur
340a08734b Merge branch '23.0' of git@github.com:Dolibarr/dolibarr.git into 24.0 2026-08-14 15:54:52 +02:00
Laurent Destailleur
53a7f8eff4 Merge branch '22.0' of git@github.com:Dolibarr/dolibarr.git into 23.0 2026-08-14 15:52:54 +02:00
Laurent Destailleur
f506d5459a Merge branch '21.0' of git@github.com:Dolibarr/dolibarr.git into 22.0 2026-08-14 15:52:11 +02:00
MDW
f092c9b7f6
Qual(ci): Fix phan notices (typing) (#39510) 2026-08-14 15:49:33 +02:00
MDW
a053ecf7d3
Qual(ci): Fix phan notices (typing) (#39509) 2026-08-14 15:48:28 +02:00