Rebrand to CrowsNest
Added coffee rootCmd
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
GO=go
|
GO=go
|
||||||
|
|
||||||
# Binary name
|
# Binary name
|
||||||
BINARY_NAME=dehasher
|
BINARY_NAME=crowsnest
|
||||||
|
|
||||||
# Build directory
|
# Build directory
|
||||||
BUILD_DIR=build/bin
|
BUILD_DIR=build/bin
|
||||||
@@ -16,7 +16,7 @@ PLATFORMS=linux darwin windows
|
|||||||
ARCHS=amd64 arm64
|
ARCHS=amd64 arm64
|
||||||
|
|
||||||
# Version info from git tag or default
|
# Version info from git tag or default
|
||||||
VERSION=$(shell git describe --tags 2>/dev/null || echo "v1.2.1")
|
VERSION=$(shell git describe --tags 2>/dev/null || echo "v1.3.1")
|
||||||
|
|
||||||
.PHONY: all clean build build-all
|
.PHONY: all clean build build-all
|
||||||
|
|
||||||
|
|||||||
@@ -221,7 +221,7 @@ dehasher set-hunter <redacted>
|
|||||||
|
|
||||||
### Domain Search
|
### Domain Search
|
||||||
Dehasher can perform a domain search for a given domain.
|
Dehasher can perform a domain search for a given domain.
|
||||||
This provides a list of all emails that match the given query.
|
This provides information about company including a description, social media information and any technologies in use.
|
||||||

|

|
||||||
```bash
|
```bash
|
||||||
# Perform a Hunter.io domain search for example.com
|
# Perform a Hunter.io domain search for example.com
|
||||||
@@ -230,7 +230,7 @@ dehasher hunter -d example.com -D
|
|||||||
|
|
||||||
### Email Finder
|
### Email Finder
|
||||||
Dehasher can perform an email finder search for a given domain, first name, and last name.
|
Dehasher can perform an email finder search for a given domain, first name, and last name.
|
||||||
This provides a list of all emails that match the given query.
|
This provides information about a user including a confidence score, and any social media accounts linked to a first name, last name and email.
|
||||||

|

|
||||||
```bash
|
```bash
|
||||||
# Perform a Hunter.io email finder search for example.com
|
# Perform a Hunter.io email finder search for example.com
|
||||||
@@ -239,7 +239,7 @@ dehasher hunter -d example.com -F John -L Doe -E
|
|||||||
|
|
||||||
### Email Verification
|
### Email Verification
|
||||||
Dehasher can perform an email verification search for a given email.
|
Dehasher can perform an email verification search for a given email.
|
||||||
This provides a list of all emails that match the given query.
|
This provides a verification and score of a given email address.
|
||||||

|

|
||||||
```bash
|
```bash
|
||||||
# Perform a Hunter.io email verification search for example@target.com
|
# Perform a Hunter.io email verification search for example@target.com
|
||||||
@@ -248,7 +248,7 @@ dehasher hunter -e example@target.com -V
|
|||||||
|
|
||||||
### Company Enrichment
|
### Company Enrichment
|
||||||
Dehasher can perform a company enrichment search for a given domain.
|
Dehasher can perform a company enrichment search for a given domain.
|
||||||
This provides a list of all emails that match the given query.
|
This provides information about a company given its domain.
|
||||||

|

|
||||||
```bash
|
```bash
|
||||||
# Perform a Hunter.io company enrichment search for example.com
|
# Perform a Hunter.io company enrichment search for example.com
|
||||||
@@ -257,7 +257,7 @@ dehasher hunter -d example.com -C
|
|||||||
|
|
||||||
### Person Enrichment
|
### Person Enrichment
|
||||||
Dehasher can perform a person enrichment search for a given email.
|
Dehasher can perform a person enrichment search for a given email.
|
||||||
This provides a list of all emails that match the given query.
|
This provides information about a user given an email address..
|
||||||

|

|
||||||
```bash
|
```bash
|
||||||
# Perform a Hunter.io person enrichment search for example@target.com
|
# Perform a Hunter.io person enrichment search for example@target.com
|
||||||
@@ -266,7 +266,7 @@ dehasher hunter -e example@target.com -P
|
|||||||
|
|
||||||
### Combined Enrichment
|
### Combined Enrichment
|
||||||
Dehasher can perform a combined enrichment search for a given email.
|
Dehasher can perform a combined enrichment search for a given email.
|
||||||
This provides a list of all emails that match the given query.
|
This is a combination of the company and person enrichments given an email address.
|
||||||

|

|
||||||

|

|
||||||
```bash
|
```bash
|
||||||
|
|||||||
+4
-4
@@ -1,10 +1,10 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/badger"
|
"crowsnest/internal/badger"
|
||||||
"dehasher/internal/debug"
|
"crowsnest/internal/debug"
|
||||||
"dehasher/internal/dehashed"
|
"crowsnest/internal/dehashed"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
|||||||
+3
-3
@@ -1,9 +1,9 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/export"
|
"crowsnest/internal/export"
|
||||||
"dehasher/internal/files"
|
"crowsnest/internal/files"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
|||||||
+6
-6
@@ -1,12 +1,12 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/badger"
|
"crowsnest/internal/badger"
|
||||||
"dehasher/internal/debug"
|
"crowsnest/internal/debug"
|
||||||
"dehasher/internal/export"
|
"crowsnest/internal/export"
|
||||||
"dehasher/internal/files"
|
"crowsnest/internal/files"
|
||||||
hunter "dehasher/internal/hunter.io"
|
hunter "crowsnest/internal/hunter.io"
|
||||||
"dehasher/internal/pretty"
|
"crowsnest/internal/pretty"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
|||||||
+2
-2
@@ -1,8 +1,8 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/easyTime"
|
"crowsnest/internal/easyTime"
|
||||||
"dehasher/internal/pretty"
|
"crowsnest/internal/pretty"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
|
|||||||
+2
-2
@@ -1,8 +1,8 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/pretty"
|
"crowsnest/internal/pretty"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
|
|||||||
+24
-22
@@ -1,8 +1,9 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/badger"
|
"crowsnest/internal/badger"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"github.com/fatih/color"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
"os"
|
"os"
|
||||||
@@ -18,28 +19,14 @@ var (
|
|||||||
Use: "dehasher",
|
Use: "dehasher",
|
||||||
Short: `Dehasher is a cli tool for querying the dehashed api.`,
|
Short: `Dehasher is a cli tool for querying the dehashed api.`,
|
||||||
Long: fmt.Sprintf(
|
Long: fmt.Sprintf(
|
||||||
"%s\n%s",
|
"%s\n",
|
||||||
`
|
`
|
||||||
______ _______ _______ _______ _______ _______
|
╔═╗┬─┐┌─┐┬ ┬┌─┐╔╗╔┌─┐┌─┐┌┬┐
|
||||||
( __ \ ( ____ \|\ /|( ___ )( ____ \|\ /|( ____ \( ____ )
|
║ ├┬┘│ ││││└─┐║║║├┤ └─┐ │
|
||||||
| ( \ )| ( \/| ) ( || ( ) || ( \/| ) ( || ( \/| ( )|
|
╚═╝┴└─└─┘└┴┘└─┘╝╚╝└─┘└─┘ ┴
|
||||||
| | ) || (__ | (___) || (___) || (_____ | (___) || (__ | (____)|
|
|
||||||
| | | || __) | ___ || ___ |(_____ )| ___ || __) | __)
|
Crow’s Nest OSINT Recon Suite
|
||||||
| | ) || ( | ( ) || ( ) | ) || ( ) || ( | (\ (
|
⚓ A KrakenTech Intelligence Tool
|
||||||
| (__/ )| (____/\| ) ( || ) ( |/\____) || ) ( || (____/\| ) \ \__
|
|
||||||
(______/ (_______/|/ \||/ \|\_______)|/ \|(_______/|/ \__/
|
|
||||||
An Ar1ste1a Project
|
|
||||||
`,
|
|
||||||
`––•–√\/––√\/––•––––•–√\/––√\/––•––––•–√\/––√\/––•––√\/––•––––•–√\/––√\/––•––
|
|
||||||
Dehasher can query the query API for:
|
|
||||||
- Emails - Usernames - Password
|
|
||||||
- Hashes - IP Addresses - Names
|
|
||||||
- VINs - License Plates - Addresses
|
|
||||||
- Phones - Social Media - Crypto Currency Addresses
|
|
||||||
Dehasher supports:
|
|
||||||
- Regex Matching
|
|
||||||
- Exact Matching
|
|
||||||
––•–√\/––√\/––•––––•–√\/––√\/––•––––•–√\/––√\/––•––√\/––•––––•–√\/––√\/––•––
|
|
||||||
`,
|
`,
|
||||||
),
|
),
|
||||||
Version: "v1.2.1",
|
Version: "v1.2.1",
|
||||||
@@ -69,6 +56,7 @@ func init() {
|
|||||||
rootCmd.AddCommand(setDehashedKeyCmd)
|
rootCmd.AddCommand(setDehashedKeyCmd)
|
||||||
rootCmd.AddCommand(setHunterKeyCmd)
|
rootCmd.AddCommand(setHunterKeyCmd)
|
||||||
rootCmd.AddCommand(setLocalDb)
|
rootCmd.AddCommand(setLocalDb)
|
||||||
|
rootCmd.AddCommand(buyMeCoffeeCmd)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Command to set API key
|
// Command to set API key
|
||||||
@@ -132,6 +120,20 @@ var setLocalDb = &cobra.Command{
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var buyMeCoffeeCmd = &cobra.Command{
|
||||||
|
Use: "coffee",
|
||||||
|
Short: "Support the project by buying a coffee",
|
||||||
|
Run: func(cmd *cobra.Command, args []string) {
|
||||||
|
fmt.Println(color.HiRedString(" ;)( ;"))
|
||||||
|
fmt.Println(color.HiCyanString(" We Hope You Enjoy Our Product :----:"))
|
||||||
|
fmt.Println(color.HiCyanString(" C|====|"))
|
||||||
|
fmt.Println(color.HiCyanString(" | |"))
|
||||||
|
fmt.Print(color.HiGreenString(" Support the project by buying a coffee: "))
|
||||||
|
fmt.Print(color.BlueString("https://buymeacoffee.com/ehosinskiz "))
|
||||||
|
fmt.Println(color.HiCyanString("`----'"))
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
// Helper functions to store API credentials
|
// Helper functions to store API credentials
|
||||||
func storeDehashedApiKey(key string) error {
|
func storeDehashedApiKey(key string) error {
|
||||||
err := badger.StoreDehashedKey(key)
|
err := badger.StoreDehashedKey(key)
|
||||||
|
|||||||
+6
-6
@@ -1,12 +1,12 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/debug"
|
"crowsnest/internal/debug"
|
||||||
"dehasher/internal/export"
|
"crowsnest/internal/export"
|
||||||
"dehasher/internal/files"
|
"crowsnest/internal/files"
|
||||||
"dehasher/internal/pretty"
|
"crowsnest/internal/pretty"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"dehasher/internal/whois"
|
"crowsnest/internal/whois"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
|||||||
+3
-3
@@ -1,9 +1,9 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/cmd"
|
"crowsnest/cmd"
|
||||||
"dehasher/internal/badger"
|
"crowsnest/internal/badger"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/winking324/rzap"
|
"github.com/winking324/rzap"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
|||||||
@@ -2,9 +2,9 @@ package dehashed
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"crowsnest/internal/debug"
|
||||||
|
"crowsnest/internal/sqlite"
|
||||||
"crypto/sha256"
|
"crypto/sha256"
|
||||||
"dehasher/internal/debug"
|
|
||||||
"dehasher/internal/sqlite"
|
|
||||||
"encoding/hex"
|
"encoding/hex"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package dehashed
|
package dehashed
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/debug"
|
"crowsnest/internal/debug"
|
||||||
"dehasher/internal/export"
|
"crowsnest/internal/export"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package easyTime
|
package easyTime
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/debug"
|
"crowsnest/internal/debug"
|
||||||
"fmt"
|
"fmt"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
"os"
|
"os"
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package export
|
package export
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/files"
|
"crowsnest/internal/files"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"encoding/xml"
|
"encoding/xml"
|
||||||
"errors"
|
"errors"
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package export
|
package export
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/files"
|
"crowsnest/internal/files"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"encoding/xml"
|
"encoding/xml"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package hunter_io
|
package hunter_io
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/debug"
|
"crowsnest/internal/debug"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package pretty
|
package pretty
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/charmbracelet/lipgloss"
|
"github.com/charmbracelet/lipgloss"
|
||||||
"github.com/charmbracelet/lipgloss/tree"
|
"github.com/charmbracelet/lipgloss/tree"
|
||||||
|
|||||||
@@ -1,11 +1,15 @@
|
|||||||
package sqlite
|
package sqlite
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"dehasher/internal/files"
|
"crowsnest/internal/files"
|
||||||
"fmt"
|
"fmt"
|
||||||
"gorm.io/gorm"
|
"gorm.io/gorm"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type IString interface {
|
||||||
|
String() string
|
||||||
|
}
|
||||||
|
|
||||||
type DBOptions struct {
|
type DBOptions struct {
|
||||||
Username string
|
Username string
|
||||||
Email string
|
Email string
|
||||||
|
|||||||
@@ -2,9 +2,9 @@ package whois
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
"dehasher/internal/debug"
|
"crowsnest/internal/debug"
|
||||||
"dehasher/internal/dehashed"
|
"crowsnest/internal/dehashed"
|
||||||
"dehasher/internal/sqlite"
|
"crowsnest/internal/sqlite"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|||||||
Reference in New Issue
Block a user