cspj-application/server-ml
2025-02-13 02:44:22 +08:00
..
docker-compose.yml added docker image for server-ml 2025-02-13 02:44:22 +08:00
Dockerfile added docker image for server-ml 2025-02-13 02:44:22 +08:00
main.py changed response format 2025-02-13 02:44:00 +08:00
pyproject.toml changed response format 2025-02-13 02:44:00 +08:00
README.md changed response format 2025-02-13 02:44:00 +08:00
requirements.txt changed response format 2025-02-13 02:44:00 +08:00
uv.lock asdf 2025-02-06 02:43:26 +08:00

Test Cases

1. Basic test cases

[Good] SELECT _ FROM users WHERE id = 1
[Bad] SELECT _ FROM users WHERE id = 1 OR 1=1

2. Authentication bypass cases

[Bad] SELECT _ FROM users WHERE username = 'admin' --
[Bad] SELECT _ FROM users WHERE username = 'admin' #
[Bad] SELECT \* FROM users WHERE username = 'admin' OR '1'='1'

3. Union based injection cases

[Bad] SELECT id, username FROM users WHERE id = 1 UNION SELECT null, 'hacker'
[Bad] SELECT id, username FROM users WHERE id = 1 UNION SELECT 1, 'hacked' FROM dual
[Bad] SELECT database() UNION SELECT 1

4. Error based injection cases

[Bad] SELECT _ FROM users WHERE id = 1 AND (SELECT 1 FROM users WHERE id=2)=1
[Bad] SELECT _ FROM users WHERE id = (SELECT COUNT(\*) FROM users)

5. Blind SQL injection cases

[Bad] SELECT _ FROM users WHERE id = 1; WAITFOR DELAY '00:00:10' --
[Bad] SELECT _ FROM users WHERE username = 'admin' AND 1=1

6. Hex and Base64 encoded injection cases

[Bad] SELECT _ FROM users WHERE username = 0x61646D696E
[Bad] SELECT _ FROM users WHERE username = 'YWRtaW4='

7. False positives cases

[Good] SELECT _ FROM users WHERE id = 5
[Good] SELECT users.name, orders.amount FROM users JOIN orders ON users.id = orders.user_id
[Good] SELECT _ FROM users WHERE username = ? AND password = ?

8. Edge cases

[Good] ""
[Bad] '; --
[Good] 12345
[Good] asdkjhasdkjh