cooked-validators
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cooked.Attack.PeerTampering

Description

This module provides an attack to replace a peer with another in every possible locations in a skeleton. If the peers have different levels of privileges, this can uncover vulnerabilities.

Synopsis

Peer tampering params

data PeerTamperingParams effs Source #

Parameters of the peer tampering attack

Constructors

PeerTamperingParams 

Fields

singlePeerTamperingParams :: (ToPubKeyHash existing, ToPubKeyHash new) => existing -> new -> PeerTamperingParams effs Source #

Peer tampering params transforming a single user into another

balancingPeerTamperingParams :: (ToPubKeyHash new, Members '[Tweak, NonDet] effs) => new -> PeerTamperingParams effs Source #

Peer tampering params transforming the balancing user into another

Peer tampering label

Peer tampering attack

peerTamperingAttack :: Members '[Tweak, NonDet] effs => PeerTamperingParams effs -> Sem effs [PubKeyHash] Source #

Attempts to change the given peer into other peers everywhere in a TxSkel in an attempt to uncover permission breaches.