민감한 매개변수가 사용 후 활성 메모리에서 0으로 설정되었는지 확인하기 위해 간단한 테스트를 작성하려고 합니다. 이것이 내가 생각하는 것입니다.
- 애플리케이션에서 중요한 매개변수(바이트 배열)의 포인터 위치 가져오기
- in 범위를 살펴보거나 in 범위를 살펴봄으로써 결정합니다
[heap]
(이것은 또한 런타임 시 변수를 배치하는 위치에 주의를 기울이는 것을 의미합니다).[stack]
/proc/self/map
/proc/self/mem
배열의 값을 열고 읽습니다.
문제는 애플리케이션에서 보고한 포인터 위치와 주어진 주소 범위의 매핑이 분명히 누락되었다는 것입니다 /proc/self/map
. 기본적으로 애플리케이션에서 인쇄한 포인터는 힙이나 스택의 범위에 속하지 않습니다.
2022/10/19 09:59:39 the point to byte array 0xc0000a6060
2022/10/19 09:59:39 [heap] start 7c0000 stop 7e1000
2022/10/19 09:59:39 [stack] start 7ffcfa467000 stop 7ffcfa489000
포인터 값을 중간 범위에 매핑하는 방법은 무엇입니까 /proc/self/map
?