안녕하세요.
현재 libc를 로딩할때 static이나 shared로 링킹되었는지 확인하는 방법이 필요한데요.
이에,,
[아이디어]
malloc의 주소가 .plt 테이블안에 있다면? Shared로 판별하자
[접근과정]
이런 아이디어로 접근하고 있습니다.
문제는 현재 실행중인 .plt의 address를 알아야겠는데요.
memcpy( Elf32_Ehdr elfHdr, base_address, sizeof(Elf32_Ehdr));
를 통해서
base_address ~ 헤더크기만큼 메모리를 가져와 elf header구조체에 넣고,
이를 통해 plt 섹션을 가져와 보려고 합니다.
현재 elf header는 잘 뽑아지고,
readelf 등과 비교해서 잘 정보가 나오는데요,
[현재문제]
도저히 섹션정보를 가져올수가 없습니다.
혹시 관련하여 아이디어가 있으시면 조언 부탁드립니다.ㅠ