exfiltration

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Jun 20, 2025 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChannelStatus

type ChannelStatus string

ChannelStatus represents the status of a channel

const (
	StatusIdle         ChannelStatus = "idle"
	StatusActive       ChannelStatus = "active"
	StatusExfiltrating ChannelStatus = "exfiltrating"
	StatusComplete     ChannelStatus = "complete"
)

type ChannelType

type ChannelType string

ChannelType defines types of exfiltration channels

const (
	ChannelSteganography ChannelType = "steganography"
	ChannelLinguistic    ChannelType = "linguistic"
	ChannelTiming        ChannelType = "timing"
	ChannelSideChannel   ChannelType = "side_channel"
	ChannelCovert        ChannelType = "covert"
	ChannelFragmented    ChannelType = "fragmented"
	ChannelModel         ChannelType = "model_based"
)

type CovertEncoder

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

CovertEncoder implements covert encoding schemes

func NewCovertEncoder

func NewCovertEncoder() *CovertEncoder

NewCovertEncoder creates a new covert encoder

type CovertTunneler

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

CovertTunneler implements covert tunneling

func NewCovertTunneler

func NewCovertTunneler() *CovertTunneler

NewCovertTunneler creates a new covert tunneler

func (*CovertTunneler) ExfiltrateViaCovert

func (ct *CovertTunneler) ExfiltrateViaCovert(channel *ExfiltrationChannel, data []byte) error

ExfiltrateViaCovert exfiltrates data through covert tunnel

type DataExfiltrator

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

DataExfiltrator manages advanced data exfiltration techniques

func NewDataExfiltrator

func NewDataExfiltrator(config ExfiltratorConfig) *DataExfiltrator

NewDataExfiltrator creates a new data exfiltrator

func (*DataExfiltrator) ExfiltrateData

func (de *DataExfiltrator) ExfiltrateData(ctx context.Context, data []byte, channelType ChannelType) (*ExfiltrationChannel, error)

ExfiltrateData exfiltrates data using specified channel type

func (*DataExfiltrator) GetActiveChannels

func (de *DataExfiltrator) GetActiveChannels() []*ExfiltrationChannel

GetActiveChannels returns all active exfiltration channels

func (*DataExfiltrator) GetChannelStatus

func (de *DataExfiltrator) GetChannelStatus(channelID string) (*ExfiltrationChannel, error)

GetChannelStatus returns the status of an exfiltration channel

type DataFragmenter

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

DataFragmenter implements data fragmentation

func NewDataFragmenter

func NewDataFragmenter(fragmentSize int) *DataFragmenter

NewDataFragmenter creates a new data fragmenter

func (*DataFragmenter) ExfiltrateFragmented

func (df *DataFragmenter) ExfiltrateFragmented(channel *ExfiltrationChannel, data []byte) error

ExfiltrateFragmented exfiltrates data in fragments

type ExfiltrationChannel

type ExfiltrationChannel struct {
	ID         string                 `json:"id"`
	Type       ChannelType            `json:"type"`
	Status     ChannelStatus          `json:"status"`
	DataBuffer []byte                 `json:"-"`
	Metadata   map[string]interface{} `json:"metadata"`
	CreatedAt  time.Time              `json:"created_at"`
	BytesSent  int64                  `json:"bytes_sent"`
}

ExfiltrationChannel represents a data exfiltration channel

type ExfiltratorConfig

type ExfiltratorConfig struct {
	MaxChannels        int
	StealthMode        bool
	EncryptionEnabled  bool
	CompressionEnabled bool
	FragmentSize       int
	TimingPrecision    time.Duration
}

ExfiltratorConfig holds configuration for data exfiltration

type Fragment

type Fragment struct {
	ID       string
	Sequence int
	Total    int
	Data     []byte
	Checksum string
}

Fragment represents a data fragment

type LinguisticExfiltrator

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

LinguisticExfiltrator uses natural language for data hiding

func NewLinguisticExfiltrator

func NewLinguisticExfiltrator() *LinguisticExfiltrator

NewLinguisticExfiltrator creates a new linguistic exfiltrator

func (*LinguisticExfiltrator) ExfiltrateViaLanguage

func (le *LinguisticExfiltrator) ExfiltrateViaLanguage(channel *ExfiltrationChannel, data []byte) error

ExfiltrateViaLanguage exfiltrates data through natural language

type ModelDataExtractor

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

ModelDataExtractor extracts model information

func NewModelDataExtractor

func NewModelDataExtractor() *ModelDataExtractor

NewModelDataExtractor creates a new model data extractor

func (*ModelDataExtractor) ExfiltrateModelData

func (mde *ModelDataExtractor) ExfiltrateModelData(channel *ExfiltrationChannel, data []byte) error

ExfiltrateModelData exfiltrates model-specific data

type SemanticSteganography

type SemanticSteganography struct{}

SemanticSteganography uses semantic variations

func (*SemanticSteganography) Embed

func (ss *SemanticSteganography) Embed(carrier, data []byte) ([]byte, error)

func (*SemanticSteganography) Extract

func (ss *SemanticSteganography) Extract(carrier []byte) ([]byte, error)

type SideChannelExfiltrator

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

SideChannelExfiltrator implements side-channel exfiltration

func NewSideChannelExfiltrator

func NewSideChannelExfiltrator() *SideChannelExfiltrator

NewSideChannelExfiltrator creates a new side-channel exfiltrator

func (*SideChannelExfiltrator) ExfiltrateViaSideChannel

func (sce *SideChannelExfiltrator) ExfiltrateViaSideChannel(channel *ExfiltrationChannel, data []byte) error

ExfiltrateViaSideChannel exfiltrates data through side channels

type SteganographyEngine

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

SteganographyEngine implements steganographic exfiltration

func NewSteganographyEngine

func NewSteganographyEngine() *SteganographyEngine

NewSteganographyEngine creates a new steganography engine

func (*SteganographyEngine) ExfiltrateViaStego

func (se *SteganographyEngine) ExfiltrateViaStego(channel *ExfiltrationChannel, data []byte) error

ExfiltrateViaStego exfiltrates data using steganography

type StegoTechnique

type StegoTechnique interface {
	Embed(carrier, data []byte) ([]byte, error)
	Extract(carrier []byte) ([]byte, error)
}

StegoTechnique represents a steganography technique

type TextSteganography

type TextSteganography struct{}

TextSteganography implements text-based steganography

func (*TextSteganography) Embed

func (ts *TextSteganography) Embed(carrier, data []byte) ([]byte, error)

func (*TextSteganography) Extract

func (ts *TextSteganography) Extract(carrier []byte) ([]byte, error)

type TimingChannel

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

TimingChannel implements timing-based covert channels

func NewTimingChannel

func NewTimingChannel(precision time.Duration) *TimingChannel

NewTimingChannel creates a new timing channel

func (*TimingChannel) ExfiltrateViaTiming

func (tc *TimingChannel) ExfiltrateViaTiming(channel *ExfiltrationChannel, data []byte) error

ExfiltrateViaTiming exfiltrates data using timing patterns

type Tunnel

type Tunnel struct {
	ID       string
	Protocol string
	Endpoint string
	Active   bool
}

Tunnel represents a covert tunnel

type UnicodeSteganography

type UnicodeSteganography struct{}

UnicodeSteganography uses Unicode tricks for hiding data

func (*UnicodeSteganography) Embed

func (us *UnicodeSteganography) Embed(carrier, data []byte) ([]byte, error)

func (*UnicodeSteganography) Extract

func (us *UnicodeSteganography) Extract(carrier []byte) ([]byte, error)

type WhitespaceSteganography

type WhitespaceSteganography struct{}

WhitespaceSteganography uses whitespace for hiding data

func (*WhitespaceSteganography) Embed

func (ws *WhitespaceSteganography) Embed(carrier, data []byte) ([]byte, error)

func (*WhitespaceSteganography) Extract

func (ws *WhitespaceSteganography) Extract(carrier []byte) ([]byte, error)

Jump to

Keyboard shortcuts

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