[LOS 4번 : orc] 문제 풀이
LOS 4번 orc를 풀이해보도록 하겠습니다. 먼저 문제를 보면, 기존 1~3번의 일반적인 SQL Injection들과는 다른점을 볼 수있습니다. 바로, 빨간박스 부분입니다. 빨간 박스 부분을 간단히 해석해보면 아래와 같은 순서로 진행됩니다. 1. 사용자로부터 입력받은 pw 내 특수문자(', ", `, \)에 대하여 역슬래시를 앞에 붙인 뒤, 저장 2. 특수문자 처리를 끝낸 값을 쿼리에 넣어 실행 3. 쿼리 실행 결과 pw필드에 데이터가 조회되었으며, 이 조회된 값이 사용자의 입력값과 동일하다면, 문제가 풀림 여기서 핵심은 1번, 즉 특수문자를 처리하는 과정에 있습니다. 특수문자앞에 역슬래시가 붙으면서, 쿼터가 제 역할을 하지 못하고 문자처리가 되며, 이로인해 SQL Injection이 불가해집니다. 또..
[LOS 3번 : Goblin] 문제 풀이
LOS 3번 Goblin 문제를 풀어보도록 하겠습니다.1번 박스를 통해, 어떠한 형태의 쿼리를 실행시키려는지 확인이 가능하며,2번 박스를 통해, 결과값에 따른 출력이 어떻게 변화하는지 확인이 가능하며,3번 박스를 통해, 문제 풀이를 위한 조건을 확인할 수 있습니다.- 1번 박스id가 기본적으로 guest로 박혀있으며, no는 기본적으로 숫자 형태이며, 쿼터(', ", `)가 필터링 되어 있어, 문자열을 입력할 수 없습니다.- 2번 박스1번 박스에 있는 쿼리를 통해 성공적으로 조회에 성공할 경우, 조회된 id를 Hello 문구와 같이 화면에 출력해줍니다.- 3번 박스 : 1번 박스에 있는 쿼리를 통해 admin이라는 id를 조회해야만 문제를 해결 할 수 있습니다.이 문제는 처음 보면 굉장히 난해할 수 있습..