2주차 세션

CS pro·2023년 3월 23일
0

드림핵

목록 보기
1/6

드림핵 쿠키문제

문제파일 다운로드!

서버동작을 해봤더니 이렇게 나왔다!서버동작

로그인 페이지

로그인을 해줘야 답이 나오는데 비밀번호를 알 수 없다.
그래서 쿠키를 통해 임의로 비밀번호를 변경할 수 있는 것을 알아냄(댓글을 통해 알아냄 ㅎㅎ)

"쿠키는 HTTP요청마다 새로운 커넥션을 열기 때문에 사용자인증을 계속해서 해야 한다는 단점을 개선하기 위해 상태 유지를 하기 위한 쿠키가 탄생되었다고 한다."

현재 크롬 쿠키 설정은 힘들다고 해서 f12에 콘솔에서 진행하였다.(구글링) ▼

확장프로그램(editthiscookie)을 설치하여 쿠키가 추가가 되어있는지 확인할 수 있다! ▼

홈 페이지를 F5해봤더니 답이 나오는 것을 확인할 수 있다!

Q2) chatgpt이용해서 sql injection 취약점문제 풀기

드림핵 sql injection 취약점 chatgpt이용
처음에는 코드를 봤다.

그래서 userlevel에 0이라고 쳐봤는데 hello guest라고 나옴!!

문제에서 챗쥐피티를 이용하라고 그래서 해봤다.

코드에서 이렇게 나와있었다.

username(=userid)이 admin으로 감안하면

으로 하면

플래그가 나옴

Q3) XSS-1 문제

드림핵 XSS-1문제

여기서 제공하는 페이지는 / , /vuln , /memo , /flag 가 있다.
/는 인덱스 페이지
/vuln는 이용자가 입력한 값을 출력한다. => 이용자가 전달한 파라미터의 값을 출력
/memo는 이용자가 메모를 남길 수 있으며, 작성한 메모를 출력. => 이용자가 전달한 memo 파라미터 값을 render_template 함수를 통해 기록하고 출력함.
/flag는 전달된 url에 임의 이용자가 접속하게끔 한다. 해당 이용자의 쿠키에는 FLAG가 존재 => 메소드에 따른 요청마다 다른 기능을 수행하는 것을 알 수 있다, GET에서는 이용자에게 URL을 입력받는 페이지를 제공하고, POST에서는 파라미터에 값과 쿠키에 FLAG를 포함해 check_xss함수를 호출! check_xss는 read_url함수를 호출해 vuln엔드포인트에 접속함. (https://dreamhack.io/lecture/courses/184 참고)

XSS 문제를 해결하기 위해 /vuln 엔드포인트에서 발생하는 XSS 취약점을 통해 임의 이용자의 쿠키를 탈취해야함!
쿠키 탈취는 두가지 방법(memo 페이지 사용 / 웹 서버 사용)이 있는데
나는 웹서버 사용했다!

드림핵 툴즈 서비스를 이용하여 Request Bin 버튼을 클릭하여 생성된 url과 속성과 함께 밑에 이미지와 같이 빈칸에 적어서 제출하였다.


다시 드림핵 툴즈 서비스로 돌아갔더니 Flag가 나왔다!!

profile
보안전문가 되기 위한 과정기록

0개의 댓글