Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump version #1991

Merged
merged 143 commits into from
Jun 23, 2023
Merged
Changes from 1 commit
Commits
Show all changes
143 commits
Select commit Hold shift + click to select a range
0ee1c64
fail-on: rework feature
elopez Nov 8, 2022
0e2f085
Support user defined operators
smonicas Feb 23, 2023
5edc3c2
Add tests
smonicas Mar 10, 2023
1dd3d33
Merge branch 'dev' into dev-ud-operators
smonicas Mar 10, 2023
64abf06
Run pylint
smonicas Mar 10, 2023
cc650f5
Black
smonicas Mar 10, 2023
072cb0b
Find tainted functions/variables from external calls
webthethird Mar 29, 2023
4b6dd02
Find contracts tainted by inheriting a tainted contract
webthethird Mar 30, 2023
0deff18
Add docstring to `tainted_inheriting_contracts`
webthethird Mar 30, 2023
5967958
Black
webthethird Mar 30, 2023
675dbea
Get tainted variables in `tainted_inheriting_contracts`
webthethird Mar 31, 2023
d88bba4
Fix too many values to unpack in test_upgradeability_util.py
webthethird Mar 31, 2023
cba0dc9
Add python types
webthethird Mar 31, 2023
386c3e1
Pylint and black
webthethird Mar 31, 2023
20f5825
Pylint and black
webthethird Mar 31, 2023
c786658
Merge remote-tracking branch 'crytic/slither/dev' into dev-upgradeabi…
webthethird Mar 31, 2023
f585d2b
Add TODO
webthethird Mar 31, 2023
2b330a1
Tweak how tainted variables are handled
webthethird Apr 3, 2023
da045d6
Make TaintedExternalContract a regular class
webthethird Apr 4, 2023
d1b34b6
Avoid string comparison
webthethird Apr 4, 2023
85c22f4
Avoid re-defining `contracts` in `tainted_inheriting_contracts`
webthethird Apr 4, 2023
38acd93
Add inline comments
webthethird Apr 4, 2023
98a5cf0
Use canonical_name in comparisons
webthethird Apr 4, 2023
1e73979
Fix expected tainted funcs, since we changed what's considered tainted
webthethird Apr 4, 2023
178960f
Simplify by removing `TaintedFunction` and `TaintedVariable` classes
webthethird Apr 4, 2023
3bcefac
Black
webthethird Apr 4, 2023
ae7f0b2
Only check internal calls to Functions
webthethird Apr 10, 2023
ca82da0
Update compare docstring
webthethird Apr 17, 2023
853051e
Reduce tainted variables to only written
webthethird Apr 17, 2023
823337e
Update test
webthethird Apr 17, 2023
6ccc8cf
Black
webthethird Apr 17, 2023
ef2eadc
Update test_upgrades_compare to test cross-contract taint
webthethird Apr 19, 2023
7a2fc5c
remove new array depth and parse length upfront
0xalpharush Mar 17, 2023
8f9fe80
update test to check nested array length
Troublor Mar 21, 2023
aadee32
Fix incorrect array_type in NewArray
Troublor Mar 21, 2023
73f5ad3
Fix pylint issues
Troublor Mar 21, 2023
063418d
Assert array dynamic or static
Troublor Apr 2, 2023
c8e6c4a
Reorder assertions
Troublor Apr 2, 2023
0c803a1
fix broken test
Troublor Apr 21, 2023
b26f8da
Improve try-catch parsing
smonicas Apr 24, 2023
c412ca7
Merge branch 'dev' into array-type
Troublor Apr 25, 2023
d7b0d61
Improve handling of multiple return variables
smonicas Apr 27, 2023
50876cf
Handle when there aren't return variables
smonicas Apr 27, 2023
6eb296c
Test catch variables not detected as uninitialized
smonicas Apr 27, 2023
eaf5cb7
Catch AssertionError and log context and raise again while parsing
duelinggalois Apr 22, 2023
a4589b0
ran black to fix check
duelinggalois Apr 28, 2023
bcf570e
feat: loc printer
devtooligan May 2, 2023
4f67630
Detector for incorrect using-for at the top level added
bart1e Feb 9, 2023
5a450a0
Black run
bart1e Feb 9, 2023
32d4bba
Tests updated
bart1e May 3, 2023
f481899
Detector for array length caching added
bart1e Feb 26, 2023
71fef2c
'unsupported operand type' error fix
bart1e Feb 26, 2023
d1804f3
Tests updated
bart1e May 3, 2023
9cc616e
Old tests removed
bart1e May 3, 2023
2da5ee4
Fix multiple try catch with same return var name
smonicas May 10, 2023
2cdc544
Make cross-contract taint optional in `compare`
webthethird May 10, 2023
a15ab76
Catch Exception in more places
smonicas May 10, 2023
1064185
Update test
webthethird May 10, 2023
af7279a
Update docstring
webthethird May 10, 2023
8408788
chore: add to scripts/ci_test_printers.sh
devtooligan May 11, 2023
05d801f
Merge branch 'dev' into array-type
0xalpharush May 15, 2023
0b72572
External calls handled + output printing changed
bart1e May 15, 2023
a21e7b4
Fix yul function calls
smonicas May 15, 2023
413a50a
Fix call to a function in an inner scope
smonicas May 15, 2023
560319a
Merge branch 'dev' into detector_for_invalid_using_for
montyly May 19, 2023
649e8d5
Minor python improvements
montyly May 19, 2023
e8e1681
Merge pull request #1653 from bart1e/detector_for_invalid_using_for
montyly May 19, 2023
6a10e0a
Merge branch 'dev' into dev-upgradeability-util-cross-contract-taint
webthethird May 19, 2023
bb76a5b
Merge pull request #1784 from Troublor/array-type
montyly May 22, 2023
9896771
Merge pull request #1873 from duelinggalois/feature/add-logging-for-a…
montyly May 22, 2023
fda41f4
chore: bump pip-audit to 1.08
0xalpharush May 23, 2023
48e3466
Merge pull request #1936 from crytic/update-pip-audit
0xalpharush May 23, 2023
b932371
Avoid IndexError in `is_function_modified`
webthethird May 24, 2023
58391ae
Improve encoding for comparison
webthethird May 24, 2023
14700e7
Merge branch 'dev' into upgradeability-util-bug-fix
webthethird May 24, 2023
e1cd39f
Merge branch 'dev' into loc-printer
montyly May 25, 2023
e855728
- Move LoC features into utils.loc as they are now used by two printers
montyly May 25, 2023
4ff33c0
Merge branch 'dev' into dev-upgradeability-util-cross-contract-taint
webthethird May 25, 2023
00461aa
slither-read-storage native POA support (#1843)
webthethird Jun 2, 2023
a826831
initial optimization
0xGusMcCrae Jun 2, 2023
1b4c0b9
reduced num iterations in inner loop
0xGusMcCrae Jun 2, 2023
15e8ce9
remove changes to how similar() works
0xGusMcCrae Jun 3, 2023
173698d
linting
0xGusMcCrae Jun 3, 2023
5f9abc2
fix evm printer for solc > 0.6.0 (#1567)
A-23187 Jun 3, 2023
0c27b00
add support for prevrando (solc 0.8.18)
0xalpharush Jun 5, 2023
30a4428
use current scope instead of parent scope to determine if arith. is c…
0xalpharush Jun 7, 2023
1bfaf2a
Merge branch 'dev' into dev-reworked-fail-on
0xalpharush Jun 7, 2023
22d68d3
Merge branch 'dev' into detector_for_array_len_caching
0xalpharush Jun 7, 2023
e2d91fc
Merge branch 'dev' into dev-try-catch-parsing
0xalpharush Jun 7, 2023
3ed6dee
fix: make _convert_to_structure_to_list return a type instead of an E…
kevinclancy Jun 7, 2023
adabce6
Detect when ether is sent in Yul (#1909)
smonicas Jun 8, 2023
d0f12dc
Fix bytes pop ir (#1926)
smonicas Jun 8, 2023
c8d20ac
do not recommend changing mutability for abstract contracts (#1952)
0xalpharush Jun 9, 2023
fc9377d
fail if artifact does not existing (#1947)
0xalpharush Jun 9, 2023
fc28eee
Merge pull request #1862 from crytic/dev-try-catch-parsing
montyly Jun 9, 2023
e020291
Merge branch 'dev' into dev-reworked-fail-on
montyly Jun 9, 2023
aafdf34
Merge pull request #1917 from crytic/dev-yul-functions-call
montyly Jun 9, 2023
3f8d719
Merge pull request #1945 from 0xGusMcCrae/fast-sim-var
montyly Jun 9, 2023
414d976
Merge pull request #1946 from crytic/feat/support-prevrando
montyly Jun 9, 2023
1e709fd
additional optimizations for similar_variables.py
0xGusMcCrae Jun 10, 2023
a00e562
Merge branch 'dev' into loc-printer
devtooligan Jun 14, 2023
7cb7cb9
inform user if inheritance cannot be resolved (#1956)
0xalpharush Jun 15, 2023
ccad542
Handle if crytic-compile returns an empty ast (#1961)
smonicas Jun 15, 2023
4735769
Fixed issue which disallowed using operator[] with TopLevelVariables
Tiko7454 Jun 20, 2023
1a1fc0e
Merge branch 'dev' into loc-printer
devtooligan Jun 20, 2023
8a5aab6
reduce false positives on modifying storage array by value detector (…
0xalpharush Jun 20, 2023
cec07db
feat: add `--unstructured` to slither-read-storage; retrieve custom s…
0xalpharush Jun 20, 2023
eacbf5c
Create dependabot.yml (#1972)
0xalpharush Jun 20, 2023
d56f663
create release action with sigstore (#1957)
0xalpharush Jun 20, 2023
7f7ff77
docs: update recommendation for msg.value-inside-a-loop (#1971)
PaulRBerg Jun 20, 2023
068eee8
add test
0xalpharush Jun 20, 2023
45517d7
Merge branch 'dev' into fix/checked-scope
0xalpharush Jun 20, 2023
96b1032
fix merge/fmt
0xalpharush Jun 20, 2023
dd052cd
Merge branch 'dev' into master
Tiko7454 Jun 21, 2023
8e0e7b7
fix event canonical_name
0xxfu Jun 21, 2023
1b5e2e9
update detector tests to reflect event fmt
0xalpharush Jun 21, 2023
e1febdd
Check the respective parameter's storage location for each argument
bossjoker1 Jun 21, 2023
b89ca1a
linting
0xGusMcCrae Jun 21, 2023
a96cb8f
Merge branch 'dev' into dev-reworked-fail-on
montyly Jun 22, 2023
baf5948
Merge pull request #1882 from crytic/loc-printer
montyly Jun 22, 2023
f9d2573
Merge pull request #1951 from crytic/fix/checked-scope
montyly Jun 22, 2023
23d3175
Merge pull request #1938 from webthethird/upgradeability-util-bug-fix
montyly Jun 22, 2023
493c8ff
Merge pull request #1816 from webthethird/dev-upgradeability-util-cro…
montyly Jun 22, 2023
3af38ff
Merge pull request #1980 from 0xGusMcCrae/fast-sim-var-2
montyly Jun 22, 2023
7d76726
Merge branch 'dev' into fix-author-pr-1962
montyly Jun 22, 2023
5681540
Merge pull request #1976 from crytic/fix/canonical_event_name
montyly Jun 22, 2023
3498d8c
Merge branch 'dev' into master
Tiko7454 Jun 22, 2023
a603935
Merge branch 'dev' into dev-ud-operators
smonicas Jun 22, 2023
a6fb92f
Bound function search to first parameter type
smonicas Jun 23, 2023
3f1db7a
Look for library functions in the current scope
smonicas Jun 23, 2023
f2accfd
Add test
smonicas Jun 23, 2023
ace672e
Rename tests to run to ALL_TESTS
smonicas Jun 23, 2023
940a0a1
Update CONTRIBUTING.md
smonicas Jun 23, 2023
e1fd670
Minor
smonicas Jun 23, 2023
8dc4162
Merge pull request #1986 from crytic/update-contributing
montyly Jun 23, 2023
69bf3bb
Merge pull request #1968 from Tiko7454/master
montyly Jun 23, 2023
9f13bd8
Merge pull request #1694 from bart1e/detector_for_array_len_caching
montyly Jun 23, 2023
6c5b926
Merge pull request #1979 from crytic/fix-author-pr-1962
montyly Jun 23, 2023
79579f9
Merge pull request #1684 from crytic/dev-ud-operators
montyly Jun 23, 2023
8b0fd32
use enum instead of value in config, lint
0xalpharush Jun 23, 2023
f0d5a3f
Merge pull request #1462 from elopez/dev-reworked-fail-on
0xalpharush Jun 23, 2023
04fad19
Merge pull request #1990 from crytic/master
0xalpharush Jun 23, 2023
0e86f3d
0.9.4
0xalpharush Jun 23, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Add python types
webthethird committed Mar 31, 2023
commit cba0dc95111b85d0896e870531dc86255c9fd923
4 changes: 2 additions & 2 deletions slither/utils/upgradeability.py
Original file line number Diff line number Diff line change
@@ -203,8 +203,8 @@ def tainted_external_contracts(funcs: List[Function]) -> List[TaintedExternalCon
variables: List[Variable]
)
"""
tainted_contracts = {}
tainted_list = []
tainted_contracts: dict[str, TaintedExternalContract] = {}
tainted_list: list[TaintedExternalContract] = []

for func in funcs:
for contract, target in func.all_high_level_calls():