no image
Mango
https://dreamhack.io/wargame/challenges/90 MangoDescription 이 문제는 데이터베이스에 저장된 플래그를 획득하는 문제입니다. 플래그는 admin 계정의 비밀번호 입니다. 플래그의 형식은 DH{...} 입니다. {'uid': 'admin', 'upw': 'DH{32alphanumeric}'} Reference Servdreamhack.io 문제 서버에 들어갔을 때의 화면이다. app.get('/login', function(req, res) { if(filter(req.query)){ res.send('filter'); return; } const {uid, upw} = req.query; db.collection(..
2024.11.26
no image
CSS Injection
https://dreamhack.io/wargame/challenges/421 CSS InjectionDescription Exercise: CSS Injection에서 실습하는 문제입니다. 문제 수정 내역 2023.08.09 Dockerfile 및 bot 일부 수정 2023.11.27 main.py 및 requirements.txt 수정dreamhack.ioCSS Injection은 웹 애플리케이션의 보안 취약점을 악용하여 악의적인 CSS 코드를 주입함으로써 사용자의 브라우저에서 의도하지 않은 동작을 발생시키는 공격 방식이다. 이는 주로 웹 애플리케이션이 사용자 입력을 충분히 검증하지 않거나, CSS 파일이나 스타일 태그에 대해 제대로 보호 조치를 취하지 않을 때 발생한다. 문제 서버의 메인 페이지이다..
2024.11.20
no image
chocoshop
문제 서버로 들어가면 세션을 발급받는 페이지가 나온다. 세션을 발급받고 전달된 값을 확인하면 coupon_claimed와 money, uuid도 전달되고 있었다. 세션을 발급받으면 shop과 mypage를 확인할 수 있다. 먼저 shop 페이지를 확인해 보면 빼빼로와 flag를 판매하고 있다. 현재 가진 돈이 0이라 위와 같은 문구를 볼 수 있다. 마이페이지에서는 쿠폰 발급과 사용이 가능하다.문제 설명에서 여러 번 쿠폰을 발급받을 수 없지만 사용된 쿠폰을 검사하는 로직이 취약하다고 했기 때문에 발급받은 쿠폰을 사용해서 문제를 해결해야 한다고 생각했다. 일단 발급을 받아보면 1000파운드가 충전되었다.하지만 아직 부족하여 flag를 구매할 수 없다. 그리고 쿠폰을 받은 후에는 coupon_claimed가 ..
2024.11.12
no image
CSP Bypass Advanced
https://dreamhack.io/wargame/challenges/436 CSP Bypass AdvancedDescription Exercise: CSP Bypass의 패치된 문제입니다. 문제 수정 내역 2023.08.07 Dockerfile 제공dreamhack.io  Content Security Policy (CSP) 웹 페이지에서 실행할 수 있는 리소스의 출처를 제어해 악의적인 콘텐츠가 삽입되는 것을 방지한다.주로 문서가 로드할 수 있는 리소스, 특히 JavaScript 리소스를 제어하며, 공격자가 피해자의 사이트에 악성 코드를 삽입할 수 있는 XSS 공격에 대한 방어 수단으로 사용된다.[참고자료]https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP..
2024.11.06
no image
XSS Filtering Bypass Advanced
문제 코드#!/usr/bin/python3from flask import Flask, request, render_templatefrom selenium import webdriverfrom selenium.webdriver.chrome.service import Serviceimport urllibimport osapp = Flask(__name__)app.secret_key = os.urandom(32)try: FLAG = open("./flag.txt", "r").read()except: FLAG = "[**FLAG**]"def read_url(url, cookie={"name": "name", "value": "value"}): cookie.update({"domain": "127..
2024.10.28
no image
blind-command
https://dreamhack.io/wargame/challenges/73 blind-commandRead the flag file XD Reference Web Hackingdreamhack.io 문제 설명Read the flag file XD 서버에 들어갔을 때의 화면이다.  #!/usr/bin/env python3from flask import Flask, requestimport osapp = Flask(__name__)@app.route('/' , methods=['GET'])def index(): cmd = request.args.get('cmd', '') if not cmd: return "?cmd=[cmd]" if request.method == 'GET': ..
2024.10.01
no image
web-ssrf
SSRF란?취약한 서버를 이용하여 공격자가 내부 서버에 원하는 요청을 보내도록 하는 방법공격자가 서버를 이용해 내부 네트워크에 대한 요청을 보내거나 외부 시스템에 접근하는 공격 기법이다.보통 공격자가 과도한 정보나 기능을 요청할 경우, 필터링되거나 서버에서 정보를 주지 않지만 웹페이지 번역 서비스, PDF 문서 생성기의 잘못된 구현이나 퍼블릭 클라우드 환경에서 메타서버 접근 통제가 미흡한 경우 발생할 수 있다. SSRF는 CSRF와 이름이 비슷한데 이 두 공격은 매개체가 다르다.SSRF는 서버의 요청을 이용한다면, CSRF는 사용자의 요청을 이용한다.두 공격 모두 공격자가 접근할 수 없는 정보나 시스템에 접근할 수 있도록 하고, 내부에서 정상 요청이라고 인식하게 된다. SSRF 방지입력값 검사사용자의 입..
2024.09.19
no image
php-1
문제에서 플래스의 경로와 취약점을 알려줬다. 먼저 LFI(Local File Inclusion) 취약점은 애플리케이션에서 사용자 입력을 통해 로컬 파일 시스템의 파일을 포함할 수 있는 취약점이다. 주로 웹 애플리케이션에서 파일을 포함할 때 경로나 파일 이름을 사용자 입력으로부터 받아들이고 이를 검증 없이 사용할 때 발생한다. 간단히 말해, LFI 취약점은 공격자가 웹 애플리케이션에서 서버의 로컬 파일 시스템에 있는 파일을 포함하도록 속일 수 있는 취약점이다. 이를 통해 공격자는 시스템 파일을 읽어올 수 있거나 실행 가능한 코드를 삽입할 수 있다. 문제에 접속해 보면, Home, List, View 항목이 있고 List에만 php와 json이 존재했다. flag.php에 들어가면 Permission den..
2024.03.27
no image
[wargame.kr] strcmp
제목과 같이 strcmp 취약점을 이용하여, 우회하면 flag를 얻을 수 있는 문제이다. 서버에 접속하면 패스워드를 입력할 수 있는 폼과 소스코드를 확인할 수 있는 링크가 나온다. 먼저 아무 값이나 넣어보면 Wrong password라는 문구가 뜬다. 소스코드를 확인했다. strcmp($_POST['password'], $password) == 0 strcmp 함수는 POST 방식으로 입력받은 password와 $password를 비교하여 같으면 0을 출력한다. PHP의 strcmp() 함수는 두 개의 문자열을 비교하고 같으면 0을 반환, 다르면 그 차이에 따라 양수 또는 음수를 반환한다. 이러한 strcmp 함수에는 취약점이 존재한다. 문자열을 비교하기 위한 함수이지만, 문자열이 아닌 다른 유형의 데이..
2024.03.25
Prev 1 2 3 4 Next
반응형