
# CVE-2019-12735 개념 증명 익스플로잇 Vim/Neovim 모델라인 기능을 통한 임의 명령 실행을 시연하는 개념 증명 익스플로잇입니다. 교육용 보안 테스트를 위한 셸코드 주입 및 리버스 셸 페이로드 생성을 포함합니다.
전제 조건으로 modeline 기능을 활성화해야 합니다.
일반 사용자의 modeline 기능은 기본적으로 활성화되어 있지만, root 사용자는 기본적으로 비활성화되어 있습니다.
echo &modeline을 사용해 활성화 상태를 확인하세요. 1은 활성화, 0은 비활성화입니다.
없다면 ~/.vimrc(해당 파일이 없으면 직접 생성하면 됩니다)에 set modeline을 추가하면 됩니다.
직접 작성할 때는 이스케이프 문자 x1b가 비표시 문자라는 점을 고려해야 합니다.
두 번째 익스플로잇 코드를 수정하려면 간단한 방법으로 소스 파일을 다운로드하여 명령 실행 부분을 수정하거나, 바이너리 편집기를 사용해 직접 작성하거나 수정할 수도 있습니다.
poc.txt:
vim poc.txt
shell.txt:
nc -lvp 9999
vim shell.txt
그러면 getshell할 수 있습니다