WarGame/Lord of SQL Injection

    [LOSI] Lord of SQL Injection Level 4 - Orc

    무서운 몬스터가 우리 앞을 막아섰다. 오크라고 불리는 이 몬스터는.... 심각하게 뚱뚱한 이 몬스터를 쉽게 이길수 없다는 생각이 든다. 일단 코드를 확인하자. * 주의 : 이번 포스팅은 Python을 기본적으로 다룰 줄 아는 사람이 보도록 하자 모른다면 Python부터 짧게 공부하고 오자(다른 언어를 자유자재로 다룰 줄 안다면 이번포스팅에 굳이 Python을 알 필요는 없다. * Python 배우기 : 2021.04.04 - [개발/Python] - [Python] - Python의 설치와 실행 [Python] - Python의 설치와 실행 농사를 지으려면 땅이 있어야 하고, 그림을 그리려면 캔버스가 있어야 한다. 무슨 소리냐. -- Python을 시작하려면 Python을 작성할 수 있는 개발도구가 있어..

    [LOSI] Lord of SQL Injection Level 3 - Goblin

    코볼트를 훌륭하게 퇴치한 우리를 3번째로 반겨주는 몬스터는 고블린이다. 바로 코드를 확인하자 코드 코블린의 코드이다. 일단 id와 pw가 아닌 no라는 파라미터를 받아들이며 다음과 같은 문자열이 금지된다. prob, _(언더바), .(점), \(역 슬래쉬), '(작은따옴표), "(큰따옴표), `(그레이브) 이런! 우린 작은따옴표와 큰따옴표를 금지당했다. 이번에도 역시 no파라미터에 코드를 닫을 수 있도록 해주어야 하는데 어떡하나 싶다(ㄷㄷ). query는 다음과 같다. $query = "select id from prob_goblin where id='guest' and no={$_GET[no]}"; 해결조건은 다음과 같다. admin이 검색되면 성공이다. 이번 문제에서 우리는 두가지를 성공시켜야 한다...

    [LOSI] Lord of SQL Injection Level 2 - Cobolt

    다음으로 우리는 반기는 몬스터는 cobolt이다. 바로 코드로 넘어가자로 우리는 반기는 몬스터는 cobolt이다. 바로 코드로 넘어가자 코드 알고 있는 부분은 빠르게 넘어가고 이번에 못쓰는 문자열은 다음과 같다. prob, _(언더바),.(점), \(역 슬래쉬) 이점은 Level 1이랑 다른 게 없어 보인다. 쿼리를 보자 $query = "select id from prob_cobolt where id='{$_GET[id]}' and pw=md5('{$_GET[pw]}')"; 으흠; 이번에 는 id에 해당하는 pw를 md5를 이용해서 해싱하고 해싱 값을 비교한다. * 여담인데, DB를 다뤄본 분들은 아시겠지만, 비밀번호는 일방향으로 암호화, 생체정보는 양방향 암호화하는 것이 현재 개인정보보호법의 기준이다..

    [LOSI] Lord of SQL Injection Level 1 - Gremlin

    으ㅡㅡ 우리를 반겨주는 첫 번째 몬스터는 작은 그렘린이다. 우선 이 친구의 코드부터 알아보자 코드 PHP 코드를 열면 다음과 같은 코드가 우리를 반긴다. 첫 시작이니 하나하나 코드를 분석해 보자

    [LOSI] Lord of SQL Injection 문제풀이 포스팅을 시작하며

    약 1년전 열심히 풀었던 SQL Injection Hack Web인 Lord Of SQL Injection의 문제풀이를 적어두려고한다. 필자또한 독자와 같이 새로운 계정을 생성해서 처음부터 문제를 풀어나가보려고한다. Lord of SQL Injection은 SQL injection의 입문으로, 또한 이미 SQL Injecion에 통달한 사람들에게도 되새김 할 수 있는 좋은 홈페이지이니 SQL Injection에 관심있는 사람이라면 가벼운 마음으로 읽어보면 좋을 거 같다. * 재미도 있다. 던전형식을 오마주한Hack Web이다. 주소는 다음과 같다. los.rubiya.kr/ Lord of SQLInjection los.rubiya.kr 들어가면 다음과 같은 퀘스트 지령서가 우리들을 반긴다. [enter ..