Remote에서 rwx 권한을 어떻게 확인할 수 있나요?..
안녕하세요. local에서는 memset의 got entry와 bss 모두 실행 권한이 없다고 나오고, 둘 다 shellcode로 overwrite하려니 Seg fault가 발생하는데, remote에서는 memset의 got나 bss 모두 shellcode로 overwrite하니 shell을 잘 획득할 수 있네요.
혹시나 해서 local에서의 vmmap 결과를 첨부합니다.
Local과 remote에서 이렇게 rwx 권한이 다르게 설정되어 있는 경우가 어떻게 있을 수 있는지 (같은 executable인데..), 그리고 이렇게 다른 경우 remote의 rwx 권한을 어떻게 파악하면 되는지 궁금합니다..
또 문제에서 validator_server 파일은 왜 주어진건가요? dist 파일과 동일해 보이던데 무슨 차이가 있는지 궁금합니다.
#pwnable
작성자 정보
답변
2
wyv3rn
무플 방지 위원회장
동일하게 쓰기 권한이 있는 것 같은데요 ㅎㅎ
로컬에서 쓰려는 주소와 vmmap으로 본 쓰기 가능한 주소를 비교해보시겠어요?
해당 영역의 권한은 보호 기법에 따라 다르고, 아시다시피 relro입니다.
Sechack
2024 Invitational Contenders
https://medium.com/csg-govtech/why-doesnt-my-shellcode-work-anymore-136ce179643f 버전에 따라서 다르게 나올 수 있어요. 자세한건 위 링크 참고하세요.