Skip to content

Releases: Cyfrin/aderyn

Release v0.2.0

02 Sep 14:37
5c483fd
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.1.11...v0.2.0

Release v0.1.11

19 Aug 12:20
7b30416
Compare
Choose a tag to compare

Changelog

  • New Detectors:
    • HIGH: Incorrect ERC20 interface
    • HIGH: Out of order L1->L2 retryable transactions
    • HIGH: Incorrect ERC721 interface
    • HIGH: Constant function changing state
    • HIGH: Function signature collision
    • LOW: State variable initialized in a function
    • LOW: Builtin symbol shadowing
    • LOW: Costly operations within loops
    • LOW: State change inside assert
    • LOW: Cache array length
  • Python bindings
  • DevEx: Refactor callgraph naming and file structure

What's Changed

New Contributors

Full Changelog: v0.1.10...v0.1.11

Release v0.1.10

07 Aug 17:35
61295db
Compare
Choose a tag to compare

Changelog

  • Fix AST Nodes to account for None return parameters when returning from a modifier.
  • Detectors:
    • LOW: Unused private/internal state variables
    • LOW: Return bomb

What's Changed

Full Changelog: v0.1.9...v0.1.10

Release v0.1.9

05 Aug 09:39
37522ef
Compare
Choose a tag to compare

Release Notes

New Detectors:

  • HIGH: Unchecked send return value
  • HIGH: Storage Signed Integer Array
  • HIGH: Strict ETH balance equality
  • HIGH: Tautology or Contradiction
  • HIGH: Contract that locks ETH
  • HIGH: msg.value used inside a loop
  • HIGH: Bad use of tx.origin
  • LOW: Boolean equality
  • LOW: State variable read in an external context
  • LOW: Redundant statements
  • LOW: Constant functions contain assembly

Fixes:

  • State variable shadowing - title and description fix
  • Upgrade check checks github releases instead of cargo releases

What's Changed

Full Changelog: v0.1.8...v0.1.9

Release v0.1.8

28 Jul 21:39
c9c251d
Compare
Choose a tag to compare

Changelog

Aderyn passed 50 detectors! 🥳 5️⃣ 0️⃣ ➕

  • New detectors:
    • HIGH: Uninitialized state variables consumed
    • HIGH: Dangerous Unary Operator
    • HIGH: Unchecked return value
    • HIGH: Right to left special character used
    • HIGH: Tautological conditional
    • HIGH: Misused Boolean
    • HIGH: Functions sending ETH without msg.sender checks
    • HIGH: Delegatecall to an unprotected address
    • HIGH: Deletion of nested mapping
    • HIGH: Usage of pre-declared local variables
    • HIGH: Weak Randomness (First contribution from @DavidDrob !! 🥳 👏 )
  • Optimize release binary for speed
  • Callgraph preprocessing allowing for detectors to search upstream and downstream callgraph <3

What's Changed

New Contributors

Full Changelog: v0.1.7...v0.1.8

Release v0.1.7

19 Jul 14:35
Compare
Choose a tag to compare
reportgen

Release v0.1.6

19 Jul 12:32
413089e
Compare
Choose a tag to compare

Changelog

  • Detectors:
    • HIGH: Experimental Encoder
    • HIGH: Storage array passed as memory won't be updated in storage
    • HIGH: Incorrect assembly shift parameter order
    • HIGH: Multiple constructors
    • HIGH: Reused Contract name
    • HIGH: Nested structs in mappings pre-0.5.0
    • HIGH: Dynamic array length assignment
    • HIGH: Avoid selfdestruct
    • HIGH: Return function inside Yul block
    • HIGH: Incorrect caret operator
    • HIGH: State variable shadowing
  • Yul: YulIdentifier, YulFunctionCall and YulLiteral support in workspace context
  • Fix load_source_unit parsing older compiler versions where the json is printed over many lines
  • Remove unnecessary cargo test runs in CI
  • // aderyn-ignore and // aderyn-ignore-next-line
  • AST code refactor
  • Fix EventDefinition at SourceUnit level error (Fixes #599 )
  • CI optimizations

What's Changed

Full Changelog: v0.1.5...v0.1.6

Release v0.1.5

11 Jul 12:54
840b12e
Compare
Choose a tag to compare

What's Changed

  • Upgrade foundry-config to latest version by @alexroan in #564
  • Feat: Add character offset and length to JSON report (Important for VSCode extension to work) by @TilakMaddy in #566
  • Bump version to v0.1.5 by @alexroan in #570
  • HIGH Detector: EnumerableSet removal causes corrupted order by @alexroan in #571
  • Fix/Cover other types of loops for Enumerable Set unsafe removal detector by @TilakMaddy in #572
  • README: Remove cargo as a recommended install option by @alexroan in #576
  • Fix TempleDao repo issues by @alexroan in #577

Changelog

  • Add Character offset and length to JSON report to complement byte offset and length
  • foundry-config package update to handle latest versions of solc
  • Remove cargo as a recommended install path
  • Fix unreachable and name_location panics
  • Detectors:
    • HIGH: EnumerableSet removal in loop causes corrupted order (props to @devdacian)

Starting with this version, the aderyn rust crates will no longer be published. This is deprecated in favour of cyfrinup installation.

Full Changelog: v0.1.4...v0.1.5

Release v0.1.4

24 Jun 16:05
1d34668
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.1.3...v0.1.4

Release v0.1.3

21 Jun 14:25
96b4237
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.1.2...v0.1.3