I reviewed vulkan-loader version 1.1.101.0-2_amd64 as checked into
disco. This shouldn't be considered a full security audit but rather a
quick check of maintainability.
- No CVE history in our database
- vulkan-loader provides support for loading the main vulkan library,
handling layer and driver management including multi-gpu support to
dispatch API calls to the correct driver and layer.
- Depends: debhelper, cmake, googletest, libwayland-dev, libx11-dev,
libxcb1-dev, libxrandr-dev, pkg-config, python3
- Does not itself do networking
- No cryptography
- Does not daemonize
- No pre/post inst/rm
- No init scripts
- No dbus services
- No setuid files
- No binaries in the PATH
- No sudo fragments
- No udev rules
- A test suite is run during the build (as noted in the log, 23 of the
tests fail due to missing vulkan driver but as this is expected this
is not a concern)
- No cron jobs
- 3 warnings in build logs about memory allocation functions which
declare as returning void * but are used for functions which expect an
unsigned long * return value - these can safely be ignored
- No cppcheck warnings
- No subprocesses spawned
- Memory management is very careful in general, however I noticed that
the loader allocates a buffer on stack for reading in ICD JSON
descriptions - this uses the length of the JSON file as the length of
the buffer to allocate and since these files can be user controlled it
could be relatively easily exploited by dropping a very large JSON
file to overrun the stack (since uses alloca() internally which has
undefined behaviour if stack is overflown) - this might be worth
investigating further but is really only a denial of service issue so
not a high priority and no chance of privilege escalation etc
- Otherwise most memory management is quite careful, allocation return
values are checked for failure, buffer lengths are checked, string
lengths are checked and handled correctly etc.
- Does not itself do file IO beyond reading JSON as described above
- Logging is careful
- Uses the following environment variables:
- VK_LOADER_DISABLE_INST_EXT_FILTER
- VK_LOADER_DEBUG
- XDG_CONFIG_DIRS
- XDG_DATA_DIRS
- XDG_DATA_HOME
- HOME
- No privileged code sections
- No privileged functions
- No networking
- No temp files
- No WebKit
- No PolKit
Security team ACK for promoting vulkan-loader to main for disco.
** Changed in: vulkan-loader (Ubuntu)
Assignee: Ubuntu Security Team (ubuntu-security) => (unassigned)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1742711
Title:
MIR: vulkan-loader
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/vulkan-loader/+bug/1742711/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs