{"id":19544870,"url":"https://github.com/ariary/slackspoofing","last_synced_at":"2026-05-15T04:33:18.483Z","repository":{"id":37430646,"uuid":"505774812","full_name":"ariary/SlackSpoofing","owner":"ariary","description":"Spoof visual user identity  to send message in Slack","archived":false,"fork":false,"pushed_at":"2022-06-23T12:50:31.000Z","size":16,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-26T05:42:25.525Z","etag":null,"topics":["slack","spoofing"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ariary.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-06-21T09:26:04.000Z","updated_at":"2022-06-21T09:33:19.000Z","dependencies_parsed_at":"2022-08-18T19:21:55.529Z","dependency_job_id":null,"html_url":"https://github.com/ariary/SlackSpoofing","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ariary/SlackSpoofing","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariary%2FSlackSpoofing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariary%2FSlackSpoofing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariary%2FSlackSpoofing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariary%2FSlackSpoofing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ariary","download_url":"https://codeload.github.com/ariary/SlackSpoofing/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariary%2FSlackSpoofing/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33053789,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"online","status_checked_at":"2026-05-15T02:00:06.351Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["slack","spoofing"],"created_at":"2024-11-11T03:32:47.755Z","updated_at":"2026-05-15T04:33:18.462Z","avatar_url":"https://github.com/ariary.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Slack Impersonation\n\nSpoof visual user identity in Slack to send message\n\n## Usage\n\n***Requirements:***\n* Slack app with a bot token with scope `users:read` included\n* Incoming webhook (do not use app incoming webhook)\n\n*If the different flags are not provided they will be asked as input*\n\n### » to channel\nSend a message in ***`#general`*** channel spoofing `Toto RINA` visual identity:\n```shell\nslack-spoofer -u \"Toto RINA\" -c \"#general\" -m 'Hi \u003c!channel|channel\u003e!\\nToday I'm the one paying for the meal!' -t $(cat .credentials.json | jq -r .bot_token) -w $(cat .credentials.json | jq -r .webhook)\n```\n\n### » to user (direct message)\nSend a direct message to ***`Elon MUSK`*** spoofing `Jeff BEZOS` visual identity:\n```shell\nslack-spoofer dm -u \"Jeff BEZOS\" -r \"Elon MUSK\" -m 'Please find all my secrets \u003chttps://maliciouscvs|here\u003e' -t $(cat .credentials.json | jq -r .bot_token) -w $(cat .credentials.json | jq -r .webhook)\n```\n\n## Install\n```shell\ngit clone https://github.com/ariary/SlackSpoofing\nmake before.build \u0026\u0026 make build.slack-spoofer\n```\n## Notes\n\nThe tricks is not revolutionary:\n1. Use slack app to map username -\u003e user avatar url\n2. Send message with incoming webhook with Bot username = username and Bot avatar url = user avatar url\n\n* ***Pentester idea:*** If you obtain an incoming webhook (leak, compromised etc) you can use it. Keep in mind that the scope is linked with the webhook creator (ie. webhook can publish in private channel where the creator is whitout needing an invitation)\n* Step 1 is automated here but can be manual if you do not have the permission to create slack app (view user profile, right-click on avatar, \"Copy avatar url\" )\n* Get user id (useful to mention them in message):  `slack-spoofer getid -u \"[USER]\" -t $(cat .credentials.json | jq -r .bot_token) -w $(cat .credentials.json | jq -r .webhook)`\n* `\u003c!channel|channel\u003e`send a notification to all channel users and `\u003c!here|here\u003e` to all channel online users\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fariary%2Fslackspoofing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fariary%2Fslackspoofing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fariary%2Fslackspoofing/lists"}