mirror of https://github.com/ConsenSys/mythril
blockchainethereumsmart-contractssoliditysecurityprogram-analysissecurity-analysissymbolic-execution
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
2.0 KiB
64 lines
2.0 KiB
7 years ago
|
# Analysis Results
|
||
|
## Dependence on predictable environment variable
|
||
|
- Type: Warning
|
||
|
- Contract: WeakRandom
|
||
|
- Function name: `_function_0xe9874106`
|
||
|
- PC address: 1285
|
||
|
|
||
|
### Description
|
||
|
In the function '_function_0xe9874106' the following predictable state variables are used to determine Ether recipient:
|
||
|
- block.coinbase
|
||
|
|
||
|
|
||
7 years ago
|
In *<TESTDATA>/inputs/weak_random.sol:47*
|
||
7 years ago
|
|
||
|
```
|
||
|
winningAddress.transfer(prize)
|
||
|
```
|
||
|
## Ether send
|
||
|
- Type: Warning
|
||
|
- Contract: WeakRandom
|
||
|
- Function name: `_function_0xe9874106`
|
||
|
- PC address: 1285
|
||
|
|
||
|
### Description
|
||
7 years ago
|
In the function '_function_0xe9874106' a non-zero amount of Ether is sent to an address taken from storage slot 0.
|
||
|
There is a check on storage index 0. This storage slot can be written to by calling the function 'fallback'.
|
||
7 years ago
|
|
||
7 years ago
|
There is a check on storage index 1. This storage slot can be written to by calling the function 'fallback'.
|
||
|
There is a check on storage index 1. This storage slot can be written to by calling the function 'fallback'.
|
||
7 years ago
|
|
||
7 years ago
|
In *<TESTDATA>/inputs/weak_random.sol:47*
|
||
7 years ago
|
|
||
|
```
|
||
|
winningAddress.transfer(prize)
|
||
|
```
|
||
|
## Exception state
|
||
|
- Type: Informational
|
||
|
- Contract: WeakRandom
|
||
|
- Function name: `fallback`
|
||
|
- PC address: 356
|
||
|
|
||
|
### Description
|
||
|
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. This is acceptable in most situations. Note however that assert() should only be used to check invariants. Use require() for regular input checking.
|
||
|
|
||
7 years ago
|
In *<TESTDATA>/inputs/weak_random.sol:11*
|
||
7 years ago
|
|
||
|
```
|
||
|
prize / totalTickets
|
||
|
```
|
||
|
## Exception state
|
||
|
- Type: Informational
|
||
|
- Contract: WeakRandom
|
||
|
- Function name: `_function_0xe9874106`
|
||
|
- PC address: 146
|
||
|
|
||
|
### Description
|
||
|
A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. This is acceptable in most situations. Note however that assert() should only be used to check invariants. Use require() for regular input checking.
|
||
|
|
||
7 years ago
|
In *<TESTDATA>/inputs/weak_random.sol:11*
|
||
7 years ago
|
|
||
|
```
|
||
|
prize / totalTickets
|
||
|
```
|