Documentation ¶
Index ¶
- Constants
- func RegisterSimpleReportCheck(check SimpleReportCheck)
- type AnalyticsIDsCheck
- type AnonymityReport
- func (osr *AnonymityReport) AddExifImage(location string)
- func (osr *AnonymityReport) AddExifTag(name string, value string)
- func (osr *AnonymityReport) AddIPAddress(ip string)
- func (osr *AnonymityReport) AddRelatedClearnetDomain(domain string)
- func (osr *AnonymityReport) AddRelatedOnionService(service string)
- func (osr *AnonymityReport) Serialize() (string, error)
- type ApacheModStatusCheck
- type BitcoinAddressesCheck
- type BitcoinService
- type EmailAddressCheck
- type ExifImage
- type ExifImagesCheck
- type ExifTag
- type IPAddressCheck
- type OnionScanReport
- type OpenDirectoriesCheck
- type PGPKey
- type PrivateKeyCheck
- type RelatedClearnetDomainsCheck
- type RelatedOnionServicesCheck
- type Risk
- type SimpleReport
- type SimpleReportCheck
Constants ¶
const SEV_CRITICAL = "critical"
const SEV_HIGH = "high"
const SEV_INFO = "info"
const SEV_LOW = "low"
const SEV_MEDIUM = "medium"
Variables ¶
This section is empty.
Functions ¶
func RegisterSimpleReportCheck ¶
func RegisterSimpleReportCheck(check SimpleReportCheck)
Types ¶
type AnalyticsIDsCheck ¶
type AnalyticsIDsCheck struct{}
AnalyticsIDsCheck implementation
func (*AnalyticsIDsCheck) Check ¶
func (srt *AnalyticsIDsCheck) Check(out *SimpleReport, report *AnonymityReport)
type AnonymityReport ¶
type AnonymityReport struct { PrivateKeyDetected bool `json:"privateKeyDetected"` // Apache Specific FoundApacheModStatus bool `json:"foundApacheModStatus"` ServerVersion string `json:"serverVersion"` RelatedOnionServices []string `json:"relatedOnionServices"` RelatedClearnetDomains []string `json:"relatedOnionDomains"` IPAddresses []string `json:"ipAddresses"` EmailAddresses []string `json:"emailAddresses"` AnalyticsIDs []string `json:"analyticsIDs"` BitcoinAddresses []string `json:"bitcoinAddresses"` LinkedOnions []string `json:"linkedOnions"` OpenDirectories []string `json:"openDirectories"` ExifImages []ExifImage `json:"exifImages"` }
This is a summary report without all the crawl information
func (*AnonymityReport) AddExifImage ¶
func (osr *AnonymityReport) AddExifImage(location string)
func (*AnonymityReport) AddExifTag ¶
func (osr *AnonymityReport) AddExifTag(name string, value string)
func (*AnonymityReport) AddIPAddress ¶
func (osr *AnonymityReport) AddIPAddress(ip string)
func (*AnonymityReport) AddRelatedClearnetDomain ¶
func (osr *AnonymityReport) AddRelatedClearnetDomain(domain string)
func (*AnonymityReport) AddRelatedOnionService ¶
func (osr *AnonymityReport) AddRelatedOnionService(service string)
func (*AnonymityReport) Serialize ¶
func (osr *AnonymityReport) Serialize() (string, error)
type ApacheModStatusCheck ¶
type ApacheModStatusCheck struct{}
ApacheModStatusCheck implementation
func (*ApacheModStatusCheck) Check ¶
func (srt *ApacheModStatusCheck) Check(out *SimpleReport, report *AnonymityReport)
type BitcoinAddressesCheck ¶
type BitcoinAddressesCheck struct{}
BitcoinAddressesCheck implementation
func (*BitcoinAddressesCheck) Check ¶
func (srt *BitcoinAddressesCheck) Check(out *SimpleReport, report *AnonymityReport)
type BitcoinService ¶
type EmailAddressCheck ¶
type EmailAddressCheck struct{}
EmailAddressCheck implementation
func (*EmailAddressCheck) Check ¶
func (srt *EmailAddressCheck) Check(out *SimpleReport, report *AnonymityReport)
type ExifImagesCheck ¶
type ExifImagesCheck struct{}
ExifImagesCheck implementation
func (*ExifImagesCheck) Check ¶
func (srt *ExifImagesCheck) Check(out *SimpleReport, report *AnonymityReport)
type IPAddressCheck ¶
type IPAddressCheck struct{}
IPAddressCheck implementation
func (*IPAddressCheck) Check ¶
func (srt *IPAddressCheck) Check(out *SimpleReport, report *AnonymityReport)
type OnionScanReport ¶
type OnionScanReport struct { HiddenService string `json:"hiddenService"` DateScanned time.Time `json:"dateScanned"` Online bool `json:"online"` PerformedScans []string `json:"performedScans"` // Summary WebDetected bool `json:"webDetected"` TLSDetected bool `json:"tlsDetected"` SSHDetected bool `json:"sshDetected"` RicochetDetected bool `json:"ricochetDetected"` IRCDetected bool `json:"ircDetected"` FTPDetected bool `json:"ftpDetected"` SMTPDetected bool `json:"smtpDetected"` BitcoinDetected bool `json:"bitcoinDetected"` MongoDBDetected bool `json:"mongodbDetected"` VNCDetected bool `json:"vncDetected"` XMPPDetected bool `json:"xmppDetected"` SkynetDetected bool `json:"skynetDetected"` // Site Specific Crawls map[string]int `json:"crawls"` // Page Content PGPKeys []PGPKey `json:"pgpKeys"` // TLS Certificates []x509.Certificate `json:"certificates"` // Bitcoin BitcoinServices map[string]*BitcoinService `json:"bitcoinServices"` // SSH SSHKey string `json:"sshKey"` SSHBanner string `json:"sshBanner"` // FTP FTPFingerprint string `json:"ftpFingerprint"` FTPBanner string `json:"ftpBanner"` // SMTP SMTPFingerprint string `json:"smtpFingerprint"` SMTPBanner string `json:"smtpBanner"` // Meta Info NextAction string `json:"lastAction"` TimedOut bool `json:"timedOut"` Error error `json:"error"` // Sub Reports AnonymityReport *AnonymityReport `json:"identifierReport"` SimpleReport *SimpleReport `json:"simpleReport"` }
func LoadReportFromFile ¶
func LoadReportFromFile(filename string) (OnionScanReport, error)
LoadReportFromFile creates an OnionScan report from a json encoded file.
func NewOnionScanReport ¶
func NewOnionScanReport(hiddenService string) *OnionScanReport
NewOnionScanReport creates a new OnionScan report for the given hidden service.
func (*OnionScanReport) AddBitcoinService ¶
func (osr *OnionScanReport) AddBitcoinService(name string) *BitcoinService
AddBitcoinService adds a new Bitcoin Service to the Report
func (*OnionScanReport) AddPGPKey ¶
func (osr *OnionScanReport) AddPGPKey(armoredKey, identity, fingerprint string)
AddPGPKey adds a new PGP Key to the Report
func (*OnionScanReport) Serialize ¶
func (osr *OnionScanReport) Serialize() (string, error)
Serialize converts the report to a JSON representation
type OpenDirectoriesCheck ¶
type OpenDirectoriesCheck struct{}
OpenDirectoriesCheck implementation
func (*OpenDirectoriesCheck) Check ¶
func (srt *OpenDirectoriesCheck) Check(out *SimpleReport, report *AnonymityReport)
type PrivateKeyCheck ¶
type PrivateKeyCheck struct{}
PrivateKeyCheck implementation
func (*PrivateKeyCheck) Check ¶
func (srt *PrivateKeyCheck) Check(out *SimpleReport, report *AnonymityReport)
type RelatedClearnetDomainsCheck ¶
type RelatedClearnetDomainsCheck struct{}
RelatedClearnetDomainsCheck implementation
func (*RelatedClearnetDomainsCheck) Check ¶
func (srt *RelatedClearnetDomainsCheck) Check(out *SimpleReport, report *AnonymityReport)
type RelatedOnionServicesCheck ¶
type RelatedOnionServicesCheck struct{}
RelatedOnionDomainsCheck implementation
func (*RelatedOnionServicesCheck) Check ¶
func (srt *RelatedOnionServicesCheck) Check(out *SimpleReport, report *AnonymityReport)
type SimpleReport ¶
type SimpleReport struct { HiddenService string `json:"hiddenService"` Risks []Risk `json:"risks"` }
func NewSimpleReport ¶
func NewSimpleReport(hiddenService string) *SimpleReport
func SummarizeToSimpleReport ¶
func SummarizeToSimpleReport(hiddenService string, report *AnonymityReport) *SimpleReport
func (*SimpleReport) Format ¶
func (osr *SimpleReport) Format(width int) (string, error)
Format as human-readable text to be printed to console
func (*SimpleReport) Serialize ¶
func (osr *SimpleReport) Serialize() (string, error)
Format as JSON
type SimpleReportCheck ¶
type SimpleReportCheck interface {
Check(out *SimpleReport, report *AnonymityReport)
}
Interface for SimpleReport checks