[워게임/웹해킹] Dreamhack 409 . session-basic

2024. 5. 11. 23:17·[ Computer Security ]/Web Security

1. 문제 소개

드림핵의 409번. session-basic
https://dreamhack.io/wargame/challenges/409

devtools-sources

개발자 도구의 Sources 탭 기능을 활용해 플래그를 찾아보세요. 플래그 형식은 DH{...} 입니다. Reference Tools: Browser DevTools

dreamhack.io

 
쿠키와 세션으로 인증 상태를 관리하는 간단한 로그인 서비스입니다.
admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있습니다. 
플래그 형식은 DH{...} 입니다.
 

2. 풀이 방법

이 문제는 내가 처음 풀어본 워게임 문제이다
 
문제와 해설 하단에 있는 접속 정보에서 서버 생성부터 해줘야한다

시간이 조금만 지나면 웹해킹 문제 링크가 생성되는데
잠깐이지만 기다리는 동안 문제 파일을 다운 받고 압축을 해제해둔다
플라스크 파일이 하나 들어있다
 
생성된 링크에 접속하면 단조로운 웹 페이지가 보인다

어떻게 풀어야하는지 전혀 감을 잡을 수 없었다
이 문제는 쿠키와 세션 개념을 익히기 위한 문제로
풀이에는 별 의미 없는 화면이므로 로그인 페이지로 들어가면 된다
 
로그인 하려고 보니 우리는 알고 있는 아이디와 패스워드가 없다
힌트를 얻기 위해 아까 다운 받았던 소스파일을 연다
 
코드에서 user 부분을 확인해보면
id와 pw가 한 쌍으로 구성된 딕셔너리가 있다
 
여기서 힌트를 얻어 guest - guest 로 접속한다
(id : guest / pw : guest)
 

로그인은 성공했으나 admin 계정이 아니라서 flag는 아직 알려주지 않는다
 
해당 페이지에서 개발자 도구를 열거나
edit this cookie 라는 구글 크롬 브라우저의 확장앱을 사용하면
guest 계정에 대한 쿠키를 확인해볼 수 있다
 
이때 우리는 admin 계정의 쿠키를 탈취한다면
로그인이 가능하고 flag를 얻을 수 있을 것이라는 생각이 든다
 
코드에서  @app.route( ) 구간의 내용이 웹 사이트에서 하나의 페이지를 구성하고
괄호 내부에는 home, login, /admin 등의 파라미터가 들어갈 수 있는데
 
@app.route( /admin) 페이지 코드를 보고
생성했했던 드림핵 워게임 가상서버 주소 끝에 /admin 을 추가해서 접속한다
 
그러면 {"쿠키" : "admin"} 형태의 딕셔너리 하나가 출력되는데
이 쿠키가 admin 계정의 쿠키이다
이 쿠키를 복사해서 게스트의 쿠키를 admin의 쿠키로 바꿔주면 된다
 
바꾸는 방법은 간단하다 
개발자 도구를 열어서 application에 들어가거나
edit this cookie 확장앱을 사용하여
기존의 guest 쿠키를 지우고 입력해주면 된다
 
변경 후 다시 확인해보면 

성공이다 
admin으로 접속되었고 flag를 알 수 있다
 
DH{ } 부분을 복사해서 정답으로 입력하면 끝!
 
 

728x90

'[ Computer Security ] > Web Security' 카테고리의 다른 글

[웹보안] 웹 보안 정책, 조직, 솔루션  (0) 2024.08.26
[웹보안] 웹 서버 보안  (1) 2024.08.26
[웹보안] 웹 보안의 기본 요소  (2) 2024.08.26
[워게임/웹해킹] Dreamhack 267 . devtools-sources  (1) 2024.05.11
[웹보안] 인터넷 해킹과 보안 연습문제 8장  (2) 2024.04.29
[웹보안] 인터넷 해킹과 보안 연습문제 7장  (0) 2024.04.29
[웹보안] 인터넷 해킹과 보안 연습문제 6장  (0) 2024.04.29
'[ Computer Security ]/Web Security' 카테고리의 다른 글
  • [웹보안] 웹 서버 보안
  • [웹보안] 웹 보안의 기본 요소
  • [워게임/웹해킹] Dreamhack 267 . devtools-sources
  • [웹보안] 인터넷 해킹과 보안 연습문제 8장
dev charlotte
dev charlotte
주 - 컴퓨터공학 / 복수 - 산업 보안
    250x250
  • dev charlotte
    int main() {
    dev charlotte
  • 전체
    오늘
    어제
    • 분류 전체보기 N
      • [ Laboratory ]
        • Paper review
        • Advanced Operating System
        • System Software & Storage
        • Lab etc
      • [ Computer Science ]
        • Algorithm_C++
        • Operating System
        • Information Retrieval
        • Database_sql
        • SW Engineering
        • Computer Network
        • JavaScript
        • Python
        • Data Structure
        • CS study
        • Distributed systems
      • [ Computer Security ]
        • Convergence Security
        • Web Security
        • PIMS
        • Network Security
        • Digital Finance
      • [ Artificial Intelligence ]
        • Trend
        • Seminar
      • [ 미래, 같이, LG ]
      • [ Development ]
        • [ Front-end ]
        • [ Back-end ] Spring 기본
        • [ Back-end ] Node.js
      • etc N
        • 현대오토에버 스마트 모빌리티 공학 체험 교육 N
      • It's me
  • 블로그 메뉴

    • 링크

      • GitHub
    • 공지사항

    • 인기 글

    • 태그

      코딩 교육
      spdk
      코드잇
      SSAFY
      오블완
      ssafy 13기
      hotstorage
      공대생 대외활동
      현대오토에버 스마트 모빌리티
      프로그래머스 코테
      싸피 13기
      싸피
      백준
      프로그래머스 입문
      SQL
      프로그래밍 언어론
      비전공자 코딩
      현대오토에버
      SQL 쿼리
      MySQL
      티스토리챌린지
      자바스크립트
      스마트모빌리티공학체험교육
      프로그래머스
      현대오토에버 스마트모빌리티
      데이터베이스
      대학생 대외활동
      소프트웨어 공학
      코딩 인강
      프로그래머스 c++
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.4
    dev charlotte
    [워게임/웹해킹] Dreamhack 409 . session-basic
    상단으로

    티스토리툴바