SQL injection - UNION2
2020. 12. 25. 14:45ㆍ문제연습/bs_Training
반응형
본 티스토리 블로그는 PC에 최적화되어 있습니다.
모바일 유저분들은 아래 네이버 블로그를 이용해 주세요.
Lab: SQL injection UNION attack, finding a column containing text
1. 문제 내용
저번 문제와 마찬가지로 카테고리 부분에 인젝션 취약점이 존재하며
문제에서 제시되는 임의의 string 데이터를 쿼리에 삽입하여 화면에 출력하도록 해야 합니다.
1.1 접속화면
일단 소스코드와 필터 클릭을 하니 저번 문제와 동일한 형태입니다.
2. Attack
저번 시간에도 언급했듯이 union을 통한 공격을 시도할 경우 아래 두 가지 제약 조건을 충족해야 합니다.
1. 쿼리를 통해 반환된 칼럼 수가 같은 질의문을 넣어야 함.
2. 반환되는 데이터 형식이 서로 동일해야 함. (null로 대체 가능)
sql의 자료형에 대해서는 아래 링크를 참고해 주세요.
https://interconnection.tistory.com/100
일단은 각각의 조건을 충족시켜 보도록 하겠습니다.
Check1 - 칼럼 수 확인
order by, union 구문으로 반환되는 칼럼의 수를 확인해보니 3개인 것으로 확인되었습니다.
Check2 - 삽입 위치 지정
이제 문제에서 제시된 Make the database retrieve the string: 'Q6fLsB'을 쿼리에 삽입하여
웹사이트에 출력하면 됩니다.
반환되는 칼럼이 3개밖에 없으므로 모두 시도해본 결과 아래와 같이 성공하게 되었습니다.
이번 문제는 union 구문을 활용한 인젝션 공격을 수행해 보았습니다.
다음 시간에도 이어서 문제를 풀어보도록 하겠습니다.
반응형
'문제연습 > bs_Training' 카테고리의 다른 글
SQL injection - UNION3(Examining the database1) (0) | 2020.12.26 |
---|---|
SQL injection - UNION3 (0) | 2020.12.25 |
SQL injection - UNION1 (0) | 2020.12.23 |
SQL injection - Comment (0) | 2020.12.23 |
SQL injection - where 구문 (0) | 2020.12.22 |