네트워크, 웹 (Network & Web)/Wargame
WebGoat - SQL injection (Blind SQL injection)
Tom 으로 로그인 하면 된다. 이미 존재한다고 나온다. 참인 쿼리문 주석 처리로는 로그인이 되지 않는다. REGISTER 부분에서도 참인 쿼리를 넣으면 이미 존재한다고 나온다. 거짓인 쿼리를 넣었더니 계정이 생성 되었다. tom' and substr(password,1,1)='a'-- 을 입력해서 password의 첫번째가 a인지 묻는 것을 만들 수 있다. 쿼리가 참이라면 이미 존재한다가 나올 것이고, 쿼리가 거짓이라면, 만들어질 것이다. 따라서 blind SQL injection의 조건이 갖춰지고, 참이 나오는 쿼리를 찾는 것이 곧 비밀번호를 찾는 것이다. burp suite에서 확인해보면, username_reg email_reg password_reg confirm_password_reg 인자값을..