After the 319 search-hijacking extensions, I wanted a quick list of what’s installed in every browser profile without clicking through menus.
1. List extension IDs and names
for m in ~/.config/{chromium,google-chrome}/*/Extensions/*/*/manifest.json; do
[ -f "$m" ] || continue
id=$(basename "$(dirname "$(dirname "$m")")")
name=$(python3 -c 'import json,sys;print(json.load(open(sys.argv[1])).get("name"))' "$m")
echo "$id $name"
done | sort -u
Names like __MSG_appName__ are translated strings. The ID is what matters.
2. Compare with the bad list
Save Socket’s published IDs to bad.txt, one per line, then:
(run the loop above) > installed.txt
awk '{print $1}' installed.txt | grep -Fxf bad.txt
3. Clean up
Remove matches from the browser’s extensions page, not by deleting folders, and then check your default search engine. While you’re there, remove anything you don’t use. Fewer extensions, smaller attack surface.
Review before you run anything: read the docs yourself, back up your config, and try it somewhere you can afford to break first.
God Bless, and Use the Source!