개인 공부128 [웹해킹] LOS 6 - (Darkelf) Lord of sql injection - Darkelf 풀이 los 6번 Darkelf에 대한 풀이 포스팅입니다. 이번 문제에 추가된 필터링은 or과 and입니다. or과 and를 사용하지않고 admin 레코드를 얻어내면 해결할 수 있는 문제입니다. 우회법이 각각 || 기호와 &&기호를 사용하는 것으로 간단하기때문에 바로 풀이하겠습니다. 풀이 방금 언급했듯이, or과 and에 대한 우회를 찾는 것이 핵심 풀이입니다. || 기호와 &&기호를 통해 해결가능하기때문에 바로 작성하겠습니다. 2021. 5. 30. [웹해킹] LOS 4 - (Orc) Lord of sql injection - orc 풀이 los 4번 orc에 대한 풀이 포스팅입니다. 이전 문제들과 다르게 쿼리문이 두개가 존재한다는 것을 볼 수 있습니다. 문제 접근 제가 색칠한 라인을 살펴보면, 한마디로 정의해서 이 문제는 admin계정의 password를 알아내는 문제입니다. 이전의 문제들과 다르게 단순히 쿼리문으로 조건문을 우회하는 것이 아닌 직접 admin에 대한 password를 알아내야하므로 python requests 모듈을 사용해서 해결해야합니다. https://docs.python-requests.org/en/master/user/quickstart/ Quickstart — Requests 2.25.1 documentation Eager to get started? Th.. 2021. 5. 30. [웹해킹] LOS 3 - (Goblin) Lord of sql injection - goblin 풀이 los의 세번째 문제 풀이입니다. 세번째 문제부터는 조금 주목해야할 점이 있습니다. preg_match에서 추가적으로 필터링 되는 문자가 ' 와 " 가 추가되었기때문에 이전 1,2번에서 사용하던 풀이가 막히게 된 것입니다. 문제 접근 먼저 문제상황을 살펴보면 1. id= 'guest'로 지정되어있기때문에, no 조건에 대해 쿼리문을 적절히 삽입해서 admin을 얻어와야한다. 2. no에 대한 조건을 false로 주고, id= admin 에 대한 조건을 참으로 만들어서 admin을 select한다. 3. 'admin' id를 얻어와서 solve() 를 동작시킨다 + 필터링 문자가 추가되었기때문에 이것을 우회할 수 있는 방안이 필요하다. 2021. 5. 29. [웹해킹] LOS 2 - (Cobolt) Lord of sql injection - Cobolt 풀이 먼저 php문을 살펴보겠습니다. 1번 문제와 동일하게 필터링조건이 걸려있고, 문제 자체도 유사해보입니다. $query = "select id from prob_cobolt where id='{$_GET[id]}' and pw=md5('{$_GET[pw]}')"; echo "query : {$query} "; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id'] == 'admin') solve("cobolt"); 쿼리문을 살펴보게되면, pw에 해쉬함수가 추가된 것을 확인할 수 있습니다. 그리고 이번에는 1번 문제와 다르게 단순히 id가 존재하는지에 대한 조건이 아니라,.. 2021. 5. 29. 이전 1 ··· 27 28 29 30 31 32 다음