| Ticket UUID: | 3d978e0a84738b5c6a7bb1afc01aef962e9a25a4 | ||
| Title: | `clock -timezone` escapes safe interp via `~` path (8.6.16+, same gap as [2f8bb48009]) | ||
| Type: | Bug | Created on: | 2026-11-03 11:05:41 |
| Submitter: | bef | Assigned to: | jan.nijtmans |
| Subsystem: | 16. Commands A-H | Severity: | Severe |
| Priority: | 5 Medium | Last modified: | 2026-11-03 15:58:43 |
| Status: | Closed | Closed by: | jan.nijtmans |
| Resolution: | Fixed | Closed on: | 2026-11-03 15:58:43 |
| Version: | 8.6.16, 8.6.17, 8.6.18 (core-8-6-branch as of 2026-11-03) | ||
| Description: | ||||
|
Follow-up to 2f8bb48009. That fix added PoC (Tcl 8.6.18, core-8-6-branch head 52a3c1d31a):
Output:
This is a regression from 67e7522bd1 (fix for
2c237beffbace823, Fix: add | ||||
| User Comments: | ||||
serhiy.storchaka added on 2026-11-03 14:21:30:
Reproduced on core-8-6-branch and 8.6.16, not on 8.6.15. Proposed fix in branch clock-unsafe-timezone-8-6: both guards also reject a leading "~". Only a leading "~" matters: on 8.6 a "~" later in the path stays inside the data directory. 9.0 and later are not affected, since "~" is not expanded there, although adding "~" to the guards there would be harmless. jan.nijtmans added on 2026-11-03 15:58:43:
Fixed in [ee4f07c809|core-8-6-branch] Many thanks! | ||||
