ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 드림핵 워게임(1) - cookie
    해킹/웹해킹 2023. 3. 30. 19:01

    이 문제를 다루는 이유는...어려워서가 아니라 문제 풀이를 위한 배경지식을 위해서 다루기로 했다. 

     

    해당 문제의 목표는 관리자 권한(admin 계정 나오면 무조건 관리자 권한이라고 생각해주자)을 획득해 FLAG를 획득하는 것으로, 문제에서는 다음 두 페이지를 제공한다.

     

     

     

    페이지에 대한 설명 및 알아내야 할 것 

    인덱스 페이지(홈화면) : username을 출력하여 관리자 계정을 확인하기

     

    @app.route('페이지 이름')

    - 페이지에서 어떤 정보를 얻어야할지 생각했을 때, 인덱스 페이지에는 보통 username이 뜬다. -> 쿠키와 세션확인 가능 

     

    1. username = request.cookies.get('이용자가 전송한 쿠키의 username', None(얘는 무시))

     

    - 쿠키에서 유저네임을 추출할 수 있는 코드이다. = request.cookies.get('username')

     

    2. username이 admin이라면 flas is FLAG가 출력되고 아니라면(else) you are not admin 메세지가 뜨는 것이 확인이 가능하다.

     

    로그인페이지 : username, password를 입력받고 로그인을 한다. 

     

    @app.route('페이지 이름', [전송 메서드 명])이 뜨는데, 이 로그인 페이지는 특이하게 두 개의 방식을 다 사용하고 있다. 두 개의 메서드가 각각 어떤 역할을 하는지 알아야 함 

     

    if request.method == 'Get'

     

    - login 페이지를 렌더링함

    - 딱히 GET으로 건질 건 없어보임

     

    if request.method == 'Post'

    - 정상적 로그인, 비정상적 로그인을 케이스를 나눠서 어떻게 화면에 출력할건지 보여주고 있음

     

    try - except 구문 

    try:
        실행할 코드
    except:
        예외가 발생했을 때 처리하는 코드

     

     

     

     

     

     

     

     

     

    '해킹 > 웹해킹' 카테고리의 다른 글

    웹 해킹(5) - CSRF  (0) 2023.03.31
    웹 해킹(4) - XSS  (0) 2023.03.31
    웹해킹 기초(3) - 쿠키&세션  (0) 2023.03.30
    웹 해킹(2) - 개발자 도구 사용하기  (0) 2023.03.29
    웹해킹(1) - 기초  (0) 2023.03.27
Designed by Tistory.