전체 글

level 3 풀이. pw = "can you fly?" 일단 항상 문제를 접근하기 위해서는 cat hint를 쳐서 힌트를 찾아봐야 한다. 일단 갑자기 hint의 길이가 길어졌다. C를 기반으로 한 프로그램 소스가 등장했다.일단 int main부터 차례대로 보자면,1번째 int main ~~~는 main이 어떤 값을 받았다는 뜻.2번째 char ~~~~는 cmd 변수에 100칸을 할당해주는데 char 형으로 100byte 변수.3번째 if ~~~~~는 argc변수가 2가 아닐 때 if 문을 실행한다.(!가 있으니 반대).4번째 printf ~~~~는 (auto ~~~문구를 출력)5번째 printf ~~~~는 (usage: ~~~~host라는 문구를 출력)6번째 exit ~~~는 말 그대로 코드 밖으로 나..
Level 2 풀이. pw = " Hacker or cracker" 일단 cat hint를 통해 힌트를 찾아본다."텍스트 파일 편집 중 쉘의 명령을 실행시킬 수 있다는데..." 라는 문구가 등장.일단 SETUID가 걸린 부분을 찾기 위해 명령어를 사용.모양이 텍스트 파일 편집이라고 하니 마치 VI 편집기 같다. Find 어쩌구 저쩌구 하는 명령어는 level 1 풀 때 자세히 설명했다./usr/bin/editor 이라는 것이 나타났는데, 해석해보자면,/usr/bin/editor에 level3의 권한을 가진 SETUID가 존재한다는 뜻. 일단 저기로 이동해야 한다. editior가 정확히 뭘 의미하는지 몰라서 확인해보니 말 그대로 editor 였다는 것을 확인. 위에서 나타났듯이 editor는 VI edi..
level 1 풀이. 일단 Cat hint로 문제 파악해봤다.SETUID가 걸린 파일을 찾는 문제이다.일단 SETUID란 파일 실행 시 다른 권한으로 파일을 실행시켜준다는 의미이다. 그래서 FIND 명령어를 사용해서 SETUID 걸린 파일을 찾아야 한다. Find / -user level2 -perm -4000 2>/dev/null cf) find = 파일을 찾을 때 쓰는 명령어-user level2 = level2 권한.-perm 4000 = perm은 permission으로 찾으라는 의미. permission은 권한이라는 뜻으로 해당 파일 or 폴더의 권한을 의미.4000에서 4는 SetUID, 000은 rwx.2>/dev/null = 2는 접근 거부, 즉 Error message 의미./dev/nu..
Allblackk
Allblackk