“share.google” Spam

Malicious automated activities are hijacking accounts and then direct mentioning 30 to 40 accounts preceded by a URL that is a Google domain followed by a share dot google (URL-shortened) link (eg google.tld/share.google?q=VALUE)

IFTAS will refer to this activity as

This page will track helpful posts and mitigations for administrators and end users. See below.

DO NOT CLICK/TAP ANY LINKS ASSOCIATED WITH THESE MESSAGES – there are reports of these links serving malware.

For Administrators

Scary "Grampus" Jerry 👻

There are major account take-over problems happening right now on mastodon instances – all appearances are that the actor is using stolen passwords, probably from malware running on desktops. I've suspended hundreds of compromised accounts over the past 48 hours, but only two on mine.

If you run a mastodon instance, here is a postgres query I use to randomize the passwords of accounts that have been inactive for 6 months or more. It also removes logged in sessions. This doesn't lock people out, just makes them perform a password reset. Yes, I wish I didn't have to do this, but here we are. I hope it helps someone else.

BEGIN;

CREATE TEMP TABLE dormant_batch ON COMMIT DROP AS
SELECT u.id AS user_id
FROM users u
WHERE COALESCE(u.current_sign_in_at, u.created_at) < now() – interval '6 months'
AND NOT u.otp_required_for_login
AND NOT EXISTS (SELECT 1 FROM webauthn_credentials w WHERE w.user_id = u.id)
AND NOT EXISTS (SELECT 1 FROM oauth_access_tokens t
WHERE t.resource_owner_id = u.id
AND t.revoked_at IS NULL
AND t.last_used_at > now() – interval '6 months');
UPDATE users u
SET encrypted_password = '$2a$10$' || left(replace(gen_random_uuid()::text || gen_random_uuid()::text, '-', ''), 53),
updated_at = now()
FROM dormant_batch b
WHERE u.id = b.user_id;

UPDATE oauth_access_tokens t SET revoked_at = now()
FROM dormant_batch b
WHERE t.resource_owner_id = b.user_id AND t.revoked_at IS NULL;

DELETE FROM session_activations s
USING dormant_batch b
WHERE s.user_id = b.user_id;

SELECT COALESCE(y::text, 'total') AS last_seen_year, count(*) AS locked
FROM (SELECT date_part('year', COALESCE(u.current_sign_in_at, u.created_at))::int AS y
FROM dormant_batch b JOIN users u ON u.id = b.user_id) s
GROUP BY ROLLUP (y) ORDER BY y NULLS LAST;

COMMIT;

2026-10-17, 15:50 221 boosts 165 favorites

Treatnik 🎃

Mastodon admins, if you're looking for a way to find/report accounts affected by the current spam wave, you can run the query below. There may be some false positives, but the results are largely accurate.

Drop into the DB first (sudo -u mastodon psql mastodon_production) and run:

WITH bounds AS (
SELECT ((extract(epoch FROM timestamptz '2026-10-15 00:00:00-04') * 1000)::bigint << 16) AS min_id
),
counts AS (
SELECT m.status_id, COUNT(*) AS mention_count
FROM mentions m, bounds b
WHERE m.status_id >= b.min_id
GROUP BY m.status_id
HAVING COUNT(*) >= 10
)
SELECT s.id,
s.created_at,
a.username || COALESCE('@' || a.domain, '') AS author,
c.mention_count,
COALESCE(s.url, s.uri) AS link
FROM counts c
JOIN statuses s ON s.id = c.status_id
JOIN accounts a ON a.id = s.account_id
WHERE s.deleted_at IS NULL
AND a.suspended_at IS NULL
AND (s.text ILIKE '%google%' OR s.spoiler_text ILIKE '%google%')
ORDER BY s.created_at DESC;

2026-10-17, 13:49 27 boosts 18 favorites

For End Users

  • Add two factor authentication to your account if your service supports it.
  • If you believe your password may have been compromised (or if you re-use passwords) change your password. Longer is better than complex.
    • You can check to see if password associated with the email address you used to create your account has been compromised: https://haveibeenpwned.com/
  • Where possible, use a password manager to ensure you use a unique password for every Internet service you use. EFF has good guidance on this decision.
  • If your service supports filtering/hiding messages, filter “share.google” or “/share.google?” – but be aware this will filter/hide messages that contain non-malicious links from other people who use Google products to share links online.

Something To Add?

If you have specific guidance for Administrators or End Users you’d like IFTAS to review, please send it to @iftas or [email protected] for review, please include the hashtag


IFTAS

Nonprofit trust and safety support for volunteer social web content moderators

54 posts
399 followers

IFTAS is a non-profit organisation committed to advocating for independent, sovereign technology, empowering and supporting the people who keep decentralised social platforms safe, fair, and inclusive..

Discover more from IFTAS

Subscribe now to keep reading and get access to the full archive.

Continue reading