Merge branch 'master' into dev

pull/217/head
Josselin 6 years ago
commit 1ff7897b89
  1. 62
      README.md
  2. 2
      slither/detectors/attributes/const_functions.py
  3. 2
      slither/detectors/attributes/constant_pragma.py
  4. 2
      slither/detectors/attributes/incorrect_solc.py
  5. 2
      slither/detectors/attributes/locked_ether.py
  6. 2
      slither/detectors/erc20/incorrect_interface.py
  7. 2
      slither/detectors/erc20/unindexed_event_parameters.py
  8. 2
      slither/detectors/functions/arbitrary_send.py
  9. 2
      slither/detectors/functions/external_function.py
  10. 2
      slither/detectors/functions/suicidal.py
  11. 2
      slither/detectors/naming_convention/naming_convention.py
  12. 2
      slither/detectors/operations/block_timestamp.py
  13. 2
      slither/detectors/operations/low_level_calls.py
  14. 2
      slither/detectors/operations/unused_return_values.py
  15. 2
      slither/detectors/reentrancy/reentrancy_benign.py
  16. 2
      slither/detectors/reentrancy/reentrancy_eth.py
  17. 2
      slither/detectors/reentrancy/reentrancy_read_before_write.py
  18. 2
      slither/detectors/shadowing/abstract.py
  19. 2
      slither/detectors/shadowing/builtin_symbols.py
  20. 2
      slither/detectors/shadowing/local.py
  21. 2
      slither/detectors/shadowing/state.py
  22. 2
      slither/detectors/statements/assembly.py
  23. 2
      slither/detectors/statements/calls_in_loop.py
  24. 2
      slither/detectors/statements/controlled_delegatecall.py
  25. 2
      slither/detectors/statements/deprecated_calls.py
  26. 2
      slither/detectors/statements/incorrect_strict_equality.py
  27. 2
      slither/detectors/statements/tx_origin.py
  28. 2
      slither/detectors/variables/possible_const_state_variables.py
  29. 2
      slither/detectors/variables/uninitialized_local_variables.py
  30. 2
      slither/detectors/variables/uninitialized_state_variables.py
  31. 2
      slither/detectors/variables/uninitialized_storage_variables.py
  32. 2
      slither/detectors/variables/unused_state_variables.py

@ -39,37 +39,37 @@ By default, all the detectors are run.
Num | Detector | What it Detects | Impact | Confidence Num | Detector | What it Detects | Impact | Confidence
--- | --- | --- | --- | --- --- | --- | --- | --- | ---
1 | `shadowing-state` | [State variables shadowing](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#state-variable-shadowing) | High | High 1 | `shadowing-state` | [State variables shadowing](https://github.com/crytic/slither/wiki/Detector-Documentation#state-variable-shadowing) | High | High
2 | `suicidal` | [Functions allowing anyone to destruct the contract](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#suicidal) | High | High 2 | `suicidal` | [Functions allowing anyone to destruct the contract](https://github.com/crytic/slither/wiki/Detector-Documentation#suicidal) | High | High
3 | `uninitialized-state` | [Uninitialized state variables](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#uninitialized-state-variables) | High | High 3 | `uninitialized-state` | [Uninitialized state variables](https://github.com/crytic/slither/wiki/Detector-Documentation#uninitialized-state-variables) | High | High
4 | `uninitialized-storage` | [Uninitialized storage variables](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#uninitialized-storage-variables) | High | High 4 | `uninitialized-storage` | [Uninitialized storage variables](https://github.com/crytic/slither/wiki/Detector-Documentation#uninitialized-storage-variables) | High | High
5 | `arbitrary-send` | [Functions that send ether to arbitrary destinations](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#functions-that-send-ether-to-arbitrary-destinations) | High | Medium 5 | `arbitrary-send` | [Functions that send ether to arbitrary destinations](https://github.com/crytic/slither/wiki/Detector-Documentation#functions-that-send-ether-to-arbitrary-destinations) | High | Medium
6 | `controlled-delegatecall` | [Controlled delegatecall destination](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#controlled-delegatecall) | High | Medium 6 | `controlled-delegatecall` | [Controlled delegatecall destination](https://github.com/crytic/slither/wiki/Detector-Documentation#controlled-delegatecall) | High | Medium
7 | `reentrancy-eth` | [Reentrancy vulnerabilities (theft of ethers)](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#reentrancy-vulnerabilities) | High | Medium 7 | `reentrancy-eth` | [Reentrancy vulnerabilities (theft of ethers)](https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities) | High | Medium
8 | `erc20-interface` | [Incorrect ERC20 interfaces](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#incorrect-erc20-interface) | Medium | High 8 | `erc20-interface` | [Incorrect ERC20 interfaces](https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-erc20-interface) | Medium | High
9 | `incorrect-equality` | [Dangerous strict equalities](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#dangerous-strict-equalities) | Medium | High 9 | `incorrect-equality` | [Dangerous strict equalities](https://github.com/crytic/slither/wiki/Detector-Documentation#dangerous-strict-equalities) | Medium | High
10 | `locked-ether` | [Contracts that lock ether](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#contracts-that-lock-ether) | Medium | High 10 | `locked-ether` | [Contracts that lock ether](https://github.com/crytic/slither/wiki/Detector-Documentation#contracts-that-lock-ether) | Medium | High
11 | `shadowing-abstract` | [State variables shadowing from abstract contracts](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#state-variable-shadowing-from-abstract-contracts) | Medium | High 11 | `shadowing-abstract` | [State variables shadowing from abstract contracts](https://github.com/crytic/slither/wiki/Detector-Documentation#state-variable-shadowing-from-abstract-contracts) | Medium | High
12 | `constant-function` | [Constant functions changing the state](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#constant-functions-changing-the-state) | Medium | Medium 12 | `constant-function` | [Constant functions changing the state](https://github.com/crytic/slither/wiki/Detector-Documentation#constant-functions-changing-the-state) | Medium | Medium
13 | `reentrancy-no-eth` | [Reentrancy vulnerabilities (no theft of ethers)](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#reentrancy-vulnerabilities-1) | Medium | Medium 13 | `reentrancy-no-eth` | [Reentrancy vulnerabilities (no theft of ethers)](https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-1) | Medium | Medium
14 | `tx-origin` | [Dangerous usage of `tx.origin`](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#dangerous-usage-of-txorigin) | Medium | Medium 14 | `tx-origin` | [Dangerous usage of `tx.origin`](https://github.com/crytic/slither/wiki/Detector-Documentation#dangerous-usage-of-txorigin) | Medium | Medium
15 | `uninitialized-local` | [Uninitialized local variables](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#uninitialized-local-variables) | Medium | Medium 15 | `uninitialized-local` | [Uninitialized local variables](https://github.com/crytic/slither/wiki/Detector-Documentation#uninitialized-local-variables) | Medium | Medium
16 | `unused-return` | [Unused return values](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#unused-return) | Medium | Medium 16 | `unused-return` | [Unused return values](https://github.com/crytic/slither/wiki/Detector-Documentation#unused-return) | Medium | Medium
17 | `shadowing-builtin` | [Built-in symbol shadowing](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#builtin-symbol-shadowing) | Low | High 17 | `shadowing-builtin` | [Built-in symbol shadowing](https://github.com/crytic/slither/wiki/Detector-Documentation#builtin-symbol-shadowing) | Low | High
18 | `shadowing-local` | [Local variables shadowing](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#local-variable-shadowing) | Low | High 18 | `shadowing-local` | [Local variables shadowing](https://github.com/crytic/slither/wiki/Detector-Documentation#local-variable-shadowing) | Low | High
19 | `calls-loop` | [Multiple calls in a loop](https://github.com/trailofbits/slither/wiki/Detectors-Documentation/_edit#calls-inside-a-loop) | Low | Medium 19 | `calls-loop` | [Multiple calls in a loop](https://github.com/crytic/slither/wiki/Detector-Documentation/_edit#calls-inside-a-loop) | Low | Medium
20 | `reentrancy-benign` | [Benign reentrancy vulnerabilities](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#reentrancy-vulnerabilities-2) | Low | Medium 20 | `reentrancy-benign` | [Benign reentrancy vulnerabilities](https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-2) | Low | Medium
21 | `timestamp` | [Dangerous usage of `block.timestamp`](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#block-timestamp) | Low | Medium 21 | `timestamp` | [Dangerous usage of `block.timestamp`](https://github.com/crytic/slither/wiki/Detector-Documentation#block-timestamp) | Low | Medium
22 | `assembly` | [Assembly usage](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#assembly-usage) | Informational | High 22 | `assembly` | [Assembly usage](https://github.com/crytic/slither/wiki/Detector-Documentation#assembly-usage) | Informational | High
23 | `constable-states` | [State variables that could be declared constant](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#state-variables-that-could-be-declared-constant) | Informational | High 23 | `constable-states` | [State variables that could be declared constant](https://github.com/crytic/slither/wiki/Detector-Documentation#state-variables-that-could-be-declared-constant) | Informational | High
24 | `deprecated-standards` | [Deprecated Solidity Standards](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#deprecated-standards) | Informational | High 24 | `deprecated-standards` | [Deprecated Solidity Standards](https://github.com/crytic/slither/wiki/Detector-Documentation#deprecated-standards) | Informational | High
25 | `erc20-indexed` | [Un-indexed ERC20 event parameters](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#unindexed-erc20-event-parameters) | Informational | High 25 | `erc20-indexed` | [Un-indexed ERC20 event parameters](https://github.com/crytic/slither/wiki/Detector-Documentation#unindexed-erc20-event-parameters) | Informational | High
26 | `external-function` | [Public function that could be declared as external](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#public-function-that-could-be-declared-as-external) | Informational | High 26 | `external-function` | [Public function that could be declared as external](https://github.com/crytic/slither/wiki/Detector-Documentation#public-function-that-could-be-declared-as-external) | Informational | High
27 | `low-level-calls` | [Low level calls](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#low-level-calls) | Informational | High 27 | `low-level-calls` | [Low level calls](https://github.com/crytic/slither/wiki/Detector-Documentation#low-level-calls) | Informational | High
28 | `naming-convention` | [Conformance to Solidity naming conventions](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#conformance-to-solidity-naming-conventions) | Informational | High 28 | `naming-convention` | [Conformance to Solidity naming conventions](https://github.com/crytic/slither/wiki/Detector-Documentation#conformance-to-solidity-naming-conventions) | Informational | High
29 | `pragma` | [If different pragma directives are used](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#different-pragma-directives-are-used) | Informational | High 29 | `pragma` | [If different pragma directives are used](https://github.com/crytic/slither/wiki/Detector-Documentation#different-pragma-directives-are-used) | Informational | High
30 | `solc-version` | [Incorrect Solidity version (< 0.4.24 or complex pragma)](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#incorrect-version-of-solidity) | Informational | High 30 | `solc-version` | [Incorrect Solidity version (< 0.4.24 or complex pragma)](https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-version-of-solidity) | Informational | High
31 | `unused-state` | [Unused state variables](https://github.com/trailofbits/slither/wiki/Detectors-Documentation#unused-state-variables) | Informational | High 31 | `unused-state` | [Unused state variables](https://github.com/crytic/slither/wiki/Detector-Documentation#unused-state-variables) | Informational | High
[Contact us](https://www.trailofbits.com/contact/) to get access to additional detectors. [Contact us](https://www.trailofbits.com/contact/) to get access to additional detectors.

@ -15,7 +15,7 @@ class ConstantFunctions(AbstractDetector):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#constant-functions-changing-the-state' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#constant-functions-changing-the-state'
WIKI_TITLE = 'Constant functions changing the state' WIKI_TITLE = 'Constant functions changing the state'
WIKI_DESCRIPTION = ''' WIKI_DESCRIPTION = '''

@ -15,7 +15,7 @@ class ConstantPragma(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#different-pragma-directives-are-used' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#different-pragma-directives-are-used'
WIKI_TITLE = 'Different pragma directives are used' WIKI_TITLE = 'Different pragma directives are used'

@ -23,7 +23,7 @@ class IncorrectSolc(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#incorrect-version-of-solidity' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-version-of-solidity'
WIKI_TITLE = 'Incorrect versions of Solidity' WIKI_TITLE = 'Incorrect versions of Solidity'
WIKI_DESCRIPTION = ''' WIKI_DESCRIPTION = '''

@ -17,7 +17,7 @@ class LockedEther(AbstractDetector):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#contracts-that-lock-ether' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#contracts-that-lock-ether'
WIKI_TITLE = 'Contracts that lock ether' WIKI_TITLE = 'Contracts that lock ether'

@ -15,7 +15,7 @@ class IncorrectERC20InterfaceDetection(AbstractDetector):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#incorrect-erc20-interface' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-erc20-interface'
WIKI_TITLE = 'Incorrect erc20 interface' WIKI_TITLE = 'Incorrect erc20 interface'
WIKI_DESCRIPTION = 'Lack of return value for the ERC20 `approve`/`transfer`/`transferFrom` functions. A contract compiled with solidity > 0.4.22 interacting with these functions will fail to execute them, as the return value is missing.' WIKI_DESCRIPTION = 'Lack of return value for the ERC20 `approve`/`transfer`/`transferFrom` functions. A contract compiled with solidity > 0.4.22 interacting with these functions will fail to execute them, as the return value is missing.'

@ -14,7 +14,7 @@ class UnindexedERC20EventParameters(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#unindexed-erc20-event-parameters' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#unindexed-erc20-event-parameters'
WIKI_TITLE = 'Unindexed ERC20 Event Parameters' WIKI_TITLE = 'Unindexed ERC20 Event Parameters'
WIKI_DESCRIPTION = 'Detects that events defined by the ERC20 specification which are meant to have some parameters as `indexed`, are missing the `indexed` keyword.' WIKI_DESCRIPTION = 'Detects that events defined by the ERC20 specification which are meant to have some parameters as `indexed`, are missing the `indexed` keyword.'

@ -28,7 +28,7 @@ class ArbitrarySend(AbstractDetector):
IMPACT = DetectorClassification.HIGH IMPACT = DetectorClassification.HIGH
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#functions-that-send-ether-to-arbitrary-destinations' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#functions-that-send-ether-to-arbitrary-destinations'
WIKI_TITLE = 'Functions that send ether to arbitrary destinations' WIKI_TITLE = 'Functions that send ether to arbitrary destinations'
WIKI_DESCRIPTION = 'Unprotected call to a function executing sending ethers to an arbitrary address.' WIKI_DESCRIPTION = 'Unprotected call to a function executing sending ethers to an arbitrary address.'

@ -16,7 +16,7 @@ class ExternalFunction(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#public-function-that-could-be-declared-as-external' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#public-function-that-could-be-declared-as-external'
WIKI_TITLE = 'Public function that could be declared as external' WIKI_TITLE = 'Public function that could be declared as external'

@ -16,7 +16,7 @@ class Suicidal(AbstractDetector):
IMPACT = DetectorClassification.HIGH IMPACT = DetectorClassification.HIGH
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#suicidal' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#suicidal'
WIKI_TITLE = 'Suicidal' WIKI_TITLE = 'Suicidal'

@ -17,7 +17,7 @@ class NamingConvention(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#conformance-to-solidity-naming-conventions' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#conformance-to-solidity-naming-conventions'
WIKI_TITLE = 'Conformance to Solidity naming conventions' WIKI_TITLE = 'Conformance to Solidity naming conventions'
WIKI_DESCRIPTION = ''' WIKI_DESCRIPTION = '''

@ -20,7 +20,7 @@ class Timestamp(AbstractDetector):
IMPACT = DetectorClassification.LOW IMPACT = DetectorClassification.LOW
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#block-timestamp' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#block-timestamp'
WIKI_TITLE = 'Block timestamp' WIKI_TITLE = 'Block timestamp'

@ -16,7 +16,7 @@ class LowLevelCalls(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#low-level-calls' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#low-level-calls'
WIKI_TITLE = 'Low level calls' WIKI_TITLE = 'Low level calls'
WIKI_DESCRIPTION = 'The use of low-level calls is error-prone. Low-level calls do not check for [code existence](https://solidity.readthedocs.io/en/v0.4.25/control-structures.html#error-handling-assert-require-revert-and-exceptions) or call success.' WIKI_DESCRIPTION = 'The use of low-level calls is error-prone. Low-level calls do not check for [code existence](https://solidity.readthedocs.io/en/v0.4.25/control-structures.html#error-handling-assert-require-revert-and-exceptions) or call success.'

@ -17,7 +17,7 @@ class UnusedReturnValues(AbstractDetector):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#unused-return' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#unused-return'
WIKI_TITLE = 'Unused return' WIKI_TITLE = 'Unused return'

@ -22,7 +22,7 @@ class ReentrancyBenign(Reentrancy):
IMPACT = DetectorClassification.LOW IMPACT = DetectorClassification.LOW
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#reentrancy-vulnerabilities-2' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-2'
WIKI_TITLE = 'Reentrancy vulnerabilities' WIKI_TITLE = 'Reentrancy vulnerabilities'
WIKI_DESCRIPTION = ''' WIKI_DESCRIPTION = '''

@ -20,7 +20,7 @@ class ReentrancyEth(Reentrancy):
IMPACT = DetectorClassification.HIGH IMPACT = DetectorClassification.HIGH
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#reentrancy-vulnerabilities' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities'
WIKI_TITLE = 'Reentrancy vulnerabilities' WIKI_TITLE = 'Reentrancy vulnerabilities'
WIKI_DESCRIPTION = ''' WIKI_DESCRIPTION = '''

@ -23,7 +23,7 @@ class ReentrancyReadBeforeWritten(Reentrancy):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#reentrancy-vulnerabilities-1' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-1'
WIKI_TITLE = 'Reentrancy vulnerabilities' WIKI_TITLE = 'Reentrancy vulnerabilities'
WIKI_DESCRIPTION = ''' WIKI_DESCRIPTION = '''

@ -16,7 +16,7 @@ class ShadowingAbstractDetection(AbstractDetector):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#state-variable-shadowing-from-abstract-contracts' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#state-variable-shadowing-from-abstract-contracts'
WIKI_TITLE = 'State variable shadowing from abstract contracts' WIKI_TITLE = 'State variable shadowing from abstract contracts'

@ -15,7 +15,7 @@ class BuiltinSymbolShadowing(AbstractDetector):
IMPACT = DetectorClassification.LOW IMPACT = DetectorClassification.LOW
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#builtin-symbol-shadowing' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#builtin-symbol-shadowing'
WIKI_TITLE = 'Builtin Symbol Shadowing' WIKI_TITLE = 'Builtin Symbol Shadowing'

@ -15,7 +15,7 @@ class LocalShadowing(AbstractDetector):
IMPACT = DetectorClassification.LOW IMPACT = DetectorClassification.LOW
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#local-variable-shadowing' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#local-variable-shadowing'
WIKI_TITLE = 'Local Variable Shadowing' WIKI_TITLE = 'Local Variable Shadowing'
WIKI_DESCRIPTION = 'Detection of shadowing using local variables.' WIKI_DESCRIPTION = 'Detection of shadowing using local variables.'

@ -15,7 +15,7 @@ class StateShadowing(AbstractDetector):
IMPACT = DetectorClassification.HIGH IMPACT = DetectorClassification.HIGH
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#state-variable-shadowing' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#state-variable-shadowing'
WIKI_TITLE = 'State variable shadowing' WIKI_TITLE = 'State variable shadowing'
WIKI_DESCRIPTION = 'Detection of state variables shadowed.' WIKI_DESCRIPTION = 'Detection of state variables shadowed.'

@ -16,7 +16,7 @@ class Assembly(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#assembly-usage' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#assembly-usage'
WIKI_TITLE = 'Assembly usage' WIKI_TITLE = 'Assembly usage'

@ -16,7 +16,7 @@ class MultipleCallsInLoop(AbstractDetector):
IMPACT = DetectorClassification.LOW IMPACT = DetectorClassification.LOW
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation/_edit#calls-inside-a-loop' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation/_edit#calls-inside-a-loop'
WIKI_TITLE = 'Calls inside a loop' WIKI_TITLE = 'Calls inside a loop'

@ -11,7 +11,7 @@ class ControlledDelegateCall(AbstractDetector):
IMPACT = DetectorClassification.HIGH IMPACT = DetectorClassification.HIGH
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#controlled-delegatecall' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#controlled-delegatecall'
WIKI_TITLE = 'Controlled Delegatecall' WIKI_TITLE = 'Controlled Delegatecall'

@ -20,7 +20,7 @@ class DeprecatedStandards(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#deprecated-standards' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#deprecated-standards'
WIKI_TITLE = 'Deprecated Standards' WIKI_TITLE = 'Deprecated Standards'
WIKI_DESCRIPTION = 'Detect the usage of deprecated standards (as defined by SWC-111), excluding only `constant` keyword detection on functions.' WIKI_DESCRIPTION = 'Detect the usage of deprecated standards (as defined by SWC-111), excluding only `constant` keyword detection on functions.'

@ -23,7 +23,7 @@ class IncorrectStrictEquality(AbstractDetector):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#dangerous-strict-equalities' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#dangerous-strict-equalities'
WIKI_TITLE = 'Dangerous strict equalities' WIKI_TITLE = 'Dangerous strict equalities'
WIKI_DESCRIPTION = 'Use of strict equalities that can be easily manipulated by an attacker.' WIKI_DESCRIPTION = 'Use of strict equalities that can be easily manipulated by an attacker.'

@ -14,7 +14,7 @@ class TxOrigin(AbstractDetector):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#dangerous-usage-of-txorigin' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#dangerous-usage-of-txorigin'
WIKI_TITLE = 'Dangerous usage of `tx.origin`' WIKI_TITLE = 'Dangerous usage of `tx.origin`'
WIKI_DESCRIPTION = '`tx.origin`-based protection can be abused by malicious contract if a legitimate user interacts with the malicious contract.' WIKI_DESCRIPTION = '`tx.origin`-based protection can be abused by malicious contract if a legitimate user interacts with the malicious contract.'

@ -21,7 +21,7 @@ class ConstCandidateStateVars(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#state-variables-that-could-be-declared-constant' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#state-variables-that-could-be-declared-constant'
WIKI_TITLE = 'State variables that could be declared constant' WIKI_TITLE = 'State variables that could be declared constant'

@ -19,7 +19,7 @@ class UninitializedLocalVars(AbstractDetector):
IMPACT = DetectorClassification.MEDIUM IMPACT = DetectorClassification.MEDIUM
CONFIDENCE = DetectorClassification.MEDIUM CONFIDENCE = DetectorClassification.MEDIUM
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#uninitialized-local-variables' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#uninitialized-local-variables'
WIKI_TITLE = 'Uninitialized local variables' WIKI_TITLE = 'Uninitialized local variables'

@ -28,7 +28,7 @@ class UninitializedStateVarsDetection(AbstractDetector):
IMPACT = DetectorClassification.HIGH IMPACT = DetectorClassification.HIGH
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#uninitialized-state-variables' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#uninitialized-state-variables'
WIKI_TITLE = 'Uninitialized state variables' WIKI_TITLE = 'Uninitialized state variables'
WIKI_DESCRIPTION = 'Uninitialized state variables.' WIKI_DESCRIPTION = 'Uninitialized state variables.'

@ -19,7 +19,7 @@ class UninitializedStorageVars(AbstractDetector):
IMPACT = DetectorClassification.HIGH IMPACT = DetectorClassification.HIGH
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#uninitialized-storage-variables' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#uninitialized-storage-variables'
WIKI_TITLE = 'Uninitialized storage variables' WIKI_TITLE = 'Uninitialized storage variables'
WIKI_DESCRIPTION = 'An uinitialized storage variable will act as a reference to the first state variable, and can override a critical variable.' WIKI_DESCRIPTION = 'An uinitialized storage variable will act as a reference to the first state variable, and can override a critical variable.'

@ -17,7 +17,7 @@ class UnusedStateVars(AbstractDetector):
IMPACT = DetectorClassification.INFORMATIONAL IMPACT = DetectorClassification.INFORMATIONAL
CONFIDENCE = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH
WIKI = 'https://github.com/trailofbits/slither/wiki/Detectors-Documentation#unused-state-variables' WIKI = 'https://github.com/crytic/slither/wiki/Detector-Documentation#unused-state-variables'
WIKI_TITLE = 'Unused state variables' WIKI_TITLE = 'Unused state variables'

Loading…
Cancel
Save