워게임/Websec.fr [websec.fr] easy - Level 13 작성자 - 호롤로롤 첫 화면에 1,2,3 디폴트로 값이 들어가 있는것을 확인하고 go를 눌러 결과 값을 확인해보았다. 각 id에 해당하는 값과 권한을 출력해주는 것 같다. 소스코드를 보니 가장 먼저 쿼리문이 보인다. SELECT user_id, user_privileges, user_name FROM users WHERE (user_id in (".$selector.")); 보니 tmp 값이 implode 되어 쿼리 문에 들어가서 출력되는것 같다. 여기서 보아야 할 포인트는 tmp값이 1미만일 경우 unset 함수를 호출 한다는 것이다. 그러면서 count값이 줄어들면서 반복하는데 그러다보면 배열 끝에 있는 일부 요소 체크하지 않게 되는점을 이용한다. 일단 user_password에 flag 값이 있을 것이라고 추측하여 쿼리를 만들면 앞선 구문을 맞추기 위해서 아래와 같이 된다. )) union select user_password,user_name,3 from users-- 또한 임의로 체크 값을 체크하지 못하도록 0을 계속해서 추가해 주다보면 우리는 flag 값을 얻을 수 있다. 페이로드 0,0,0,0)) union select user_password,user_name,3 from users-- 공유하기 게시글 관리 MSS '워게임 > Websec.fr' 카테고리의 다른 글 [websec.fr] easy - Level 15 (0) 2021.09.12 [websec.fr] easy - Level 11 (0) 2021.08.22 [websec.fr] babysteps - Level 04 (0) 2021.07.18 [websec.fr] easy - Level 08 (0) 2021.07.14 [websec.fr] easy - Level 02 (0) 2021.07.11 Contents 당신이 좋아할만한 콘텐츠 [websec.fr] easy - Level 15 2021.09.12 [websec.fr] easy - Level 11 2021.08.22 [websec.fr] babysteps - Level 04 2021.07.18 [websec.fr] easy - Level 08 2021.07.14 댓글 0 + 이전 댓글 더보기