일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Network
- 오버워치 세이버메트릭스
- KASAN
- #MINT64 #Sqix
- command
- #Best of the Best #OS #MINT64 #Sqix
- libtins
- 인터럽트
- ftz
- 오버워치
- #IntelManual
- libpcap
- Overwatch League SaberMetrics
- FTZ 레벨2
- >
- vi 외부 명령어
- linux
- BEST of the BEST
- vim
- Find
- #IntelManual #segment Descriptor #세그먼트 디스크립터 #MINT64 #Sqix
- vi
- C++11
- Sqix
- #
- #Qt Creator
- Today
- Total
목록전체 글 (76)
Sqix
힌트는 다음과 같습니다. /usr/bin/level5 프로그램은 /tmp 디렉토리에 level5.tmp라는 이름의 임시 파일을 생성한다. 이를 이용하여 level6의 권한을 얻어라. 일단 level5 파일이 어떤 것인지 확인해 보았습니다 level6 권한으로 setuid가 걸려 있고, level5 권한에서는 실행만 가능합니다. 디버깅은 불가능한 상태입니다. GDB가 안 붙네요.(permission denied) tmp 파일을 이용한 취약점 공격은 주로 race-condition이라고 하니, race-condition에 대해서 미리 공부를 해야 할 필요가 있습니다. Race Condition은 임시 파일이 존재할 시, 이를 삭제하는 과정에서의 시간차로 발생하는 취약점입니다. 임시 파일이 만약 존재하면, 다..
힌트는 "누군가 /etc/xinetd.d/에 백도어를 심어놓았다.!" 입니다. 디렉토리에 들어가 보니 level4 권한을 달고 있는 backdoor가 있네요. file 명령어로 backdoor를 확인하여 보니, ASCII text (일반 텍스트 문서)라고 합니다. cat하여 보니 다음과 같은 설정이 나오네요. level5의 권한을 가지고 있고, /home/level4/tmp/backdoor에 실행 서버가 있다고 합니다. 사실 이건 xinetd(internet daemon) 디렉토리이고, 이 파일은 finger 서비스의 정보입니다. 즉, finger 서비스를 실행하면 level5권한으로 /home/level4/tmp/backdoor 파일을 실행한다는 것입니다. 하지만 아무것도 없네요. 여기다 backdoo..
깨진 한글 부분만 따로 검색했습니다. 다음 코드는 autodig의 소스코드이다. /* 소스 코드 */ 이를 이용하여 level4의 권한을 얻어라. more hints. - 동시에 여러 명령어를 사용하려면?- 문자열 형태로 명령어를 전달하려면? 문자열 형태로 명령어를 전달하려면, " "를 달아주어 파라미터로 전달하면 됩니다. 또한, 동시에 여러 명령어를 사용하려면 ; (앞의 명령어의 성공 유무와 상관없이 실행), & (앞의 명령어가 성공하면 실행), && (명령 동시에 실행. 앞의 명령은 백그라운드로 실행됨)을 씁니다. 코드를 대충 둘러봐도 위험한 요소가 몇 개 보이네요. strcpy, strcat 함수를 사용했는데, 해당 함수는 memory boundary 검사를 안 해서 BOF 취약점이 발생하는 함수입..