[OverTheWire System - Bandit] Level 12 >> Level 13
Wargame/OverTheWire 2021. 10. 31. 02:47

Level Goal The password for the next level is stored in the file data.txt, which is a hexdump of a file that has been repeatedly compressed. For this level it may be useful to create a directory under /tmp in which you can work using mkdir. For example: mkdir /tmp/myname123. Then copy the datafile using cp, and rename it using mv (read the manpages!) 다음 레벨의 비밀번호는 반복적으로 압축된 파일의 hexdump인 data.txt ..

[Dreamhack Web - Lv 1] php-1
Wargame/Dreamhack 2021. 10. 29. 11:42

문제 정보 php로 작성된 Back Office 서비스입니다. LFI 취약점을 이용해 플래그를 획득하세요. 플래그는 /var/www/uploads/flag.php에 있습니다. 풀이 힌트 1. 공격 백터 파악 2. PHP Wrapper 문제 풀이 더보기 문제 페이지에 들어가니, List와 View 페이지가 있었다. 공격 백터를 확인하기 위해 두 페이지를 살펴보겠다. List 페이지를 확인해보니, 두 가지 목록이 있었다. 제일 의심가는 flag.php를 확인해보니, View 페이지로 이동하였고 flag.php의 내용을 보지 못하게 막았다. hello.json은 잘 읽어지는 것으로 보인다. 근데 이상한 점이 보통 페이지를 이동할 때, /list.php?param=~~로 제어할텐데 index.php의 page ..

[Dreamhack Web - Lv 1] web-misconf-1
Wargame/Dreamhack 2021. 10. 28. 09:44

문제 정보 기본 설정을 사용한 서비스입니다. 로그인한 후 Organization에 플래그를 설정해 놓았습니다. 풀이 힌트 1. Grafana 공식 문서 문제 풀이 더보기 문제에 접속하니, 굉장히 멋있는 로그인 페이지가 나왔다. 페이지의 footer을 보니, 오픈 소스인 것으로 보인다. 나는 일단 해당 오픈소스의 Document에서 디폴트 계정 값을 찾아서 로그인을 시도하겠다. 문서를 확인한 결과 디폴트 계정은 admin/admin으로 되어 있는 것으로 보인다. admin/admin으로 로그인을 시도하니, 로그인에 성공하였고 pw를 바꾸라는 문구가 출력 되었다. 나는 문제 풀이가 주목적이기 때문에 Skip하였다. 들어오니, 굉장히 대쉬보드 페이지가 출력되었다. 여기저기 확인해본 결과 Server Admin..

[OverTheWire System - Bandit] Level 11 >> Level 12
Wargame/Dreamhack 2021. 10. 28. 09:21

Level Goal The password for the next level is stored in the file data.txt, where all lowercase (a-z) and uppercase (A-Z) letters have been rotated by 13 positions 다음 레벨의 비밀번호는 data.txt 파일에 저장됩니다. 여기서 모든 소문자(a-z) 및 대문자(A-Z)가 13자리 회전되었습니다. Hint 1. tr 명령어 Write Up 더보기 확인한 결과, 알파벳이 회전되어 알 수 없는 문자열이 출력되었다. tr 명령어를 사용하면 간단하게 문자를 바꾸거나 삭제할 수 있다. 이를 이용하여 알파벳을 반대로 13 회전하였다. bandit12 :: 5Te8Y4drgCRfCx8ugdw..

[OverTheWire System - Bandit] Level 10 >> Level 11
Wargame/OverTheWire 2021. 10. 28. 09:07

Level Goal The password for the next level is stored in the file data.txt, which contains base64 encoded data 다음 레벨의 비밀번호는 base64로 인코딩된 데이터가 포함된 data.txt 파일에 저장됩니다. Hint 1. base64 명령어 Write Up 더보기 data.txt 파일을 확인한 결과 bandit11의 pw가 base64 인코딩되어있는 것으로 보인다. base64 명령어을 통해 디코딩을 시키겠다. 옵션을 확인한 결과 -d 옵션을 사용하면 디코딩이 된다고 한다. 확인한 결과 디코딩이 아주 잘 되었다. bandit11 :: IFukwKGsFW8MOq3IRFqrxE1hxTNEbUPR

[OverTheWire System - Bandit] Level 9 >> Level 10
Wargame/OverTheWire 2021. 10. 28. 09:00

Level Goal The password for the next level is stored in the file data.txt in one of the few human-readable strings, preceded by several ‘=’ characters. 다음 레벨의 비밀번호는 몇 개의 '=' 문자가 앞에 오는 사람이 읽을 수 있는 몇 가지 문자열 중 하나로 data.txt 파일에 저장됩니다. Hint 1. grep 명령어의 -a 옵션 2. string 명령어 Write Up 더보기 data.txt 파일을 읽어보니, 아스키 코드로 이루어진 데이터는 아닌 듯하였다. 확인한 결과, 역시 아스키 코드가 아닌 data 타입이라고 나온다. 일단 데이터 속에 사람이 읽을 수 있는 문자열이 있는 것 ..

[OverTheWire System - Bandit] Level 8 >> Level 9
Wargame/OverTheWire 2021. 10. 27. 19:05

Level Goal The password for the next level is stored in the file data.txt and is the only line of text that occurs only once 다음 레벨의 암호는 data.txt 파일에 저장되며 한 번만 나타나는 텍스트의 유일한 줄입니다. Hint 1. Linux pipe 2. Sort 명령어 3. Uniq 명령어 Write Up 더보기 나는 문제 설명을 보고 "uniq 명령어를 사용하면 손 쉽게 풀 수 있겠다"라고 생각했지만, 실패하였다. 인터넷에 검색한 결과 sorting을 안 해줘서 실패하였다고 하여 sort 명령어를 통해 sorting 후 uniq 명령어를 사용하였다. 그 결과 data.txt에서 유일한 값을 출력하였..

[OverTheWire System - Bandit] Level 7 >> Level 8
Wargame/OverTheWire 2021. 10. 27. 18:52

Level Goal The password for the next level is stored in the file data.txt next to the word millionth 다음 레벨의 비밀번호는 millionth라는 단어 옆에 있는 data.txt 파일에 저장됩니다. Hint 1. Linux pipe 2. grep Write Up 더보기 data.txt를 확인해본 결과 엄청 많은 문자열들이 있었다. 나는 파이프와 grep을 이용하여 손 쉽게 millionth을 찾아서 해당 부분만 출력하였다. bandit8 :: cvX2JJa4CFALtqS87jk27qwqGhBM9plV

[OverTheWire System - Bandit] Level 6 >> Level 7
Wargame/OverTheWire 2021. 10. 27. 18:31

Level Goal The password for the next level is stored somewhere on the server and has all of the following properties: owned by user bandit7 owned by group bandit6 33 bytes in size 다음 단계의 암호는 서버의 어딘가에 저장되며 다음 속성을 모두 가집니다. 파일 소유자 : bandit7 그룹 소유자 : bandit6 파일 크기 : 33 bytes Hint 1. find 명령어 2. find 명령어의 size, user, group 옵션 Write Up 더보기 이번엔 홈 디렉토리가 깨끗했다. 저번 문제처럼 find 명령어를 사용하여 문제 설명에서 나온 정보와 일치하는 파..

[Dreamhack Web - Lv 1] command-injection-1
Wargame/Dreamhack 2021. 10. 27. 18:03

문제 정보 특정 Host에 ping 패킷을 보내는 서비스입니다. Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다. 풀이 힌트 1. Linux 다중 명령 2. html pattern 속성 문제 풀이 더보기 문제 페이지로 들어서 확인해보니, ping을 보내주는 기능이 있는 사이트로 예상된다. 기능도 Ping 페이지 밖에 없었다. 확인해보니, input에 ip 주소를 넣어주면 서버가 ping을 보내주는 것으로 보인다. input에 8.8.8.8를 넣어서 Ping! 버튼을 클릭하니, 위와 같은 결과를 얻을 수 있었다. 이번 문제는 다중 명령어를 이용한 취약점을 물어보기 위한 문제로 보인다. 확인을 위해 ;를 넣어서 다중 명령을 전달하려고 했지만, 형식이 안 맞다고 ..