Common Attack Vectors

This section is dedicated to describing some of the most common attack vectors that are commonly seen in smart contracts. Some of these are taken directly from real world hacks.

Checking access controlchevron-rightAccess control issues on critical functionschevron-rightAccount Existence Check for low level callschevron-rightAccount Existence Checkchevron-rightCommon attacks with contract/EOA addresseschevron-rightArithmetic under/overflowchevron-rightAssert Attackchevron-rightAssert require revertchevron-rightAssert Violationchevron-rightBad Interface DOSchevron-rightBad pragma and compilerchevron-rightBlock Timestamp Manipulationchevron-rightBypassing contract checkchevron-rightCode With No Effectschevron-rightCode size check vulnerabilitychevron-rightConstructors with Carechevron-rightDefault Visibilitieschevron-rightDelegatecallchevron-rightDelegatecallchevron-rightDenial of Service (DoS)chevron-rightDoS with block gas limitchevron-rightEntropy Illusionchevron-rightExternal contract referencingchevron-rightFlash Loan Attackchevron-rightFloating Point and Precisionchevron-rightFunction selector abusechevron-rightFunction selector abusechevron-rightSmart contract gas griefingchevron-rightHash collision parameterschevron-rightHash Collisions With Multiple Variable Length Argumentschevron-rightImprecise arithmeticchevron-rightImproper Array Deletionchevron-rightIncorrect array deletionchevron-rightIncorrect interfacechevron-rightInsufficient Gas Griefingchevron-rightLoop through long arrayschevron-rightMessage call with hardcoded gas amountchevron-rightNot enough gas for ether transferchevron-rightPrecision Loss in Calculationschevron-rightOracle Manipulationchevron-rightPublic Burn Functionchevron-rightRead-only reentrancychevron-rightRace Conditions/Front Runningchevron-rightReentrancy Attackschevron-rightReentrancychevron-rightRequirement Violationchevron-rightRight-To-Left-Override control character (U+202E)chevron-rightShadowing State Variableschevron-rightShort Address / Parameter attackchevron-rightSignature Malleabilitychevron-rightSignature Replaychevron-rightTransaction Order Dependencechevron-rightTx.Origin Authenticationchevron-rightUnchecked CALL Return Valueschevron-rightUnexpected etherchevron-rightUninitialized Storage Pointerschevron-rightUnsafe Ownership Transferchevron-right

Last updated