Notification webhook for GoPhish

GoPhish Notifier

GoPhish Notifier notifies red team members when their GoPhish campaign status has been updated. It supports both Slack and Email notification profiles by default, but it's very extensible so new notification profiles can be added easily.

Installation

From Source

git clone https://github.com/t94j0/gophish-webhook-slack
cd gophish-webhook-slack
go build -o phishbot

Ansible

See ansible-gophish-notifier

Configuration

The configuration path is /etc/gophish_notifier/config.yml. Below is an example config:

# Host to listen on. If GoPhish is running on the same host, you can set this to 127.0.0.1
listen_host: 0.0.0.0
# Port to listen on
listen_port: 9999
# Webhook path. The full address will be http://<host>:<ip><webhook_path>. Ex: http://127.0.0.1:9999/webhook
webhook_path: /webhook
# Secret for GoPhish authentication
secret: secretpassword123
# Log level. Log levels are panic, fatal, error, warning, info, debug, trace.
log_level: debug
# (Optional) Base URL of GoPhish instance so that Slack notifications can link to campaign
base_url: https://10.0.0.15:3333
# Enables sending profiles. Options are `slack` and `email`. Make sure to configure the required parameters for each profile
profiles:
  - slack
  - email

# Slack Profile
slack:
  # Webhook address. Typically starts with https://hooks.slack.com/services/...
  webhook: '<Your Slack Webhook>'
  # Username displayed in Slack
  username: PhishBot
  # Channel to post in
  channel: '#testing2'
  # Bot profile picture
  emoji: ':blowfish:'
  # (Optional) Disable email, username, and credentials from being sent to Slack
  disable_credentials: true

# Email Profile
# Email to send from
email:
  sender: [email protected]
  # Password of sender email. Uses plain SMTP authentication
  sender_password: password123
  # Recipient of notifications
  recipient: [email protected]
  # Email host to send to
  host: smtp.gmail.com
  # Email host address
  host_addr: smtp.gmail.com:587

# You can also supply an email template for each notification
email_submitted_credentials_template: |
  Someone submitted credentials!
  Email ID - {{ .ID }}
  Email Address - {{ .Email }}
  IP Address - {{ .Address }}
  User Agent - {{ .UserAgent }}
  Username - {{ .Username }}
  Password - {{ .Password }}

Project inspired by gophish-notifications

Owner
Max Harley
'Wonderful', the Flatline said, 'I never did like to do anything simple when I could do it ass-backwards.' ―Neuromancer
Max Harley
Similar Resources

a cross platfrom Go library to place an icon and menu in the notification area

systray is a cross-platform Go library to place an icon and menu in the notification area. Features Supported on Windows, macOS, and Linux Menu items

Dec 27, 2022

⚡ HTTP/2 Apple Push Notification Service (APNs) push provider for Go — Send push notifications to iOS, tvOS, Safari and OSX apps, using the APNs HTTP/2 protocol.

APNS/2 APNS/2 is a go package designed for simple, flexible and fast Apple Push Notifications on iOS, OSX and Safari using the new HTTP/2 Push provide

Jan 1, 2023

A push notification server written in Go (Golang).

A push notification server written in Go (Golang).

gorush A push notification micro server using Gin framework written in Go (Golang) and see the demo app. Contents gorush Contents Support Platform Fea

Jan 8, 2023

Uniqush is a free and open source software system which provides a unified push service for server side notification to apps on mobile devices.

Homepage Download Blog/News @uniqush Introduction Uniqush (\ˈyü-nə-ku̇sh\ "uni" pronounced as in "unified", and "qush" pronounced as in "cushion") is

Jan 9, 2023

Notification library for gophers and their furry friends.

Notification library for gophers and their furry friends.

Shoutrrr Notification library for gophers and their furry friends. Heavily inspired by caronc/apprise. Quick Start As a package Using shoutrrr is easy

Jan 3, 2023

File system event notification library on steroids.

notify Filesystem event notification library on steroids. (under active development) Documentation godoc.org/github.com/rjeczalik/notify Installation

Jan 7, 2023

A push notification server written in Go (Golang).

A push notification server written in Go (Golang).

A push notification micro server using Gin framework written in Go (Golang)

Jan 9, 2023

Exposure Notification Reference Server | Covid-19 Exposure Notifications

Exposure Notification Reference Key Server COVID‑19 Exposure Notifications API Exposure Notification Reference Key Server Documentation In our continu

Jan 7, 2023

Chanify is a safe and simple notification tools. This repository is command line tools for Chanify.

Chanify is a safe and simple notification tools. For developers, system administrators, and everyone can push notifications with API.

Dec 29, 2022

HTTP/2 Apple Push Notification service (APNs) provider for Go with token-based connection

APNs Provider HTTP/2 Apple Push Notification service (APNs) provider for Go with token-based connection Example: key, err := apns.AuthKeyFromFile("Aut

Dec 29, 2022

Rust game update notification

Rust Updater This repository is for update notifications from the rust game which helps server admins to get official game updates How to build Native

Jun 1, 2022

Apple Push Notification service (APNs) mock server

APNs Mock Server Server

Dec 8, 2022

cisasntyi: check iphone stock and send notification to your iphone

for buy iphone 13 notification cisasntyi: check iphone stock and send notification to your iphone install Bark app in your iphone first before you run

Aug 3, 2022

Detecctor is a ⚡ fast, fully customizable 💗 monitoring platform. It uses Telegram as a notification 📥 service

Detecctor is a ⚡ fast, fully customizable 💗 monitoring platform. It uses Telegram as a notification 📥 service. The main components are a TCP server, MongoDB and multiple clients.

Nov 16, 2021

Durudex Notification Service

⚡️ Durudex Notif Service Durudex Notification Service 💡 Prerequisites Go 1.17 grpc ⚙️ Build & Run Create an .env file in the root directory and add t

Dec 13, 2022

remindme is a simple application to set reminders from the CLI that integrates with your system's notification system.

remindme is a simple application to set reminders from the CLI that integrates with your system's notification system.

remindme remindme is a simple application to set reminders from the CLI that integrates with your system's notification system. Examples Once the serv

Nov 24, 2022

ntfy is a super simple pub-sub notification service. It allows you to send desktop notifications via scripts.

ntfy ntfy (pronounce: notify) is a super simple pub-sub notification service. It allows you to send desktop and (soon) phone notifications via scripts

Jan 9, 2023

Monitor star changes of GitHub repo, and send the notification to slack or lark.

stargazers Features monitor the star events of the GitHub repo send the notifications to Slack or Lark How to use For Lark, create a bot called like s

Dec 4, 2022

A simple crawler sending Telegram notification when Refurbished Macbook Air / Pro in stock.

A simple crawler sending Telegram notification when Refurbished Macbook Air / Pro in stock.

Jan 30, 2022
Comments
  • Go panic

    Go panic

    When I get an out of office back the program is panicking..

    time="2022-10-18T10:50:06Z" level=info msg="Using config file: /app/config.yml"
    time="2022-10-18T10:50:06Z" level=info msg="Using Slack sending profile. Will send messages to #phishing"
    time="2022-10-18T10:50:06Z" level=info msg="Server listening on 0.0.0.0:9090/webhook"
    time="2022-10-18T10:51:33Z" level=warning msg="unknown status:Email Sent"
    2022/10/18 10:51:33 http: panic serving 172.17.0.1:42298: runtime error: invalid memory address or nil pointer dereference
    goroutine 5 [running]:
    net/http.(*conn).serve.func1()
    	/usr/local/go/src/net/http/server.go:1850 +0xbf
    panic({0x81bd20, 0xbb2c80})
    	/usr/local/go/src/runtime/panic.go:890 +0x262
    main.handler({0x941328, 0xc000186000}, 0xc00007c400)
    	/root/webhook-phish/main.go:80 +0x5f9
    net/http.HandlerFunc.ServeHTTP(0x0?, {0x941328?, 0xc000186000?}, 0x6db854?)
    	/usr/local/go/src/net/http/server.go:2109 +0x2f
    net/http.serverHandler.ServeHTTP({0x9402c8?}, {0x941328, 0xc000186000}, 0xc00007c400)
    	/usr/local/go/src/net/http/server.go:2947 +0x30c
    net/http.(*conn).serve(0xc0000000a0, {0x9417c0, 0xc000095d10})
    	/usr/local/go/src/net/http/server.go:1991 +0x607
    created by net/http.(*Server).Serve
    	/usr/local/go/src/net/http/server.go:3102 +0x4db
    
  • Version for Discord

    Version for Discord

    Discord is the new hotness and less people use slack, I personally use discord and having the GoPhish notifications go to a channel there would be very helpful.

A simple way of sending messages from the CLI output to your Discord channel with webhook.
A simple way of sending messages from the CLI output to your Discord channel with webhook.

discat A simple way of sending messages from the CLI output to your Discord channel with webhook. Actually, this is a fork version of slackcat that I

Nov 15, 2022
GoPhish by default tips your hand to defenders and security solutions. T

GoPhish by default tips your hand to defenders and security solutions. The container here strips those indicators and makes other changes to hopefully evade detection during operations.

Jan 4, 2023
BluePhish: Open-Source Phishing Toolkit (Direct Fork of GoPhish)
BluePhish: Open-Source Phishing Toolkit (Direct Fork of GoPhish)

BluePhish BluePhish: Open-Source Phishing Toolkit (Direct Fork of GoPhish) Gophish is an open-source phishing toolkit designed for businesses and pene

Jun 1, 2022
Go-notification - Realtime notification system with golang

Realtime notification system Used Apache kafka gRPC & PROTOBUF MongoDB restapi w

Aug 19, 2022
webhook is a lightweight incoming webhook server to run shell commands
webhook is a lightweight incoming webhook server to run shell commands

What is webhook? webhook is a lightweight configurable tool written in Go, that allows you to easily create HTTP endpoints (hooks) on your server, whi

Jan 5, 2023
A k8s vault webhook is a Kubernetes webhook that can inject secrets into Kubernetes resources by connecting to multiple secret managers
A k8s vault webhook is a Kubernetes webhook that can inject secrets into Kubernetes resources by connecting to multiple secret managers

k8s-vault-webhook is a Kubernetes admission webhook which listen for the events related to Kubernetes resources for injecting secret directly from sec

Oct 15, 2022
Kubernetes webhook development (validating admission webhook) tutorial using kubewebhook

pod-exec-guard-kubewebhook-tutorial Introduction This is a tutorial that shows how to develop a Kubernetes admission webhook. To explain this, the tut

Aug 26, 2022
Tcpdump-webhook - Toy Sidecar Injection with Mutating Webhook

tcpdump-webhook A simple demonstration of Kubernetes Mutating Webhooks. Injects

Feb 8, 2022
Webhook-server - Webhook Server for KubeDB resources

webhook-server Webhook Server for KubeDB resources Installation To install KubeD

Feb 22, 2022
File system event notification library on steroids.

notify Filesystem event notification library on steroids. (under active development) Documentation godoc.org/github.com/rjeczalik/notify Installation

Dec 31, 2022