
웹 사이트에 접속을 하면 2개의 입력 폼이 존재한다.아무 값이나 입력해보니 Try again이 출력되었다.주어진 문제 파일에서 check.php 파일의 소스코드를 확인해보니 특정 조건 5개를 모두 만족하면 플래그를 주는 형식이었다. 조건은 아래와 같다.위 두 조건은 $

문제를 보자마자 세션 하이재킹이 떠올랐다. 세션이 무엇인지 모른다면 세션과 쿠키 포스트 참고.서버에 접속하면 "Welcome"이라는 문자가 보이고 우측 상단에 Login 버튼이 존재하는 것을 볼 수 있다.버튼을 눌러보면 로그인 폼이 나타난다. 하지만 어떠한 아이디, 패

어디서 찾으라는지 나와있지 않아서 문제 파일을 다운로드 해봤다. 웹 사이트 구성 요소들이 보인다. index.html을 구글로 열어보자.안경 쓴 멋쟁이가 나온다. 문제에서 개발자 도구의 Sources 탭 기능을 활용하라 했으니 개발자 도구를 열고 Sources 탭으로

서버에 접속하면 memo를 업로드하라고 나온다.상단에 Upload My Memo 탭으로 이동해 파일을 업로드해보자.업로드하면 메인화면에 내가 올린 파일 목록이 출력된다. 해당 요소의 소스코드를 확인해보자./read?name=test 경로에서 파일을 읽어온다. name

문제 풀이

이번 문제는 따로 서버가 없기 때문에 문제 파일을 다운로드 받아 HTML 파일을 실행.웹 사이트에는 호박이 덩그러니 있고, 아래에 10000번을 더 클릭하라고 나와있다.우회할 방법을 찾기 위해 소스코드를 확인.소스코드 내에 스크립트가 존재한다. 이를 해석해보면, 호박(

문제 풀이 
GET, POST 방식으로 데이터를 입력 받는데, POST 방식으로 입력된 값이 정규표현식 패턴에 일치하면 플래그 값을 반환해주는 것으로 보인다.전체를 분해해보면 다음과 같다.문자열 앞에 붙은 r은 문자열 내부에 존재하는 백 슬래시가 단순 문자로 처리되도록 만드는 옵션

서버에 접속해보면 문과 2개의 입력 필드가 보인다.소스코드를 보면 nickname과 password가 input1,2라는 이름으로 step2.php에 전송되는 것을 볼 수 있다.그럼 우선 문제 파일에 있는 step2.php 파일 코드를 확인해보자.input1,2(nic
문제 풀이 소스 코드를 보면 img_files 안에 그림 파일들의 경로를 저장하고 있다. 이 그림들이 날라다니는 문자들 일 것 같다. 여기가 중요한 부분인데, anim() 함수와 move() 함수가 정의되어 있다. anim() 함수는 elem(요소), pos(위치

문제 파일에 있는 app.py를 보면 각 유저 정보가 적혀있는 걸 볼 수 있다.그리고 아래에는 username이 admin인 경우 flag 값을 출력하도록 코드가 작성되어있다. sessionid 값을 알아내 admin으로 로그인하면 바로 flag 값이 나오는 구조이다.

/step1 경로에서 param, param2 값을 입력받고 있는데, param에 getget, param2에 rerequest를 입력할 경우 다음 단계로 redirect된다.다음 단계에서도 prm1, prm2를 입력 받는데, prm1에 pooost, prm2에 req

문제 풀이

우측 상단에 로그인 버튼이 보인다.F12를 눌러 소스코드를 보니 디폴트 계정이 guest/guest라고 나와있다. 해당 계정으로 로그인해보자.guest로 로그인이 되며 세션 ID가 부여된다.세션 ID는 로그인 할 때마다 무작위로 변경되는 것으로 보인다.변하는 값에 어떠

우선 소스코드부터 확인.read_url() 이라는 함수가 정의되어 있다. url과 cookie 값을 받아 selenium으로 페이지를 로드한다. driver.add_cookie(cookie)로 입력받은 쿠키를 추가하고 driver.get(url)으로 해당 페이지를 로드

보통 SQLI 취약점을 탐색하기 위해 첫 번째로 ' 또는 "를 넣어 테스트한다.틀렸다고 나온다.이번엔 "(쌍따옴표)쌍따옴표를 넣으니 서버 에러가 출력되었다. 이는 서버에서 "를 query에 넣어 처리한다는 의미이다.여기에 DB에서 주석을 의미하는 --을 붙여 넣는다.그

소스코드는 이전 xss-1과 비교했을 때 /vuln 경로에서 param을 리턴하는 대신 html 파일 자체를 리턴하는 걸로 바뀐 것을 제외하면 전부 동일하다.우선 /vuln 페이지에서 동일하게 스크립트를 작성해본다.스크립트가 동작하지 않는다.소스코드를 보니 <sc

이전 xss-1과 전체적으로 코드가 유사하지만 한가지 다른점은 xss 필터와 /admin/notice_flag 경로가 추가되었다는 점이다.xss 필터는 파라미터에 frame, script, on이 들어가면 \*로 변환한다. 이 필터로 js 코드를 실행할 수 있는 방법이