#hint : 프로그램 코드가 주어지고, 이를 분석하여 level4의 권한을 열어야 한다.
- if( argc!=2){...}
-> 인자값이 2가 아니면 printf 두줄을 출력한다.
- strcpy( cmd, "dig @" );
-> cmd에 "dig @"를 복사
-> dig : DNS 정보 확인 명령어
- strcat( cmd, argv[1] );
-> 입력한 문자열 (argv[1])을 이어붙임
- strcat( cmd, " version.bind chaos txt");
-> " version.bind chaos txt"를 cmd에 이어붙임
tip) strcpy : 문자열 복사
strcat : 문자열 이어붙이기
- system( cmd );
-> cmd 문자열 실행
: "dig @(입력한 문자열) version.bind chaos txt"
hint1 : 동시에 여러 명령어를 사용하려면?
-> ";" 기호를 사용한다.
hint2 : 문자열 형태로 명령어를 전달하려면?
-> " " 로 감싸주어야 한다.
즉, 입력한 문자열 부분에서 첫 번째 입력값은 dig 명령어의
파라미터로 들어가게 되므로,
"(dig파라미터);(실행명령어) #(뒷부분 주석처리)"
" ;my-pass #"를 입력하여야 한다.
#autodig 파일찾고 이동.
#autodig " ;my-pass #"
실제 실행 코드 : dig @ ;my-pass # version.bind chaos txt
'[P]wnable&[R]eversing > [P]HackerSchool(FTZ)' 카테고리의 다른 글
HackerSchool level-4 (0) | 2021.05.09 |
---|---|
HackerSchool level-2 (0) | 2021.05.09 |
HackerSchool level-1 (0) | 2021.05.09 |