본문 바로가기
Pwnable

Integer Overflow

by ms-eo 2025. 11. 19.

Integer

Integer 자료형

  • 보통 OS의 기본 연산 단위를 사용 (16bit : 2byte, 2bit/64bit : 4byte)
  • signed int 범위 : -2 31승 ~ +2 31승 -1
  • unsigned int 범위 : 0 ~ +2 32승 -1 (=4,294,967,295)

Integer Overflow

Integer Overflow 관련 CVE

CVE-2022-36934

  • 전 세계적으로 인기 있는 모바일 메신저 WhatsApp에서 발견된 취약점
  • Integer Overflow로 인해, 화상 통화에서 원격 코드 실행(RCE)을 유발할 수 있다고 발표
  • 공격자가 화상 통화 중에 사용자 상호 작용 없이 특수하게 조작된 임의 코드 실행이 가능

Integet Overflow

  • 정수형 자료형의 정해진 범위보다 크거나 작은 수를 저장할 때 발생하는 문제
  • 오류 발생 유무를 쉽게 알아차릴 수 없어 연산 결과가 옳은 값인지 확인하기 어려움

Integet Overflow Attack 기법 예시

  • 조건문에서 사용되는 변수에 값 입력 시, Integet Overflow를 발생시켜 조건문의 분기를 우회
  • 코드 내 중요 변수에 잘못된 값이 저장되면, Buffer Overflow 등 다른 bug들을 초래할 가능성 높음

보안 대책

  • Integer Overflow는 오류나 경고가 없어 에측하거나 발견하기 어려움
  • 정수형 변수의 입력값을 동적 할당 사용 시, 결과값의 범위를 체크하는 모듈 필요

 

'Pwnable' 카테고리의 다른 글

Heap Exploitation  (0) 2025.11.19
Heap Basic  (0) 2025.11.19
Format String Bug  (0) 2025.11.19
Buffer Overflow  (0) 2025.11.19
Pwnable Tools  (0) 2025.11.19