Описание
A flaw was found in GLib2. When g_file_replace() is used with G_FILE_CREATE_REPLACE_DESTINATION and creating the .goutputstream-XXXXXX temporary file fails, the library unlinks the destination and recreates it without exclusive creation or symlink protection. A local attacker who can write to the destination directory can win that race and redirect the write to another file.
Отчет
Exploitation is local, requires write access to the destination directory, requires the uncommon temp-file fallback in handle_overwrite_open(), and requires winning a race. The usual g_file_replace() path writes to a temp file first and is not this bug. A successful race can overwrite or create a file the victim process is allowed to write.
Меры по смягчению последствий
Do not use g_file_replace(..., G_FILE_CREATE_REPLACE_DESTINATION) on paths in directories writable by less-privileged users.
Затронутые пакеты
| Платформа | Пакет | Состояние | Рекомендация | Релиз |
|---|---|---|---|---|
| Red Hat Enterprise Linux 10 | glib2 | Affected | ||
| Red Hat Enterprise Linux 10 | mingw-glib2 | Fix deferred | ||
| Red Hat Enterprise Linux 6 | glib2 | Fix deferred | ||
| Red Hat Enterprise Linux 7 | glib2 | Fix deferred | ||
| Red Hat Enterprise Linux 8 | glib2 | Fix deferred | ||
| Red Hat Enterprise Linux 8 | mingw-glib2 | Fix deferred | ||
| Red Hat Enterprise Linux 9 | glib2 | Affected | ||
| Red Hat Enterprise Linux 9 | mingw-glib2 | Fix deferred | ||
| Red Hat Hardened Images | glib2 | Affected | ||
| Red Hat OpenShift Container Platform 4 | openshift/ose-rhel-coreos-8 | Fix deferred |
Показывать по
Дополнительная информация
Статус:
EPSS
5.3 Medium
CVSS3
Связанные уязвимости
(A flaw was found in GLib2. When g_file_replace() is used with G_FILE_C ...)
A flaw was found in GLib2. When g_file_replace() is used with G_FILE_CREATE_REPLACE_DESTINATION and creating the .goutputstream-XXXXXX temporary file fails, the library unlinks the destination and recreates it without exclusive creation or symlink protection. A local attacker who can write to the destination directory can win that race and redirect the write to another file.
A flaw was found in GLib2. When g_file_replace() is used with G_FILE_C ...
A flaw was found in GLib2. When g_file_replace() is used with G_FILE_CREATE_REPLACE_DESTINATION and creating the .goutputstream-XXXXXX temporary file fails, the library unlinks the destination and recreates it without exclusive creation or symlink protection. A local attacker who can write to the destination directory can win that race and redirect the write to another file.
EPSS
5.3 Medium
CVSS3