[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..

[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! 버튼을 클릭하니, 위와 같은 결과를 얻을 수 있었다. 이번 문제는 다중 명령어를 이용한 취약점을 물어보기 위한 문제로 보인다. 확인을 위해 ;를 넣어서 다중 명령을 전달하려고 했지만, 형식이 안 맞다고 ..

[Dreamhack Web - Lv 1] image-storage
Wargame/Dreamhack 2021. 10. 27. 17:27

문제 정보 php로 작성된 파일 저장 서비스입니다. 파일 업로드 취약점을 이용해 플래그를 획득하세요. 플래그는 /flag.txt에 있습니다. 풀이 힌트 1. 공격 백터 파악 2. php upload 취약점 문제 풀이 더보기 문제 페이지에 들어가보니, 기능이 List, Upload 밖에 없었다. 공격 백터 파악을 위해 한번 살펴보겠다. List 페이지에 들어갔는데, 아무 것도 없는 페이지가 나왔다. 예상하기엔 Upload를 하면 List에서 확인이 가능하는 것으로 보인다. Upload 페이지에 들어가보니, 이름대로 Upload 기능이 있는 페이지가 나왔다. 일단 한번 드림핵 로고 이미지 파일을 업로드 해봤다. 업로드 후에는 서버에 저장되는 경로를 출력된다는 것을 알 수 있었다. 프록시로 어떤 이름으로 이미..

[Dreamhack Web - Lv 1] csrf-1
Wargame/Dreamhack 2021. 10. 25. 18:15

문제 정보 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. CSRF 취약점을 이용해 플래그를 획득하세요. 풀이 힌트 1. 공격 백터 파악 2. 코드 분석 또는 웹 스파이터를 통해 숨겨진 파라미터 파악 문제 풀이 더보기 더보기 문제 서비스는 총 4가지의 기능을 제공하고 있다. 1. vuln(csrf) page : /vuln vuln 페이지의 링크를 클릭하자 Get 메소드로 param 파라미터에 를 넣어서 서버에 요청을 보냈다. 하지만 서버는 를 alert(1)로 치환하여 페이지에 출력하였다. 혹시 On 이벤트로 XSS를 일으킬 수 있는지 확인하기 위해 img 태그에 onerror 속성으로 시도하였지만 XSS은 실패하였다. 해당 페이지는 param 파라미터에 대한 검증이 있는 것으로 보인다..

[Dreamhack Web - Lv 1] proxy-1
Wargame/Dreamhack 2021. 10. 25. 14:28

문제 정보 Raw Socket Sender가 구현된 서비스입니다. 요구하는 조건을 맞춰 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 풀이 힌트 1. 소스코드 분석 2. HTTP Packet 3. Proxy Tool 문제 풀이 더보기 더보기 문제의 설명에 요구 조건을 맞추라는 말이 있는데, 이게 어떤 걸을 말하는지 잘 모르겠다. 그래서 일단 기능을 보고 추측을 해보겠다. 해당 문제의 기능은 Raw Socket Sender 기능이 있다. 메뉴바의 Socket도 Raw Socket Sender와 같은 것이다. 해당 페이지는 위 사진과 같다. 여기까지 살펴본 결과 아마 해더와 관련이 있지 않을까? 라는 생각이 들었다. 그 이유는 host, port, data이 세 개를 던져주고 요..

[Dreamhack Web - Lv 1] file-download-1
Wargame/Dreamhack 2021. 10. 25. 14:18

문제 정보 File Download 취약점이 존재하는 웹 서비스입니다. flag.py를 다운로드 받으면 플래그를 획득할 수 있습니다. 풀이 힌트 1. 공격 백터 파악 2. Path Traversal Attack 문제 풀이 더보기 더보기 들어가보니, 기능이 Upload My Memo라는 Upload 기능일 거 같은 메뉴가 하나있었다. 해당 페이지의 공격 백터는 filename과 content이다. 일단 업로드를 하면 어떻게 작동하는지 확인을 해보도록 하겠다. 업로드를 한 결과 Home 페이지에 내가 filename에 넣은 값이 리스트로 들어가 있었다. 들어가보니, Get 메소드로 name을 넘겨주는 것을 확인하였다. 이 또한 사용자가 값을 입력할 수 있으니, 공격 백터에 추가하겠다. 내가 테스트로 넣은 값..

[Dreamhack Web - Lv 1] xss-1
Wargame/Dreamhack 2021. 10. 23. 13:49

문제 정보 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. XSS 취약점을 이용해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 풀이 힌트 1. 공격 백터 파악 2. XSS 기본 지식 문제 풀이 더보기 더보기 문제에 접속하니, 여러 개의 페이지가 나왔고 하나하나 들어가서 공격 백터를 찾아보겠다. 1. vuln(xss) page 해당 페이지에 들어가 보니, vuln?param=으로 열렸다. param에 들어간 값이 페이지에 그대로 적용이 돼서 Alert가 떴다. 값을 수정해서 서버에 보내니, 수정된 값도 적용이 됐다. 2. memo 페이지에 들어가니, memo?memo=hello로 열렸다. 그리고 회색 박스 안에 hello가 적힌 페이지가 출력되었다. 아마도 ..

[Dreamhack Web - Lv 1] welcome
Wargame/Dreamhack 2021. 10. 15. 18:34

문제 정보 이 문제는 서버에서 작동하고 있는 서비스(welcome)의 바이너리와 소스 코드가 주어집니다. "접속 정보 보기"를 눌러 서비스 정보를 얻은 후 플래그를 획득하세요. 서버로부터 얻은 플래그의 내용을 워게임 사이트에 인증하면 점수를 획득할 수 있습니다. 플래그의 형식은 DH{…} 입니다. 풀이 힌트 Netcat 사용 문제 풀이 더보기 네트워크 툴을 이용하여 서버에 요청을 하면, Flag를 반환하는 문제인 것으로 보인다. Netcat을 설치하여, 문제 서버에 접속하니, 바로 Flag를 보내줬다.

[Dreamhack Web - Lv 1] simple_sqli
Wargame/Dreamhack 2021. 10. 15. 16:35

문제 정보 로그인 서비스입니다. SQL INJECTION 취약점을 통해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 풀이 힌트 1. 공격 백터 파악 2. DBMS 파악 3. SQLi 이해 문제 풀이 더보기 Home, Abuot, Contact 메뉴는 아무 작동도 안한다. Login에 들어가니, 로그인 페이지가 나왔다. 아마 로그인 기능에서 SQLi를 시도하라는 것으로 보인다. 나는 일단 guest/guest로 로그인을 시도하였다. 그 결과 guest로 로그인이 성공하였다. 그럼 admin으로 로그인을 하는게 인지상정인데, admin으로 SQLi하기 전에 어떤 DB을 쓰는지 또 쿼리문이 어떻게 생겼는지 추측을 해야한다. 어떤 DB를 쓰는지에 대한 추측은 이번 문제에선 추측을 ..