webhacking.kr old-14
·
W3B H4CK1NG
처음 들어가면 보이는 화면 document.URL: URL을 반환하는 속성index0f(): 문자열에서 원하는 문자열을 검색하는 내장함수로 위치 값을 index로 반환 check 버튼을 클릭했을 때 변수 ul에 현재 URL에서 .kr의 위치에 30이 곱해진 값이 저장되고 이 ul값과 pw.input_pwd.value(입력값)이 일치하면 문제가 풀릴 것 같음 https://webhacking.kr/challenge/js-1/이게 현재 URL이니까 .kr의 위치는 앞에서 0부터 시작해 18 위치에 있고 ul*30은 18*30이므로 540을 입력하면 if 조건문을 만족해 해당 문장이 실행된다. 입력창에 540을 입력하면~
webhacking.kr old-16
·
W3B H4CK1NG
처음에 들어가면 보이는 화면키보드 몇 개를 눌러보니 별이 생성되고 움직이는 걸 확인할 수 있음뭔가 JS를 활용해야 할 것 같음... 소스코드를 본 결과 mv 함수에서 별을 움직이게 하는 것 같음매개변수인 cd에 키 코드가 들어가는 것 같음마지막 if문에 주석 do it이 달려있는 걸 보니 하라는 대로 해야 할 것 같음124를 눌러보면 아무것도 안 일어나는 걸 확인ASCII 코드로 124는 |(파이프)이므로 눌러보면~
[dreamhack] file download-1
·
W3B H4CK1NG
read 함수에서 try문에 open 메소드 안에서 " UPLOAD_DIR / filename " 을 확인할 수 있듯이 업로드 된 파일들의 디렉터리가 filename 바로 위 디렉터리인 것을 알 수 있음 URL에서 name=../flag.py로 수정하면 값이 나옴
[dreamhack] CSRF-2
·
W3B H4CK1NG
주어진 페이지를 들어가면 다음과 같은 화면이 나옴vulnflaglogin세 가지 창으로 구성되어 있으며 아래에는 로그인하라는 문구를 확인할 수 있음  vuln 페이지를 들어가면 ' return ''@app.route('/login', methods=['GET', 'POST'])def login(): if request.method == 'GET': return render_template('login.html') elif request.method == 'POST': username = request.form.get('username') password = request.form.get('password') try: ..
[dreamhack] CSRF-1
·
W3B H4CK1NG
해당 페이지는vulnmemonotice flagflag4개의 페이지로 구성됨 #!/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": "valu..
webhacking.kr / old-1
·
W3B H4CK1NG
코드에 따르면 쿠키 값이 3보다는 크되 4 이상이면 안 됨내가 좋아하는 숫자인 3.14를 넣어보도록 하겠음 ㅎㅎ~ 풀렸습니다 ^_^