티스토리 뷰



※ 레벨에대한 정확한 비밀번호를 알려드지는 않습니다.  힌트와 해결과정을 포스팅하려고합니다.

※ 이 게시물은 시스템에대한 폭넓은 이해를 돕기위함이며, 이 게시물을 악용하여 발생한 피해는 책임지지 않습니다.

※ 최대한 스스로 풀어보시기를 권합니다.





  

level3 디렉토리 안에 있는 hint의 내용을 살펴 봅시다.




hint에대한 코드를 분석 해봤습니다.





hint에서 주어진 autodig라는 파일의 이름이나, 레벨1과 레벨2에서 했던 것과 같이 파일의 권한으로 level3의 취약한 

   파일을 찾을 수 있습니다.

  # 이렇게 공격할 파일 "autodig"를 찾았습니다.


  

hint에서 알 수 있듯이 autodig를 사용할 때 " " (더블 쿼터)를 이용해서 문자열 형태로 명령어를 전달할 수 있습니다.






system("dig@" +argv[1] + "Version.bind chaos.txt")가 실행되는데 ,..

   # 이때 dig라는 명령과 우리가 입려한 문자열이 명령으로 실행 되는 것 입니다.




↑ 우리가 원하는 명령은 /bin/bash(=sh)에서 my-pass 명령을 사용하는 것 이므로, 이같은 방법으로 문제를 해결할 수 있습니다.