본문 바로가기

Web Hacking/Wargame

(112)
Level 1 : image-storage https://dreamhack.io/wargame/challenges/38 image-storage php로 작성된 파일 저장 서비스입니다. 파일 업로드 취약점을 이용해 플래그를 획득하세요. 플래그는 /flag.txt에 있습니다. Reference Server-side Basic dreamhack.io ( 드림핵 제공 )웹 쉘 파일을 업로드 후 해당 파일에 접근하여, pwd 명령을 통해 현재 경로 파악. cat ../../../../flag.txt 명령으로 flag 획득. 업로드 페이지가 php 확장자를 필터링 하고 있지 않으니, 위의 php 코드를 작성하여, 업로드 한다. 해당 파일을 클릭 시 system()함수가 실행되어 Flag 획득이 가능하다.
Level 1 : command-injection-1 https://dreamhack.io/wargame/challenges/44 command-injection-1 특정 Host에 ping 패킷을 보내는 서비스입니다. Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다. Reference Introduction of Webhacking dreamhack.io 그림 1은 태그의 pattern 속성에 명시된 정규표현식을 나타낸다. 입력에는 문자(대문자 및 소문자 모두), 숫자 및 점만 포함할 수 있고, 입력 길이는 최소 5자 최대 20자여야 한다. 그림 2와 같이 pattern 속성의 값을 변경해 줘 ; 등의 특수(메타) 문자가 입력될 수 있게 만든다. 1. 8.8.8.8";cat "flag..
Level1 : csrf-2 https://dreamhack.io/wargame/challenges/269 csrf-2 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. CSRF 취약점을 이용해 플래그를 획득하세요. 문제 수정 내역 2023.07.18 css, html 제공 및 read_url() 코드 일부가 변경되었습니다. Referen dreamhack.io username = 'admin'으로 로그인 해 FLAG를 획득하는 문제이다 . @app.route("/vuln") def vuln(): param = request.args.get("param", "").lower() xss_filter = ["frame", "script", "on"] for _ in xss_filter: para..
Level 1 : cookie https://dreamhack.io/wargame/challenges/6 cookie 쿠키로 인증 상태를 관리하는 간단한 로그인 서비스입니다. admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있습니다. 플래그 형식은 DH{...} 입니다. Reference Introduction of Webhacking dreamhack.io guest로 로그인 후 쿠키값을 admin으로 변경 후 플래그 획득
Level 1 : csrf-1 https://dreamhack.io/wargame/challenges/26 csrf-1 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. CSRF 취약점을 이용해 플래그를 획득하세요. 문제 수정 내역 2023.07.18 css, html 제공 및 read_url() 코드 일부가 변경되었습니다. Referen dreamhack.io /admin/notice_flag 페이지 관련 코드를 보면 @app.route("/admin/notice_flag") def admin_notice_flag(): global memo_text if request.remote_addr != "127.0.0.1": return "Access Denied" if request.args.ge..
Level 1 : file-download-1 https://dreamhack.io/wargame/challenges/37 file-download-1 File Download 취약점이 존재하는 웹 서비스입니다. flag.py를 다운로드 받으면 플래그를 획득할 수 있습니다. Reference Introduction of Webhacking dreamhack.io 위 그림1 을 보면, file을 upload 하는 디렉터리가 존재한다. 업로드 된 파일을 read 할 수 있는 페이지가 존재함을 그림 2에서 확인할 수 있다. "../ " 와 같이 Path Traversal이 가능한 특수문자가 필터링 되지 않음을 그림 3을 통해 확인할 수 있다. ../flag.py 로 플래그를 획득하였다.
Level 1 : simple_sqli https://dreamhack.io/wargame/challenges/24 simple_sqli 로그인 서비스입니다. SQL INJECTION 취약점을 통해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. Reference Server-side Basic dreamhack.io 문제에서 주어진 파이썬 파일의 로그인 관련 함수를 통해 어떻게 ID,PW가 인자로 전달되는지 파악한다. PW의 값과 상관 없이 , userid = 'admin' 이라면 플래그를 획득할 수 있기에, 위 그림 1 과 로그인 폼에 " or userid = "admin" --을 Injection 해준다. 반면에, 아래 그림2 는 플래그를 획득할 수 없다. res = query_db(f..
DOM XSS in innerHTML sink using source location.search https://portswigger.net/web-security/cross-site-scripting/dom-based/lab-innerhtml-sink Lab: DOM XSS in innerHTML sink using source location.search | Web Security Academy This lab contains a DOM-based cross-site scripting vulnerability in the search blog functionality. It uses an innerHTML assignment, which changes the HTML ... portswigger.net 파라미터로 전달되는 search 창에 일반적인 코드를 입력하면, 필터링이 되는 듯보이기에, xs..