cloud

package
v0.0.0-...-d1533f9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AWSDiscovery

type AWSDiscovery struct {
	// contains filtered or unexported fields
}

AWSDiscovery discovers AWS assets

func NewAWSDiscovery

func NewAWSDiscovery(logger *logger.Logger) *AWSDiscovery

NewAWSDiscovery creates a new AWS discovery client

func (*AWSDiscovery) DiscoverCloudFront

func (a *AWSDiscovery) DiscoverCloudFront(ctx context.Context, domain string) ([]CloudFrontDistribution, error)

DiscoverCloudFront discovers CloudFront distributions

func (*AWSDiscovery) DiscoverEC2Metadata

func (a *AWSDiscovery) DiscoverEC2Metadata(ctx context.Context, urls []string) ([]EC2MetadataExposure, error)

DiscoverEC2Metadata attempts to find exposed EC2 metadata

func (*AWSDiscovery) DiscoverElasticBeanstalk

func (a *AWSDiscovery) DiscoverElasticBeanstalk(ctx context.Context, domain string) ([]ElasticBeanstalkApp, error)

DiscoverElasticBeanstalk discovers Elastic Beanstalk applications

func (*AWSDiscovery) DiscoverLambdaFunctions

func (a *AWSDiscovery) DiscoverLambdaFunctions(ctx context.Context, domain string) ([]LambdaFunction, error)

DiscoverLambdaFunctions attempts to discover Lambda function URLs

func (*AWSDiscovery) DiscoverS3Buckets

func (a *AWSDiscovery) DiscoverS3Buckets(ctx context.Context, domain string) ([]S3Bucket, error)

DiscoverS3Buckets discovers S3 buckets for a domain

type AppEngineApp

type AppEngineApp struct {
	ProjectID string
	Region    string
	URL       string
}

AppEngineApp represents a Google App Engine application

type AzureApp

type AzureApp struct {
	Name string
	URL  string
	Type string
}

AzureApp represents an Azure application

type AzureDiscovery

type AzureDiscovery struct {
	// contains filtered or unexported fields
}

AzureDiscovery discovers Azure assets

func NewAzureDiscovery

func NewAzureDiscovery(logger *logger.Logger) *AzureDiscovery

NewAzureDiscovery creates a new Azure discovery client

func (*AzureDiscovery) DiscoverAzureApps

func (a *AzureDiscovery) DiscoverAzureApps(ctx context.Context, domain string) ([]AzureApp, error)

DiscoverAzureApps discovers Azure App Service applications

func (*AzureDiscovery) DiscoverAzureContainerRegistry

func (a *AzureDiscovery) DiscoverAzureContainerRegistry(ctx context.Context, domain string) ([]ContainerRegistry, error)

DiscoverAzureContainerRegistry discovers Azure Container Registry repositories

func (*AzureDiscovery) DiscoverAzureFunctions

func (a *AzureDiscovery) DiscoverAzureFunctions(ctx context.Context, domain string) ([]AzureFunction, error)

DiscoverAzureFunctions discovers Azure Functions

func (*AzureDiscovery) DiscoverBlobContainers

func (a *AzureDiscovery) DiscoverBlobContainers(ctx context.Context, domain string) ([]BlobContainer, error)

DiscoverBlobContainers discovers Azure Blob Storage containers

func (*AzureDiscovery) DiscoverKeyVaults

func (a *AzureDiscovery) DiscoverKeyVaults(ctx context.Context, domain string) ([]KeyVault, error)

DiscoverKeyVaults attempts to discover Azure Key Vaults

type AzureFunction

type AzureFunction struct {
	Name string
	URL  string
}

AzureFunction represents an Azure Function app

type BigQueryDataset

type BigQueryDataset struct {
	ProjectID string
	DatasetID string
}

BigQueryDataset represents a BigQuery dataset

type BlobContainer

type BlobContainer struct {
	AccountName   string
	ContainerName string
	URL           string
	IsPublic      bool
	Exists        bool
	HasListing    bool
	Blobs         []BlobItem
}

BlobContainer represents an Azure Blob Storage container

type BlobItem

type BlobItem struct {
	Name         string
	Size         int64
	LastModified time.Time
	ContentType  string
}

BlobItem represents a blob in Azure storage

type CloudBuildConfig

type CloudBuildConfig struct {
	BucketName string
	URL        string
}

CloudBuildConfig represents a Cloud Build configuration

type CloudFrontDistribution

type CloudFrontDistribution struct {
	Domain   string
	IsActive bool
	Origins  []string
}

CloudFrontDistribution represents a CloudFront distribution

type CloudFunction

type CloudFunction struct {
	Name      string
	ProjectID string
	Region    string
	URL       string
}

CloudFunction represents a Google Cloud Function

type CloudRunService

type CloudRunService struct {
	Name   string
	Region string
	URL    string
}

CloudRunService represents a Cloud Run service

type CloudSQLInstance

type CloudSQLInstance struct {
	ProjectID    string
	InstanceName string
}

CloudSQLInstance represents a Cloud SQL instance

type ComputeInstance

type ComputeInstance struct {
	Name string
	Zone string
}

ComputeInstance represents a Compute Engine instance

type ContainerRegistry

type ContainerRegistry struct {
	Name         string
	URL          string
	Exists       bool
	IsPublic     bool
	Repositories []string
}

ContainerRegistry represents an Azure Container Registry

type EC2MetadataExposure

type EC2MetadataExposure struct {
	URL          string
	Path         string
	IsExposed    bool
	ResponseData string
}

EC2MetadataExposure represents exposed EC2 metadata

type ElasticBeanstalkApp

type ElasticBeanstalkApp struct {
	Name   string
	Region string
	URL    string
}

ElasticBeanstalkApp represents an Elastic Beanstalk application

type FirebaseApp

type FirebaseApp struct {
	ProjectID string
	Type      string
	URL       string
}

FirebaseApp represents a Firebase application

type GCPAPIEndpoint

type GCPAPIEndpoint struct {
	ServiceName string
	URL         string
	IsActive    bool
}

GCPAPIEndpoint represents a GCP API endpoint

type GCPAssets

type GCPAssets struct {
	ProjectIDs         []string
	GCSBuckets         []GCSBucket
	AppEngineApps      []AppEngineApp
	CloudRunServices   []CloudRunService
	CloudFunctions     []CloudFunction
	FirebaseApps       []FirebaseApp
	BigQueryDatasets   []BigQueryDataset
	ComputeInstances   []ComputeInstance
	GKEClusters        []GKECluster
	PubSubTopics       []PubSubTopic
	CloudSQLInstances  []CloudSQLInstance
	CloudBuildConfigs  []CloudBuildConfig
	SourceRepositories []SourceRepository
	MetadataExposures  []GCPMetadataExposure
	APIEndpoints       []GCPAPIEndpoint
	Secrets            []GCPSecret
	ServiceAccounts    []ServiceAccount
}

GCPAssets represents all discovered GCP assets

type GCPDiscovery

type GCPDiscovery struct {
	// contains filtered or unexported fields
}

GCPDiscovery discovers Google Cloud Platform assets

func NewGCPDiscovery

func NewGCPDiscovery(logger *logger.Logger) *GCPDiscovery

NewGCPDiscovery creates a new GCP discovery client

func (*GCPDiscovery) DiscoverAll

func (g *GCPDiscovery) DiscoverAll(ctx context.Context, domain string, urls []string) (*GCPAssets, error)

DiscoverAll performs comprehensive GCP asset discovery

func (*GCPDiscovery) DiscoverAppEngine

func (g *GCPDiscovery) DiscoverAppEngine(ctx context.Context, domain string) ([]AppEngineApp, error)

DiscoverAppEngine discovers Google App Engine applications

func (*GCPDiscovery) DiscoverBigQueryDatasets

func (g *GCPDiscovery) DiscoverBigQueryDatasets(ctx context.Context, domain string) ([]BigQueryDataset, error)

DiscoverBigQueryDatasets attempts to discover BigQuery datasets

func (*GCPDiscovery) DiscoverCloudBuild

func (g *GCPDiscovery) DiscoverCloudBuild(ctx context.Context, domain string) ([]CloudBuildConfig, error)

DiscoverCloudBuild discovers Cloud Build configurations

func (*GCPDiscovery) DiscoverCloudFunctions

func (g *GCPDiscovery) DiscoverCloudFunctions(ctx context.Context, domain string) ([]CloudFunction, error)

DiscoverCloudFunctions discovers Google Cloud Functions

func (*GCPDiscovery) DiscoverCloudRun

func (g *GCPDiscovery) DiscoverCloudRun(ctx context.Context, domain string) ([]CloudRunService, error)

DiscoverCloudRun discovers Cloud Run services

func (*GCPDiscovery) DiscoverCloudSQL

func (g *GCPDiscovery) DiscoverCloudSQL(ctx context.Context, domain string) ([]CloudSQLInstance, error)

DiscoverCloudSQL discovers Cloud SQL instances

func (*GCPDiscovery) DiscoverComputeEngine

func (g *GCPDiscovery) DiscoverComputeEngine(ctx context.Context, domain string) ([]ComputeInstance, error)

DiscoverComputeEngine discovers Compute Engine instances

func (*GCPDiscovery) DiscoverFirebaseApps

func (g *GCPDiscovery) DiscoverFirebaseApps(ctx context.Context, domain string) ([]FirebaseApp, error)

DiscoverFirebaseApps discovers Firebase applications

func (*GCPDiscovery) DiscoverGCPAPIs

func (g *GCPDiscovery) DiscoverGCPAPIs(ctx context.Context, domain string) ([]GCPAPIEndpoint, error)

DiscoverGCPAPIs attempts to discover exposed GCP APIs

func (*GCPDiscovery) DiscoverGCPMetadata

func (g *GCPDiscovery) DiscoverGCPMetadata(ctx context.Context, urls []string) ([]GCPMetadataExposure, error)

DiscoverGCPMetadata attempts to find exposed GCP metadata

func (*GCPDiscovery) DiscoverGCPSecrets

func (g *GCPDiscovery) DiscoverGCPSecrets(ctx context.Context, domain string) ([]GCPSecret, error)

DiscoverGCPSecrets attempts to discover Secret Manager secrets

func (*GCPDiscovery) DiscoverGCSBuckets

func (g *GCPDiscovery) DiscoverGCSBuckets(ctx context.Context, domain string) ([]GCSBucket, error)

DiscoverGCSBuckets discovers Google Cloud Storage buckets

func (*GCPDiscovery) DiscoverGKEClusters

func (g *GCPDiscovery) DiscoverGKEClusters(ctx context.Context, domain string) ([]GKECluster, error)

DiscoverGKEClusters discovers Google Kubernetes Engine clusters

func (*GCPDiscovery) DiscoverProjectIDs

func (g *GCPDiscovery) DiscoverProjectIDs(ctx context.Context, domain string) ([]string, error)

DiscoverProjectIDs attempts to discover GCP project IDs through various methods

func (*GCPDiscovery) DiscoverPubSubTopics

func (g *GCPDiscovery) DiscoverPubSubTopics(ctx context.Context, domain string) ([]PubSubTopic, error)

DiscoverPubSubTopics discovers Pub/Sub topics

func (*GCPDiscovery) DiscoverServiceAccounts

func (g *GCPDiscovery) DiscoverServiceAccounts(ctx context.Context, domain string) ([]ServiceAccount, error)

DiscoverServiceAccounts attempts to discover GCP service accounts

func (*GCPDiscovery) DiscoverSourceRepositories

func (g *GCPDiscovery) DiscoverSourceRepositories(ctx context.Context, domain string) ([]SourceRepository, error)

DiscoverSourceRepositories discovers Cloud Source Repositories

type GCPMetadataExposure

type GCPMetadataExposure struct {
	URL          string
	Path         string
	IsExposed    bool
	ResponseData string
}

GCPMetadataExposure represents exposed GCP metadata

type GCPSecret

type GCPSecret struct {
	ProjectID  string
	SecretName string
}

GCPSecret represents a Secret Manager secret

type GCSBucket

type GCSBucket struct {
	Name       string
	URL        string
	IsPublic   bool
	Exists     bool
	HasListing bool
	Objects    []GCSObject
}

GCSBucket represents a Google Cloud Storage bucket

type GCSObject

type GCSObject struct {
	Name         string
	Size         int64
	LastModified time.Time
	ContentType  string
}

GCSObject represents an object in GCS

type GKECluster

type GKECluster struct {
	Name     string
	Location string
}

GKECluster represents a Google Kubernetes Engine cluster

type KeyVault

type KeyVault struct {
	Name   string
	URL    string
	Exists bool
}

KeyVault represents an Azure Key Vault

type LambdaFunction

type LambdaFunction struct {
	Name   string
	Region string
	URL    string
}

LambdaFunction represents a Lambda function

type PubSubTopic

type PubSubTopic struct {
	ProjectID string
	TopicName string
}

PubSubTopic represents a Pub/Sub topic

type S3Bucket

type S3Bucket struct {
	Name       string
	Region     string
	URL        string
	IsPublic   bool
	Exists     bool
	HasListing bool
	Objects    []S3Object
}

S3Bucket represents an S3 bucket

type S3Object

type S3Object struct {
	Key          string
	Size         int64
	LastModified time.Time
}

S3Object represents an object in S3

type ServiceAccount

type ServiceAccount struct {
	Email     string
	ProjectID string
	Name      string
}

ServiceAccount represents a GCP service account

type SourceRepository

type SourceRepository struct {
	ProjectID string
	RepoName  string
}

SourceRepository represents a Cloud Source Repository

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL