Comparison Overview
Barr Engineering Co.

Barr Engineering Co.
4300 MarketPointe Drive, Suite 200, Minneapolis, Minnesota, US, 55435
Last Update: 01/04/2026
Barr provides engineering and environmental consulting services to clients across the Midwest, throughout the Americas, and around the world. We have been employee-owned since 1966 and trace our origins to the early 1900s. Working together, our 1,100+ engineers, scienti...

WSP
1600, boul. René-Lévesque ouest, 11e étage, Montreal, Quebec, CA, H3H 1P9
Last Update: 29/03/2026
We are one of the world’s leading professional services firms, uniting our engineering, advisory and science-based expertise to shape communities to advance humanity. From local beginnings to a globe-spanning presence today, we operate in over 50 countries and emplo...
Compliance Ranges Comparison

Barr Engineering Co.







WSP






Benchmark & Cyber Underwriting Signals
Incidents vs Professional Services Industry Avg (This Year)
No incidents recorded for Barr Engineering Co. in 2026.
Incidents vs Professional Services Industry Avg (This Year)
No incidents recorded for WSP in 2026.
Incident History - Barr Engineering Co. (X = Date, Y = Severity)
Barr Engineering Co. cyber incidents detection timeline including parent company and subsidiaries.
Incident History - WSP (X = Date, Y = Severity)
WSP cyber incidents detection timeline including parent company and subsidiaries.
Notable Incidents

Barr Engineering Co.

WSP
FAQ
Latest Global CVEs
The CONS_HISTORY ioctl handler did not adequately validate the requested history size. A large value caused an integer overflow in the buffer size calculation, resulting in a heap allocation smaller than expected. Subsequent initialization of the buffer wrote beyond the end of the allocation. An unprivileged local user with access to a vt(4) device can trigger an out-of-bounds write in the kernel, potentially escalating privileges.
The ELF image activator cleared per-process ASLR preference flags for setuid binaries after the code that computes the PIE base address, rather than before. As a result, a user-requested ASLR disable was still in effect at the point where the base address was chosen. An unprivileged local user can disable ASLR for a setuid PIE binary by calling procctl(2) before execve(2). This makes exploitation of any separate memory corruption vulnerability in that binary significantly easier.
Second, the audio buffer backing a mapping could be freed when the device was closed even though the mapping remained valid. The freed memory could then be reused elsewhere while still accessible through the stale mapping. The /dev/dsp device nodes are world-accessible by default. On a system with an audio device, either issue allows an unprivileged local user to read and write kernel memory, which can be used to escalate privileges, potentially gaining full control of the affected system. At a minimum, an attacker can crash the kernel, resulting in a Denial of Service (DoS).
The Linuxulator determined whether a binary was set-user-ID or set-group-ID by checking the P_SUGID process flag. During execve(2), this flag is not yet set at the point where the auxiliary vector is constructed, so AT_SECURE was incorrectly set to zero for set-user-ID and set-group-ID executables. An unprivileged local user can inject a shared library via LD_PRELOAD into a set-user-ID or set-group-ID Linux binary, gaining the privileges of that binary.
The kernel handler for IPV6_MSFILTER dropped a serializing lock in order to copy the source-filter list from userspace, then reacquired the lock. During this window another thread could free the multicast filter structure, leaving the handler with a stale pointer to freed memory. An unprivileged local user can exploit this use-after-free to escalate privileges.