SQLinjection공격
K.Knock 동아리에서 sql인젝션이 무엇인지 알아보라고 자체적으로 제작한 문제이다. 처음 들어가면 위와같은 화면이 나온다. 소스를 살펴보자 주석을 통해 힌트를 주었다. 해당 파일을 보니 아래와 같은 소스가 나왔다. 저 코드를 한줄씩 살펴보다보면 쿼리문을 담는 변수인 q에서 취약점이 존재함을 알 수 있다. 변수 no에 따옴표가 없어 명령을 스페이스바로 구분해낼 수 있다. 한가지 더 알수있는 정보는 id가 admin인 계정을 찾아내면 된다는 것이다. 위와같이 입력하게되면 select id from account_info where id = '$id' and pw = '$pw' and no =1 or id='admin' 위와같은 쿼리가 완성되며 or를 기준으로 오른쪽이 참이니 참에 해당하는 값을 반환하게 ..