python
from collections import deque
python
counter( list input)
@
함수 가독성 및 재사용 , 상속 및 디버그용 기능 : 이미 수퍼클래스에서 선언된 함수를 하위 클래스에서 쓸 때취약점 분석시
파라미터를 주소값에 저장되서 저장되기때문에 스택에 남아있음. (f8 눌러서 확인해보자)
stack mem exe
포렌식 공부
mem-Analyst
PE
윈도우에서 실행되는 파일 포맷: exe, dll, sys, 등
메모리 순서는 똑같고 padding 만 다르다
메모리상 가상주소, 0x4010000 절대주소 두개로 나누어져있다
1. base 가상주소는 hex값으로 이진화된 주소로 저장됨
2. 이미지 베이스가 바뀌면 바뀌는것에 따라서 데이터를 알아서 불러올수있게 컴파일되어있다고 함?
3. NT헤더 등 어떤 함수를 정의하고 불러오게 했다고 함
PEview 등 원본 애플리케이션내의 파일이 훼손됬을 때 정상값을 잘 끌고와서 실행시키면 실행할수있다.
참고로 실행되기전 데이터 위치와 실행된 후의 데이터 위치가 다르다
다른 이유: 패딩의 크기가 다르다
질문> 파일이 저장되는거랑 memory에 올라가는게 다른거면 파일은 캐시메모리 쓰는거 아닌가?
애플리케이션등 코드가 실행되는 장소는 디스크임. 디스크에서 취약점 분석을 해서 각 이진화된 데이터를 확인함.
메모리 : 임시 메모리 속도가 빠름 ram 휘발성
디스크 메모리 : 영구메모리 속도가 상대적으로 느림 rom 보존됨
레지스터 메모리 : 이진화된 데이터 파일 저장소 트리구조,
애플리케이션은 함수를 실행시키거나 활용하여 파일 메모리를 읽어올수있다.
디스크 에서 > 상위 메모리 로 전달
파일 데이터로써 존재 > 실행시키면 메모리에 옮겨지는 것
xdbg 에서 강력한 권한을 받아서 애플리케이션 코드 변경이 가능한거임