ExactCalldataBatchEnforcer should pin terms target and value
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 74/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- solidity
- Lĩnh vực
- blockchain, security
Hướng nghiên cứu
Bắt đầu bằng cách xác định ExactCalldataBatchEnforcer và beforeHook của nó, sau đó so sánh logic kiểm tra theo batch của nó với ExactExecutionBatchEnforcer và các thuật ngữ ABI được mô tả trong issue. Thêm kiểm thử hồi quy cho việc thay đổi target và việc gắn một giá trị khác không, rồi chạy bộ kiểm thử Solidity hiện có để xác nhận rằng cả hai trường hợp đều fail closed.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
ExactCalldataBatchEnforcer terms are encoded as Execution[] (target, value, calldata), but beforeHook only compares calldata. A redeemer can reuse the same calldata against a different target (or attach native value).
Sibling enforcer ExactExecutionBatchEnforcer already pins the full execution. Single-call ExactCalldataEnforcer correctly treats terms as raw calldata only; the batch variant's terms ABI implies the fuller check.
Proposal
In the batch loop, also require target and value equality with the terms executions (fail closed), plus regression tests for target-swap and non-zero value.
Happy to open a PR against main.
- Ngôn ngữ chính
- Solidity
- Star
- 230
- Fork
- 122
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của MetaMask/delegation-framework
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 53/100
MetaMask/delegation-framework#216 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
MetaMask/delegation-framework#215 ·
-
MultiSigDeleGator: support smart contract accounts as signers (ERC-1271)Có thể đã có người làm @Muhammad-Altabba đã nhận 30 ngày trước. Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 18/100
MetaMask/delegation-framework#213 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
MetaMask/delegation-framework#192 · 1 bình luận ·
-
UKZToken.solĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 15/100
MetaMask/delegation-framework#185 ·
Tất cả issue của MetaMask/delegation-framework
Issue tương tự
-
Log filters reject `"fromBlock": null` (and `toBlock`/`blockHash`) instead of treating it as unsetĐang mởL1 rpc-api
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
lambdaclass/ethrex#7530 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 91/100
Maintainer thường phản hồi trong vòng 1 ngày
-
[BUG]: Oracle with rewardBps above 1e5 can never accept a funded price submissionCó thể đã có người làm @kansalakshat đã nhận 1 ngày trước. Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
StabilityNexus/OrbOracle-Solidity#27 · 1 bình luận ·
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
LFDT-Lineth/lineth-monorepo#4442 ·
Maintainer thường phản hồi trong vòng 1 ngày