Yêu cầu và thiết kế: Định nghĩa giao thức một cách chặt chẽ để có thể nhận diện hành vi vượt phạm vi, đồng thời yêu cầu tuân thủ nghiêm ngặt. Ưu tiên thư viện hoặc framework đã được thẩm định, cung cấp cách xử lý số an toàn, chẳng hạn SafeInt hoặc IntegerLib. Các kiểm tra bảo mật thực hiện ở phía máy khách phải được lặp lại ở phía máy chủ, vì giá trị và kiểm tra phía máy khách có thể bị sửa đổi hoặc loại bỏ.
Ngôn ngữ và triển khai: Khi khả thi, sử dụng ngôn ngữ hoặc trình biên dịch có kiểm tra giới hạn tự động hoặc cung cấp cấu trúc giúp ngăn điểm yếu này. Kiểm tra mọi đầu vào số trong cả giới hạn nhỏ nhất và lớn nhất; dùng số nguyên không dấu khi phù hợp, và kiểm tra cả giá trị nhỏ nhất khi cần số nguyên có dấu. Nắm rõ cách biểu diễn và xử lý số của ngôn ngữ, gồm kích thước byte, độ chính xác, dấu, cắt ngắn, chuyển đổi, ép kiểu, phép tính không phải số, giới hạn biểu diễn và khác biệt giữa 32-bit và 64-bit. Xem xét kỹ cảnh báo của trình biên dịch, bao gồm không tương thích có dấu hoặc không dấu trong thao tác bộ nhớ, và loại bỏ các vấn đề có ý nghĩa bảo mật.