본문 바로가기

2017/09/07

cmd1 이번엔 각설하고 소스코드!! argv[1]을 실행하는데 이 부분을 필터링한다. sh를 우선 필터링하면 cmd1_pwn권한으로 shell을 띄울 수 없게 된다. tmp는 직접 짠 프로그램도 못쓰게 하겠다는 의미이다. 야박하다. 모든 필터링을 우회해서 shell을 띄울 고민을 한참 하던 중 shell과 비슷한 모습을 하는 친구가 생각이 났다. python명령어를 실행하면 python 코드를 한 줄씩 수행할 수 있는, 마치 shell과 같은 모습을 띈다. 일단 해봅시다 그럼 안된다. 생각해보니 system함수 앞에서 putenv로 PATH에 욕을 써놨다. 그럼 python의 경로까지 다 입력해주자 된다. cmd1 프로그램을 사용해 실행한 python 명령어이다. cmd1_pwn권한을 갖고 있기 때문에 flag..
shellshock bash에 대한 shocking한 뉴스가 있단다. 얼마나 shocking한지 한번 보도록 하자. 우선 소스코드가 매우 짧다. /home/shellshock/ 경로에 있는 bash shell로 echo명령어를 수행한다. 뭘 어쩌라는건지.... 검색을 거듭한 결과 bash shell에 shellshock라는 취약점이 있다는 것을 알았다. env x='() { :;}; [hidden line]' bash -c "[main line]" shellshock 취약점 구문이다. env x='' 환경변수를 설정해주는 구문으로 뒤에 나오는 hidden line은 실행되지 않는 게 정상이다. 하지만 취약점 패치 전에는 이 hidden line이 실행이 된다고 한다. input값 검증이 제대로 안돼서 일어난 취약점이다. 우..