T09 · Insecure Skill Coding Practices
- Location
references/continuation.md:175- Finding
Unchecked numeric inputs allow division-by-zero denial of service
- Content
View full analysis
- Remediation
View remediation
None: if not isinstance(value, (int, float)) or not math.isfinite(value) or value <= 0: raise ValueError(f"{name} must be a finite number greater than zero") def require_nonnegative_integer(name: str, value: int) -> None: if not isinstance(value, int) or isinstance(value, bool) or value < 0: raise ValueError(f"{name} must be a nonnegative integer") require_positive_number("original_price", original_price) require_positive_number("duration_days", data.duration_days) require_nonnegative_integer("total_orders", data.total_orders) new_user_ratio = ( data.new_users / data.total_orders * 100 if data.total_orders > 0 else 0.0 ) ``` ]]>
