이 영역을 누르면 첫 페이지로 이동
caputdraconis 블로그의 첫 페이지로 이동

caputdraconis

페이지 맨 위로 올라가기

caputdraconis

네트워크 관점에서의 클라우드 컴퓨팅을 공부하는 중입니다 :)

[LOS / LORD OF SQL INJECTION] gremlin

  • 2020.08.12 05:28
  • Security/WebHacking
글 작성자: caputdraconis
반응형

8월 11일 저녁부터 지금 이 글을 작성하는 8월 12일 새벽까지 webhacking.kr이 열리지 않는 관계로 풀만한 워게임을 찾다가 발견한 LOS.. 해커스쿨에서 BOF와 비슷한 시리즈로 만든 웹해킹, 특히 SQL Injection에 대한 워게임이 있는 사이트다.

https://los.rubiya.kr/gate.php

 

https://los.rubiya.kr/gate.php

 

los.rubiya.kr

gremlin 문제의 php 코드다. php 코드에서는 우리가 GET 방식으로 전달한 id값과 pw값이 어떻게 처리되는지 보여준다. 대충 한 번 훑어보면 $_GET['id']와 $_GET['pw']에서 특정 문자의 필터링을 거쳐서 만약 있다면! exit하게 한다. 

만약 이 필터링을 넘긴다면 DB에 id와 pw를 만족하는 계정의 id를 요청한다. DB로부터 id가 제대로 왔을때 이 단계는 해결이 되는 것으로 보인다. id 값만 존재하면 된다는 것을 명심해야하나? 암튼 명심하고 넘어가자!

 

어! 그럼 id와 pw 값은 어떻게 넣을까? 위 php 파일을 보면 알 수 있듯이 GET방식으로 주면 된다. 만약 id와 pw 모두 1이라는 값을 줄려고 할 때 아래의 모습일 것이다.

위와 같이 작성하고 엔터치면!?

밑에 이렇게 php문 내에서 작성되는 query문의 모습을 보여준다. id는 '1'인 계정을 노려보자. 내가 노린 쿼리는 다음과 같다.

select id from prob_gremlin where id='1' and pw='1'or '1'='1'

위와 같이 mysql에 명령하면 id는 '1'인 모든 계정을 요청한다. 그 이유는 pw에 있다. pw는 '1'이거나 '1'='1', 즉 무조건 참임을 의미한다.

굳이 id와 pw까지 맞추지 않아도 '1'이라는 id를 가진 계정만 존재한다면 이는 성공이다..

 

위처럼 입력하고 엔터를 땅! 누르면!?

 

반응형

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • [Webhacking.kr] Challenge old-16

    [Webhacking.kr] Challenge old-16

    2020.08.14
  • [LOS / LORD OF SQL INJECTION] cobolt

    [LOS / LORD OF SQL INJECTION] cobolt

    2020.08.12
  • Suninatas Web 4번

    Suninatas Web 4번

    2020.08.06
  • Suninatas Web 3번

    Suninatas Web 3번

    2020.08.05
다른 글 더 둘러보기

정보

caputdraconis 블로그의 첫 페이지로 이동

caputdraconis

  • caputdraconis의 첫 페이지로 이동

검색

메뉴

    카테고리

    • 분류 전체보기 (168)
      • Cloud (3)
      • Computer Network (12)
      • Database (2)
      • Terraform (2)
      • 🥚고리즘 (13)
      • 겅부겅부🙃 (10)
        • Naver CS50 코칭스터디 (2)
        • Machine Learning (1)
        • Computing System (6)
      • 언어&프레임워크 (20)
        • Python (4)
        • Django (10)
        • Node JS (1)
        • C++ (2)
        • Java (1)
        • Flutter (2)
      • Security (76)
        • WebHacking Study (11)
        • 지옥방 스터디 (22)
        • 여름방학 스터디 (2)
        • PWN Study (6)
        • SUA Reversing Study (3)
        • PWN (3)
        • WebHacking (20)
        • Reversing (4)
      • 알고 있으면 도움되지 않을까,,? (23)
      • 일상다반사 (1)
      • 근황 정리 (1)
      • 42 Seoul (1)
        • Setting (1)

    최근 글

    인기 글

    댓글

    공지사항

    아카이브

    태그

    • old-16
    • Python
    • 파이썬
    • 웹해킹.kr
    • 드림핵
    • 리스트함수
    • 파이썬함수
    • 파이썬기초

    나의 외부 링크

    • Github
    • solved.ac
    • caputdraconis@kakao.com

    정보

    caputdraconis의 caputdraconis

    caputdraconis

    caputdraconis

    블로그 구독하기

    • 구독하기
    • RSS 피드

    방문자

    • 전체 방문자
    • 오늘
    • 어제

    티스토리

    • 티스토리 홈
    • 이 블로그 관리하기
    • 글쓰기
    Powered by Tistory / Kakao. Copyright © caputdraconis.

    티스토리툴바