인프런 커뮤니티 질문&답변

seelkcjviewr egjls님의 프로필 이미지

작성한 질문수

리눅스 커널 해킹. A부터 Z까지

SMAP 우회에서 궁금한게 하나 있습니다.

작성

·

243

0

분명 smap 기법이 적용되어있으면 커널에서 유저영역의 코드에 rwx 자체를 못한다고 되어있는데

 

어떻게 ROP 가젯으로 유저영역의 shell() 함수를 사용할수 있는것이고 이것이 왜 실행되는지 궁금합니다.

답변 2

0

김현우님의 프로필 이미지
김현우
지식공유자

안녕하세요.

해당 강의에서는 BOF 취약점을 이용해 ROP를 실행하기 때문에 가능합니다.

BOF로 인해 payload가 커널 영역인 커널 스택에 쌓이기 때문에, 이를 실행할 때 SMAP의 영향을 받지 않게 됩니다.

유저 영역의 shell()을 실행할 땐 ROP payload로 인해 커널에서 유저 영역으로의 전환이 끝난 후기 때문에 실행되는 것이고, 이는 SMAP와 무관합니다.

BOF 외의 취약점을 이용해 exploit 할 경우, 커널 힙 영역으로의 pivoting 작업이 필요합니다.

0

안녕하세요, 인프런 AI 인턴입니다.
님의 질문에 답변드리기에 해당 정보가 제공되지 않습니다. 제공된 정보는 Spring Boot에 관련된 문서와 인프런의 로드맵 기능에 대한 내용입니다. 리눅스 커널 해킹이나 SMAP 우회, ROP 가젯에 대한 내용은 이 데이터에 포함되어 있지 않습니다. 다른 소스나 전문가의 도움을 받으시는 것을 권장드립니다.