SQL Injection – UNION 공격, 다른 테이블에서 데이터 가져오기 | PortSwigger Lab Note #4
발행: (2026년 3월 9일 PM 10:20 GMT+9)
2 분 소요
원문: Dev.to
Source: Dev.to
Target
Tools Used
- Browser
- Burp Suite
Vulnerability Summary
- Type: SQL Injection
- Description:
실습을 해결하려면 모든 사용자 이름과 비밀번호를 가져오는 SQL 인젝션 UNION 공격을 수행하고, 해당 정보를 사용해 관리자 계정으로 로그인합니다.
Steps to Exploit
-
이전 노트에서 언급한 기법을 사용해 쿼리가 반환하는 열의 개수를 파악하고, 텍스트 데이터를 포함하는 열을 확인합니다. 쿼리가 두 개의 열을 반환하며, 두 열 모두 텍스트를 포함한다는 것을 확인합니다.

-
페이로드를 주입해 관리자의 비밀번호를 얻습니다.


Remediation
- 파라미터화된 쿼리 / 준비된 문(statement) 사용.
- 서버 측 입력 검증 구현.
- 사용자 입력을 이스케이프하고 정제(sanitize)하기.
Lessons Learned
원본 쿼리가 반환하는 열의 개수를 파악하고 문자열 데이터를 담을 수 있는 열을 식별하면, 흥미로운 데이터를 추출할 수 있는 위치에 도달하게 됩니다.