web security academy3

2026. 2. 6. 15:06ㆍ보안/Web security Academy

Lab: SQL injection attack, querying the database type and version on MySQL and Microsoft

This lab contains a SQL injection vulnerability in the product category filter. You can use a UNION attack to retrieve the results from an injected query.

To solve the lab, display the database version string.

( 이 연구실에는 제품 카테고리 필터에 SQL 주입 취약점이 포함되어 있습니다. UNION 공격을 사용하여 주입된 쿼리에서 결과를 가져올 수 있습니다.

실험실을 해결하려면 데이터베이스 버전 문자열을 표시합니다. )

 

1. 이번 lab에서도 데이터베이스에 버전을 표시하는 방법입니다 web security academy2와 다른 점은 사용하는 데이터베이스가 oracle이 아닌 mysql인것입니다 

일단 order by 1# 을 사용해서 해당 웹페이지에 몇개의 칼럼이 있는지를 확인합니다 oracle에서는 --가 주석처리를 하는데 사용한 반면 mysql에서는 #을 이용해 주석처리를 합니다

이렇게 order by 3#을 했을떄 오류가 발생하므로 해당 웹페이지에는 2개의 칼럼이 있는것을 확인할 수 있습니다 

해당 웹페이지에 칼럼이 2개인 점을 이용해 ' UNION SELECT 'a', 'a'#를 이용해 해당 UNION 명령어가 잘 실행이 되는지 확인하는 작업입니다 또한 위 사진처럼 잘 작동하는 것을 확인을 하였으니 이제 데이터베이스 버젼을 확인하기 위해 

 

' UNION SELECT @@version, NULL# 명령어를 사용하여 해당 데이터베이스에 버젼을 확인해 줍니다 이전 oracle에서는

SELECT banner FROM v$version 명령어를 사용했고 현재 데이터베이스는 Mysql과 microsoft이기 떄문에 @@version으로 사용이 가능합니다 

'보안 > Web security Academy' 카테고리의 다른 글

web security academy6  (0) 2026.02.11
web security academy5  (0) 2026.02.10
web security academy4  (0) 2026.02.09
web security academy2  (0) 2026.02.05
web security academy  (0) 2026.02.04