Search Apps Documentation Source Content File Folder Download Copy Actions Download State String Boolean Number Struct Map Slice Pointer Function Closure Reference Nil Package Type Interface Unknown

laundervictim state

Back to all declarations

GetVal

func() launderpkg.Object

GetVal returns g by VALUE (caller gets a copy).

Open
OID
022cef…3b3d:10
GetVal details

Inspect func

GetPtr

func() *launderpkg.Object

GetPtr returns the pointer to gPtr's underlying Object. The returned pointer aliases the victim's persisted state.

Open
OID
022cef…3b3d:11
GetPtr details

Inspect func

GetValAddr

func() *launderpkg.Object

GetValAddr returns &gVal — a pointer to the value-typed slot. The returned pointer aliases the victim's persisted state.

Open
OID
022cef…3b3d:12
GetValAddr details

Inspect func

GetImm

func() *launderpkg.Immutable

GetImm returns the pointer to gImm — a \*Immutable, which has no mutator method in /p/launderpkg. Victim's intent: callers can read but not write.

Open
OID
022cef…3b3d:13
GetImm details

Inspect func

GetBuf

func() []uint8

GetBuf returns the victim's own byte buffer. The returned slice aliases the victim's persisted backing array (/r/laundervictim-stamped).

Open
OID
022cef…3b3d:14
GetBuf details

Inspect func

ReadVal

func() string

ReadVal / ReadPtr / ReadImm / ReadBuf report the current values for after-attack verification.

Open
OID
022cef…3b3d:15
ReadVal details

Inspect func

Exploiter

type

Exploiter is the interface the victim accepts. The attacker supplies an implementation; the victim invokes Something(g) passing its own g. This is the "victim hands attacker the data" vector.

Value

laundervictim.Exploiter

Invoke

func(e laundervictim.Exploiter)

Invoke calls the attacker's methods passing the victim's g by both value and by pointer.

Open
OID
022cef…3b3d:19
Invoke details

Inspect func
gVal : launderpkg.Object Inspect
gPtr : *launderpkg.Object Inspect
gImm : *launderpkg.Immutable Inspect
gBuf : []uint8 (len=16) Inspect
init.4 : func() Inspect
GetVal : func() launderpkg.Object Inspect
GetPtr : func() *launderpkg.Object Inspect
GetValAddr : func() *launderpkg.Object Inspect
GetImm : func() *launderpkg.Immutable Inspect
GetBuf : func() []uint8 Inspect
ReadVal : func() string Inspect
ReadPtr : func() string Inspect
ReadImm : func() string Inspect
ReadBuf : func() string Inspect
Exploiter : type =laundervictim.Exploiter
Invoke : func(e laundervictim.Exploiter) Inspect