ExactCalldataBatchEnforcer should pin terms target and value

Đang mở
#198 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

@SashaMIT đang làm issue này rồi.

Từ ngày 8/8/2026.

  • #199 của @SashaMIT — đang mở

Đá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

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của MetaMask/delegation-framework

Tất cả issue của MetaMask/delegation-framework

Issue tương tự

Thêm issue về Blockchain

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.