# Web SQL injection Lab3
一樣先進到網站裡。

本題要知道資料庫的版本號,所以要測試 UNION 查詢的欄位數與是否可以顯示文字,因此我先攔截請求並修改。


```
'+UNION+SELECT+'abc','def'+FROM+dual--
```
- `+` 是空格的 URL encoding。
- `dual` 是 Oracle 中的虛擬表(大多數 DBMS 都有類似的 dummy 表)。
這個 payload 嘗試用 'abc' 和 'def' 來測試是否有 兩欄,且都能顯示文字資料,若頁面成功顯示出 abc 和 def,代表:
- 查詢回傳的欄位數是 2。
- 兩欄都能顯示文字。

確定會顯示文字在畫面上後,最後就來顯示資料庫版本。
```
'+UNION+SELECT+BANNER,+NULL+FROM+v$version--
```
- v$version 是 Oracle 資料庫中的系統檢視表,包含版本資訊。
- BANNER 是其中包含版本字串的欄位。
- +NULL 是填補第二欄,因為 UNION SELECT 的欄位數必須一致。
