728x90
- 정수형 변수의 오버플로우는 정수값이 증가하면서, Java에서 허용된 가장 큰 값보다 더 커져서 실제 저장되는 값은 의도하지 않게 아주 작은 수이거나 음수가 될 수 있다.
- 특히 반목문 제어, 메모리 할당, 메모리 복사 등을 위한 조건에서 발생하면 보안상 문제를 유발할 수 있다.
- 언어/플래폼 별 정수타입의 범위를 확인하여 사용한다.
ex)
1. 배열의 크기 값이 음수값이 아닌지 검사한다.
if (size < 0) return;
2. 최대값 체크
if((dataIndex < 0 ) || (dataIndex > Integer.MAX_VALUE / DATA_SIZE)){
return;
}
728x90
'△ > SecureCoding' 카테고리의 다른 글
SQL 삽입공격 : mybatis Data Map (0) | 2022.11.18 |
---|---|
보호 메커니즘을 우회할 수 있는 입력값 변조 (0) | 2022.11.18 |
HTTP 응답 분할 (0) | 2022.11.16 |
절대 디렉터리 경로 조작 (0) | 2022.11.16 |
상대 디렉터리 경로 조작 (0) | 2022.11.16 |
댓글