Description of problem: It's possible to put a full path or relative path in LDIF export modal dialog, allowing to write to any location that dirsrv user can, including overwriting its own configuration files, like dse.ldif Version-Release number of selected component (if applicable): 389-ds-base-1.4.1.6-2.module+el8dsrv+3912+aa2ce078.x86_64 How reproducible: always Steps to Reproduce: 1. Database -> Backups & LDIFs -> Create LDIF export 2. Put /etc/dirsrv/slapd-test/dse.ldif or ../../../../../../etc/dirsrv/slapd-test/dse.ldif 3. Press Create LDIF Actual results: The ldif export is written to this filename Expected results: Export should be allowed only to default ldif export dir. Additional info: When a path is given that dirsrv can't write to, it gives a correct error: Error exporting database - Export task failed ------------------------- Beginning export of 'userRoot' Backend userRoot: can't open /etc/sdfsdf.ldif: 13 (Permission denied) while running as user "dirsrv" backend 'userRoot' export failed (-1) Export failed.
Builds tested: 389-ds-base-1.4.1.9-1.module+el8dsrv+4243+ba0eb3c6.x86_64 cockpit-389-ds-1.4.1.9-1.module+el8dsrv+4243+ba0eb3c6.noarch Reproducer from comment #0 no longer works and user is presented with a message: "LDIF name should not be a path. All export files are stored in the server's LDIF directory" Marking as VERIFIED.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2019:3731