보안
-
[FTZ] Level 4보안/Pwnable 2021. 8. 23. 17:52
Backgrounds Daemon 데몬은 백그라운드에서 실행되는 프로세스로, 사용자의 요청을 기다리다가 요청이 발생하면 대응한다 (windows의 서비스와 비슷한 개념이다). 데몬은 다음 2가지 종류가 있다. Standalone: 메모리에 언제나 상주하는 데몬 (실행 스크립트 위치 /etc/inetd.d) inetd: inetd라는 특별한 데몬에 의해 실행되는 데몬; inetd에 요청이 들어오면 inetd는 해당 데몬을 메모리에 올려 요청 처리 (실행 스크립트 위치 /etc/xinetd.d) Backdoor 백도어는 root 계정으로 로그인하지 않고서도 root 권한을 가질 수 있게 하는 길이다. 백도어는 root 쉘을 얻어 root 쉘을 일반 계정으로 접근할 수 있도록 복사한 후 setuid를 설정할 ..
-
[FTZ] Level 3보안/Pwnable 2021. 8. 23. 14:43
Backgrounds Linux Commands dig dig 명령어는 DNS 서버에 대한 정보를 얻는 데 사용한다. dig @8.8.8.8 www.google.com 위 명령어로 구글 public dns인 8.8.8.8을 지정해 google.com을 질의할 수 있다. 한 줄에 여러 명령어 실행 쉘에서 한 줄에 여러 명령어를 실행하려면 다음과 같이 사용한다. [CMD1]; [CMD2] 문자열 형태로 명령어 전달 문자열 형태로 명령어를 전달하려면 다음과 같이 사용한다. "[CMD]" Solution find / -user level4 2> /dev/null 위 명령어로 소유자가 level 4인 파일을 찾는다. 실행 결과 /bin/autodig을 찾을 수 있다. /bin/autodig은 dig에 전달하는 인..
-
[FTZ] Level 2보안/Pwnable 2021. 8. 23. 12:50
Backgrounds vi에서 shell 실행 :![CMD] vi에서 위 방법을 통해 shell의 CMD 명령어를 실행할 수 있다. Solution find / -user level3 2> /dev/null 위 명령어로 소유자가 level 3인 파일을 찾는다. 실행 결과 /usr/bin/editor을 찾을 수 있다. /usr/bin/editor을 vi로 실행하고, 명령 모드에서 !:my-pass 을 통해 level3의 플래그를 얻을 수 있다. Flag can you fly?
-
[FTZ] Level1보안/Pwnable 2021. 8. 23. 12:32
Backgrounds Linux Commands Permission 리눅스에서는 사용자 명령을 실행할 때 다음 절차를 거친다. 파일의 접근 권한을 나타낼 때 4000과 같이 4자리의 8진수로 권한의 합을 표시한다. 이때 각 자리는 다음과 같다. (1번째) 특수권한 4: setuid (프로그램을 현재 실행 중인 사용자에서 프로그램의 소유자 ID로 변경) 일반 사용자가 root만 접근 가능한 파일에 접근해야만 하는 경우 일반 사용자가 해당 파일 실행 시 root의 특권을 가져 실행 (보안상 취약!) 2: setgid (프로그램을 현재 실행 중인 사용자의 그룹에서 프로그램의 소유자의 그룹으로 변경) 1: sticky bit (특정 디렉터리를 누구나 자유롭게 사용 가능 but 일반 사용자의 파일 삭제 막음) (..