Tiny Bunny

dreamhack 8

file-download-1

드림핵 Dreamhack file-download-1 File Download Vulnerability 보통 Path Traversal을 이용한 파일 다운로드 취약점이 많음 - 파일 이름을 직접 입력 받아 임의 디렉터리에 있는 파일을 다운로드 받을 수 있는 취약점 ex. file-download-1 https://dreamhack.io/wargame/challenges/37 file-download-1 File Download 취약점이 존재하는 웹 서비스입니다. flag.py를 다운로드 받으면 플래그를 획득할 수 있습니다. Reference Introduction of Webhacking dreamhack.io 💡 File Download 취약점이 존재하는 웹 서비스입니다. flag.py를 다운로드 받으..

Wargame/dreamhack 2023.10.03

image-storage

드림핵 Dreamhack image-storage File Upload Vulnerability공격자의 파일을 웹 서비스의 파일 시스템에 업로드하는 과정에서 발생파일 시스템 상 임의 경로에 원하는 파일을 업로드하거나 악성 확장자를 갖는 파일을 업로드하여 원하는 시스템 커맨드를 실행 image-storagehttps://dreamhack.io/wargame/challenges/38/ image-storagephp로 작성된 파일 저장 서비스입니다. 파일 업로드 취약점을 이용해 플래그를 획득하세요. 플래그는 /flag.txt에 있습니다. Reference Server-side Basicdreamhack.io 0 ) { echo "Error: " . $error . ""; }else { ..

Wargame/dreamhack 2023.10.03

command-injection-1

드림핵 Dreamhack command-injection-1 Command Injection 이용자의 입력을 시스템 명령어로 실행하게 하는 취약점 명령어를 실행하는 함수에 이용자가 임의의 인자를 전달할 수 있을 때 발생 메타 문자(Meta Character) 셸 프로그램에서 특수하게 처리하는 문자 참고 - https://learn.dreamhack.io/187#4 command-injection-1 https://dreamhack.io/wargame/challenges/44/ command-injection-1 특정 Host에 ping 패킷을 보내는 서비스입니다. Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다. Reference Introduction of..

Wargame/dreamhack 2023.10.03

MANGO

드림핵 Dreamhack MANGO https://dreamhack.io/wargame/challenges/90/ Mango Description 이 문제는 데이터베이스에 저장된 플래그를 획득하는 문제입니다. 플래그는 admin 계정의 비밀번호 입니다. 플래그의 형식은 DH{...} 입니다. {'uid': 'admin', 'upw': 'DH{32alphanumeric}'} Reference Serv dreamhack.io app.get('/login', function(req, res) { if(filter(req.query)){ res.send('filter'); return; } const {uid, upw} = req.query; db.collection('user').findOne({ 'uid':..

Wargame/dreamhack 2023.10.03

NoSQL

드림핵 Dreamhack NoSQL NOT Only SQL SQL을 사용하지 않고, 이에 따라 RDBMS와는 달리 복잡하지 않은 데이터를 저장해 단순 검색 및 추가 검색 작업을 위해 매우 최적화된 저장 공간 MongoDB Redis CouchDB https://learn.dreamhack.io/168#6 연산자, 문법 참고 MongoDB은 자료형으로 문자열, 정수, 날짜, 실수뿐만 아니라 오브젝트, 배열 타입을 사용 NoSQL Injection 취약점은 주로 이용자의 입력 값에 대한 타입 검증이 불충분할 때 발생 예를 들어, 사용자의 입력 값에 대해 타입을 검증하지 않는다면 오브젝트 타입의 값을 입력, 이를 통해 연산자를 사용하여 공격자는 계정 정보를 탈취 가능 https://learn.dreamhack..

Wargame/dreamhack 2023.10.03

simple_sqli

드림핵 Dreamhack simple_sqli DBMS(DataBase Management System)웹 서비스는 데이터베이스에 정보를 저장하고, 이를 관리하기 위해 DBMS을 사용관계형 - 행과 열의 집합인 테이블 형식으로 데이터를 저장비관계형 - 테이블 형식이 아닌 키-값 (Key-Value) 형태로 값을 저장RDBMS에서 관계 연산자는 **Structured Query Language (SQL)**라는 쿼리 언어를 사용쿼리를 통해 테이블 형식의 데이터를 조작SQL InjectionDBMS에서 사용하는 질의 구문인 SQL을 삽입하는 공격Blind SQL Injection질의 결과를 이용자가 화면에서 직접 확인하지 못할 때, DBMS가 답변 가능한 형태로 질문하면서 참/거짓 반환 결과로 데이터를 획득..

Wargame/dreamhack 2023.10.03

XSS-1

드림핵 Dreamhack XSS-1 https://dreamhack.io/wargame/challenges/28/ xss-1 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. XSS 취약점을 이용해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 플래그 형식은 DH{...} 입니다. 문제 수정 내역 dreamhack.io 전체코드 더보기 #!/usr/bin/python3 from flask import Flask, request, render_template from selenium import webdriver import urllib import os app = Flask(__name__) app.secret_key = os.urandom(32) try: F..

Wargame/dreamhack 2023.10.03

Cookie

드림핵 Dreamhack Cookie 쿠키 Key와 Value로 이뤄진 일종의 단위 서버가 클라이언트에게 쿠키를 발급하면, 클라이언트는 서버에 요청을 보낼 때마다 쿠키를 같이 전송합니다. 서버는 클라이언트의 요청에 포함된 쿠키를 확인해 클라이언트를 구분할 수 있습니다. 용도 정보 기록 웹 서버는 각 클라이언트의 팝업 옵션을 기억하기 위해 쿠키에 해당 정보를 기록하고, 쿠키를 통해 팝업 창 표시 여부를 판단 상태 정보 클라이언트의 로그인 상태와 이용자를 구별해야 하는데, 이때 클라이언트를 식별할 수 있는 값을 쿠키에 저장하고 회원 가입과 로그인을 통해 개개인에게 맞춤형 서비스를 제공 쿠키는 클라이언트의 브라우저에 저장되고 요청에 포함되는 정보로, 악의적인 클라이언트는 쿠키 정보를 변조해 서버에 요청을 보낼..

Wargame/dreamhack 2023.10.03
728x90