88 lines
3.0 KiB
Go
88 lines
3.0 KiB
Go
package common
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
)
|
|
|
|
var (
|
|
ColorReset = "\033[0m"
|
|
ColorRed = "\033[31m"
|
|
ColorPurple = "\033[35m"
|
|
ColorLightBlue = "\033[34m"
|
|
ColorCyan = "\033[36m"
|
|
ColorGreen = "\033[32m"
|
|
ColorOrange = "\033[91m"
|
|
ColorGray = "\033[90m"
|
|
ColorYellow = "\033[93m"
|
|
)
|
|
|
|
func Banner() {
|
|
fmt.Printf(`%s
|
|
.------..------..------..------..------..------..------.
|
|
|%s%sP%s%s.--. ||%s%sA%s%s.--. ||%s%sT%s%s.--. ||%s%sD%s%s.--. ||%s%sO%s%s.--. ||%s%sW%s%s.--. ||%s%sN%s%s.--. |
|
|
| :/\: || (\/) || :/\: || :/\: || :/\: || :/\: || :(): |
|
|
| (__) || :\/: || (__) || (__) || :\/: || :\/: || ()() |
|
|
| '--'P|| '--'A|| '--'T|| '--'D|| '--'O|| '--'W|| '--'N|
|
|
'------''------''------''------''------''------''------'
|
|
|
|
%s%s sincerely,
|
|
~ delorean%s
|
|
|
|
`, ColorRed, ColorReset, ColorGray, ColorReset, ColorRed, ColorReset, ColorGray, ColorReset,
|
|
ColorRed, ColorReset, ColorGray, ColorReset, ColorRed, ColorReset, ColorGray, ColorReset,
|
|
ColorRed, ColorReset, ColorGray, ColorReset, ColorRed, ColorReset, ColorGray, ColorReset,
|
|
ColorRed, ColorReset, ColorGray, ColorReset, ColorRed, ColorReset, ColorGray, ColorReset)
|
|
}
|
|
|
|
func Usage() {
|
|
fmt.Fprintf(os.Stderr, `patdown usage:
|
|
(%s-t%s) - target domain
|
|
(%s-n%s) - specific nameserver to snoop, can be multiple
|
|
(%s-c%s) - concurrent threads [%s100%s]
|
|
(%s-s%s) - delay between queries, per thread, in milliseconds [%s100%s]
|
|
|
|
%se.g.%s
|
|
patdown -t supernets.org
|
|
patdown -n ns1.supernets.org -n ns2.supernets.org
|
|
patdown -t supernets.org -c 50 -s 500
|
|
|
|
`, ColorCyan, ColorReset, ColorCyan, ColorReset, ColorCyan, ColorReset, ColorGray, ColorReset, ColorCyan, ColorReset, ColorGray, ColorReset, ColorCyan, ColorReset)
|
|
}
|
|
|
|
var Vendors = map[string]string{
|
|
"Microsoft Defender for Endpoint": "\033[34mMicrosoft Defender for Endpoint\033[0m",
|
|
"VMWare Carbon Black": "\033[36mVMware\033[0m \033[90mCarbon Black\033[0m",
|
|
"CrowdStrike Falcon": "\033[31mCrowdStrike\033[0m \033[1mFalcon\033[0m",
|
|
"CheckPoint Harmony": "\033[35mCheckPoint\033[0m \033[1mHarmony\033[0m",
|
|
"Cybereason": "\033[93mCybereason\033[0m",
|
|
"Trellix": "\033[32mTrellix\033[0m",
|
|
"Palo Alto Networks": "\033[91mPalo Alto Networks\033[0m",
|
|
"SentinelOne": "\033[35mSentinelOne\033[0m",
|
|
"Symantec": "\033[93mSymantec\033[0m",
|
|
"Tanium": "\033[31mTanium\033[0m",
|
|
"Nextron Aurora": "\033[36mNextron\033[0m \033[90mAurora\033[0m",
|
|
"Trend Micro": "\033[31mTrend\033[0m \033[1mMicro\033[0m",
|
|
}
|
|
|
|
func Success(msg string) {
|
|
fmt.Printf(" %s~+~%s %s\n", ColorGreen, ColorReset, msg)
|
|
}
|
|
|
|
func Info(msg string) {
|
|
fmt.Printf(" %s~i~%s %s\n", ColorCyan, ColorReset, msg)
|
|
}
|
|
|
|
func Warning(msg string) {
|
|
fmt.Printf(" %s~!~%s %s\n", ColorYellow, ColorReset, msg)
|
|
}
|
|
|
|
func Error(msg string) {
|
|
fmt.Printf(" %s~x~%s %s\n", ColorRed, ColorReset, msg)
|
|
}
|
|
|
|
func Fatal(msg string) {
|
|
fmt.Printf(" %s~f~%s %s\n", ColorRed, ColorReset, msg)
|
|
os.Exit(-1)
|
|
}
|