Kiểm toán hay không, bộ kiểm thử của bạn cần phải hoạt động như một đội tấn công.
– Chạy kiểm thử đột biến để phá vỡ các bất biến
– Phân tích tĩnh để phát hiện sự mục nát về cấu trúc
– Fuzzing được gieo mầm bằng các đầu vào có hình dạng của kẻ tấn công
– Kiểm tra hoán đổi vai trò (msg.sender so với tx.origin) và ngữ cảnh delegatecall
– Mô phỏng sự tăng đột biến gas, trôi timestamp và độ trễ của oracle
– Reentrancy từ các đường dẫn không rõ ràng, không chỉ là các entrypoint
Nếu CI của bạn không bị phá vỡ dưới tải đó, thì nó không bảo mật bất cứ điều gì.