Comparison Overview
Mosaic North America

Mosaic North America
100 Liberty Street, Suite 100, Toronto, Ontario, CA, M6K 3L7
Last Update: 04/04/2026
Mosaic is a North American integrated marketing agency that builds brands in dimension. Depending on clients’ needs and based on data-led insights, Mosaic pulls in the right capability experts at the right time to create connected brand experiences across the right touc...

Havas
29/30 Quai de Dion Bouton, Puteaux, FR, 92800
Last Update: 14/09/2026
Founded in 1835 in Paris, Havas is one of the world’s largest global communications groups, with nearly 23,000 people in over 100 countries. With the ambition to help brands unlock Growth, Powered by Desire, Havas brings together creativity, media, technology and produc...
Compliance Ranges Comparison

Mosaic North America







Havas






Benchmark & Cyber Underwriting Signals
Incidents vs Advertising Services Industry Avg (This Year)
No incidents recorded for Mosaic North America in 2026.
Incidents vs Advertising Services Industry Avg (This Year)
No incidents recorded for Havas in 2026.
Incident History - Mosaic North America (X = Date, Y = Severity)
Mosaic North America cyber incidents detection timeline including parent company and subsidiaries.
Incident History - Havas (X = Date, Y = Severity)
Havas cyber incidents detection timeline including parent company and subsidiaries.
Notable Incidents

Mosaic North America

Havas
FAQ
Latest Global CVEs
Requesting a user or organization profile page (`GET /{username}`) with an `Accept: application/rss+xml` or `Accept: application/atom+xml` header returned the owner's activity feed without the visibility check that the profile page and the `.rss` and `.atom` routes apply. Anonymous users, restricted users and non-members could confirm the existence of limited or private users and private organizations and read their profile details and public activity, also when `[other] ENABLE_FEED` was disabled. Activity in private repositories was not included.
The Gitea API endpoint for creating push mirrors (`POST /api/v1/repos/{owner}/{repo}/push_mirrors`) checked only whether mirroring was enabled and not the `[mirror] DISABLE_NEW_PUSH` setting that the web interface enforces. A repository administrator could therefore create new push mirrors on instances where the site administrator had disabled them. A push mirror pushes all refs of the repository to a remote chosen by the caller, on each commit or on a schedule.
The Gitea API endpoint `GET /api/v1/repos/{owner}/{repo}/media/{filepath}` wrote files of up to 1 KiB that are stored directly in Git, not in LFS, to the response without the content type and disposition headers Gitea uses for user content. An HTML file committed to a repository was therefore rendered by the browser on the Gitea origin. A user who can push to a repository could run JavaScript in the session of a victim who opens the media URL and act with the victim's permissions.
With `[repository] FORCE_PRIVATE = true`, Gitea creates new repositories as private, but the post-receive hook still applied the `repo.private=false` push option to an empty repository created by push. Any user who can create repositories could make their new repository public in violation of the instance policy. The default configuration is not affected.
The Gitea push mirror API checked whether the repository owner, instead of the requesting user, may use local file system paths. On instances with `[security] IMPORT_LOCAL_PATHS = true`, a repository administrator who is not allowed to import local paths could add a push mirror to a local path on the server when the repository owner has that permission. Gitea then pushed the repository's refs into an existing Git repository at that path with the permissions of the Gitea process.