- Jul 18, 2019
-
-
-
These casts increase the required alignment, which makes them unsafe in theory. We ensure at runtime that the pointers are naturally-aligned, but the compiler doesn't know that. I suspect that this change won't measurably hurt performance.
-
-
-
- Jul 03, 2019
-
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Break out more tests from libdbus See merge request dbus/dbus!121
-
Simon McVittie authored
Fix test failures when running as root See merge request !117
-
Simon McVittie authored
tests: Improve diagnostics for malloc-failure tests See merge request !118
-
Simon McVittie authored
auth: Clear GUID from server if out of memory See merge request dbus/dbus!119
-
Simon McVittie authored
Move fd-leak checking from dbus/ into test/, and improve diagnostics See merge request dbus/dbus!120
-
Simon McVittie authored
All the functions under test turn out to be DBUS_PRIVATE_EXPORT already. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
All the functions under test turn out to be DBUS_PRIVATE_EXPORT already. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Instead of exposing _dbus_sha_test() as a private exported symbol, we can expose _dbus_sha_compute(), which is the only thing called by the test that isn't already exported. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
This lets us expose symbols in the embedded-tests build without expanding the symbol table of the production library. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Some CI environments run build-time tests as root with CAP_AUDIT_WRITE. In this case we need to close the audit socket so that it will not be reported as leaked. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
The audit module is initialized every time a new BusContext is created, which is only once in the real dbus-daemon, but can happen several times in some unit tests. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Some CI systems do the entire build as uid 0 in a throwaway container. If this is done in a build directory for which the messagebus user does not have search (+x) permission, then they will be unable to execute the just-built dbus-daemon binary. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Some CI systems do the build as root in a disposable container, and run tests without ever having installed dbus. This means we can't expect to be able to drop privileges from root to the DBUS_USER (usually named messagebus or dbus) unless we have checked that the DBUS_USER exists. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
doc: replace dbus-send's --address with --peer and --bus See merge request dbus/dbus!115
-
Christopher Morin authored
-
- Jul 02, 2019
-
-
Christopher Morin authored
-
Simon McVittie authored
Some of these appear to hang, but making this diagnostic appear in the log reveals the truth: it's just very slow. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
If we retry processing the message in response to OOM, but we don't clear this buffer first, then the assertion at the beginning will fail. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
This is only called from test code. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
- Jun 14, 2019
-
-
- Jun 11, 2019
-
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
- Jun 09, 2019
-
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
We don't actually complete successful authentication, because that would require us to generate a cookie and compute the correct SHA1, which is difficult to do in a deterministic authentication script. However, we do assert that dbus#269 (CVE-2019-12749) has been fixed. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
The DBUS_COOKIE_SHA1 authentication mechanism aims to prove ownership of a shared home directory by having the server write a secret "cookie" into a .dbus-keyrings subdirectory of the desired identity's home directory with 0700 permissions, and having the client prove that it can read the cookie. This never actually worked for non-malicious clients in the case where server uid != client uid (unless the server and client both have privileges, such as Linux CAP_DAC_OVERRIDE or traditional Unix uid 0) because an unprivileged server would fail to write out the cookie, and an unprivileged client would be unable to read the resulting file owned by the server. Additionally, since dbus 1.7.10 we have checked that ~/.dbus-keyrings is owned by the uid of the server (a side-effect of a check added to harden our use of XDG_RUNTIME_DIR), further ruling out successful use by a non-malicious client with a uid differing from the server's. Joe Vennix of Apple Information Security discovered that the implementation of DBUS_COOKIE_SHA1 was susceptible to a symbolic link attack: a malicious client with write access to its own home directory could manipulate a ~/.dbus-keyrings symlink to cause the DBusServer to read and write in unintended locations. In the worst case this could result in the DBusServer reusing a cookie that is known to the malicious client, and treating that cookie as evidence that a subsequent client connection came from an attacker-chosen uid, allowing authentication bypass. This is mitigated by the fact that by default, the well-known system dbus-daemon (since 2003) and the well-known session dbus-daemon (in stable releases since dbus 1.10.0 in 2015) only accept the EXTERNAL authentication mechanism, and as a result will reject DBUS_COOKIE_SHA1 at an early stage, before manipulating cookies. As a result, this vulnerability only applies to: * system or session dbus-daemons with non-standard configuration * third-party dbus-daemon invocations such as at-spi2-core (although in practice at-spi2-core also only accepts EXTERNAL by default) * third-party uses of DBusServer such as the one in Upstart Avoiding symlink attacks in a portable way is difficult, because APIs like openat() and Linux /proc/self/fd are not universally available. However, because DBUS_COOKIE_SHA1 already doesn't work in practice for a non-matching uid, we can solve this vulnerability in an easier way without regressions, by rejecting it early (before looking at ~/.dbus-keyrings) whenever the requested identity doesn't match the identity of the process hosting the DBusServer. Signed-off-by: Simon McVittie <smcv@collabora.com> Closes: dbus/dbus#269 Closes: CVE-2019-12749
-
Simon McVittie authored
This reverts commit edece027. No spec changes have happened since 0.35.
-
- May 31, 2019
-
-
Simon McVittie authored
bus: Clarify names of methods that query owned names Closes #270 See merge request dbus/dbus!114 Reviewed-by: @pwithnall
-
- May 30, 2019
-
-
Simon McVittie authored
It wasn't immediately clear from the names of these method whether they should return TRUE or FALSE for queued owners other than the primary owner. Renaming them makes it obvious that the answer should be TRUE. While I'm there, make the corresponding _dbus_verbose() messages more precise. Signed-off-by: Simon McVittie <smcv@collabora.com> Resolves: dbus/dbus#270
-
Simon McVittie authored
Send destination prefix See merge request dbus/dbus!85
-
- May 17, 2019
-
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
- May 14, 2019
-
-
Adrian Szyndela authored
This adds a description of send_destination_prefix to the dbus-daemon manual. Signed-off-by: Adrian Szyndela <adrian.s@samsung.com> Change-Id: I46e6fa54ee34095c3ac83ec2c06cb91cf5669c7f
-