[PortSwigger] Lab: SQL injection UNION attack, determining the number of columns returned by the query
<문제>
이 랩에는 제품 카테고리 필터에 SQL 삽입 취약점이 포함되어 있습니다. 쿼리 결과는 애플리케이션의 응답으로 반환되므로 UNION 공격을 사용하여 다른 테이블에서 데이터를 검색할 수 있습니다. 이러한 공격의 첫 번째 단계는 쿼리에서 반환되는 열 수를 확인하는 것입니다. 그런 다음 후속 실습에서 이 기술을 사용하여 전체 공격을 구성하게 됩니다.
랩을 해결하려면 null 값이 포함된 추가 행을 반환하는 SQL 삽입 UNION 공격을 수행하여 쿼리에서 반환된 열 수를 확인합니다.
<write-up>
우선 union의 조건을 찾아보자.
이 문제에서 풀이의 포인트는 1번이다.
@@ 우리가 구하고자 하는 자료와 칼럼 수가 일치해야 한다는 것. @@
문제에서 카테고리에 취약점이 존재한다고 했으니 아무 카테고리에 들어가보자.
취약점을 분석해보면,
따옴표와 주석을 이용했을 때 sql injection 공격이 가능하다는 것을 알 수 있다.
이를 이용하여 공격을 시작해보자.
칼럼 수를 2개로 했을 때 시스템 에러가 남.
(서버 에러)
칼럼 수를 3개로 설정하면 오류가 나지 않는다.
공격 성공 !
dreamhack sql injection (0) | 2024.03.23 |
---|---|
Dreamhack sql injection bypass WAF write-up (0) | 2023.11.17 |
sql 인프런 강의 정리 (0) | 2023.11.17 |
[Dreamhack] csrf-1 write up (0) | 2023.10.13 |
[Dreamhack] CSRF 개념 (0) | 2023.10.09 |