모바일 앱 해킹 및 보안/iOS
메모리 내 중요정보 노출 취약점
UNIVERSE3141
2023. 4. 23. 16:43
- 취약점 설명: 로그인 계정정보, 주민등록번호 등 중요정보가 메모리에 평문으로 저장되는 경우 공격자는 메모리 덤프를 수행하여 메모리 내 중요 데이터 탈취가 가능함
- 메모리 내 데이터 저장 방식
메모리 영역은 변수나 객체가 저장되는 영역으로 ,스택과 힙 메모리 영역으로 구분됨
> 스택 메모리 영역: 값 타입의 변수를 저장
> 힙 메모리 영역: 참조 타입의 객체를 저장
값 타입: 직접 값을 담도 있는 변수이며, 변수에 할당된 값이 직접 저장됨
ex) int num = 1;
참조 타입: 값이 저장된 위치를 저장하는 변수이며, 변수에 할당된 값은 객체나 배열이 저장된 메모리 주소를 참조함
ex) String s = "test";
- 취약한 소스코드 예시
String 타입 사용
> String 타입의 변수를 null로 초기화 -> 취약
> String 타입의 변수 값을 다른 값으로 덮어쓰기 -> 취약
- 양호한 소스코드 예시
Char 배열 타입 사용
사용 후 초기화 할 것
또다른 대응방안
> 키보드 보안 솔루션 적용
--- 참고 사이트 ---
https://jdh5202.tistory.com/967