Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
sqlmapproject
GitHub Repository: sqlmapproject/sqlmap
Path: blob/master/lib/core/enums.py
3553 views
1
#!/usr/bin/env python
2
3
"""
4
Copyright (c) 2006-2026 sqlmap developers (https://sqlmap.org)
5
See the file 'LICENSE' for copying permission
6
"""
7
8
class PRIORITY(object):
9
LOWEST = -100
10
LOWER = -50
11
LOW = -10
12
NORMAL = 0
13
HIGH = 10
14
HIGHER = 50
15
HIGHEST = 100
16
17
class SORT_ORDER(object):
18
FIRST = 0
19
SECOND = 1
20
THIRD = 2
21
FOURTH = 3
22
FIFTH = 4
23
LAST = 100
24
25
# Reference: https://docs.python.org/2/library/logging.html#logging-levels
26
class LOGGING_LEVELS(object):
27
NOTSET = 0
28
DEBUG = 10
29
INFO = 20
30
WARNING = 30
31
ERROR = 40
32
CRITICAL = 50
33
34
class DBMS(object):
35
ACCESS = "Microsoft Access"
36
DB2 = "IBM DB2"
37
FIREBIRD = "Firebird"
38
MAXDB = "SAP MaxDB"
39
MSSQL = "Microsoft SQL Server"
40
MYSQL = "MySQL"
41
ORACLE = "Oracle"
42
PGSQL = "PostgreSQL"
43
SQLITE = "SQLite"
44
SYBASE = "Sybase"
45
INFORMIX = "Informix"
46
HSQLDB = "HSQLDB"
47
H2 = "H2"
48
MONETDB = "MonetDB"
49
DERBY = "Apache Derby"
50
VERTICA = "Vertica"
51
MCKOI = "Mckoi"
52
PRESTO = "Presto"
53
ALTIBASE = "Altibase"
54
MIMERSQL = "MimerSQL"
55
CLICKHOUSE = "ClickHouse"
56
CRATEDB = "CrateDB"
57
CUBRID = "Cubrid"
58
CACHE = "InterSystems Cache"
59
EXTREMEDB = "eXtremeDB"
60
FRONTBASE = "FrontBase"
61
RAIMA = "Raima Database Manager"
62
VIRTUOSO = "Virtuoso"
63
SNOWFLAKE = "Snowflake"
64
65
class DBMS_DIRECTORY_NAME(object):
66
ACCESS = "access"
67
DB2 = "db2"
68
FIREBIRD = "firebird"
69
MAXDB = "maxdb"
70
MSSQL = "mssqlserver"
71
MYSQL = "mysql"
72
ORACLE = "oracle"
73
PGSQL = "postgresql"
74
SQLITE = "sqlite"
75
SYBASE = "sybase"
76
HSQLDB = "hsqldb"
77
H2 = "h2"
78
INFORMIX = "informix"
79
MONETDB = "monetdb"
80
DERBY = "derby"
81
VERTICA = "vertica"
82
MCKOI = "mckoi"
83
PRESTO = "presto"
84
ALTIBASE = "altibase"
85
MIMERSQL = "mimersql"
86
CLICKHOUSE = "clickhouse"
87
CRATEDB = "cratedb"
88
CUBRID = "cubrid"
89
CACHE = "cache"
90
EXTREMEDB = "extremedb"
91
FRONTBASE = "frontbase"
92
RAIMA = "raima"
93
VIRTUOSO = "virtuoso"
94
SNOWFLAKE = "snowflake"
95
96
class FORK(object):
97
MARIADB = "MariaDB"
98
MEMSQL = "MemSQL"
99
PERCONA = "Percona"
100
COCKROACHDB = "CockroachDB"
101
TIDB = "TiDB"
102
REDSHIFT = "Amazon Redshift"
103
GREENPLUM = "Greenplum"
104
DRIZZLE = "Drizzle"
105
IGNITE = "Apache Ignite"
106
AURORA = "Aurora"
107
ENTERPRISEDB = "EnterpriseDB"
108
YELLOWBRICK = "Yellowbrick"
109
IRIS = "Iris"
110
YUGABYTEDB = "YugabyteDB"
111
OPENGAUSS = "OpenGauss"
112
DM8 = "DM8"
113
DORIS = "Doris"
114
STARROCKS = "StarRocks"
115
116
class CUSTOM_LOGGING(object):
117
PAYLOAD = 9
118
TRAFFIC_OUT = 8
119
TRAFFIC_IN = 7
120
121
class OS(object):
122
LINUX = "Linux"
123
WINDOWS = "Windows"
124
125
class PLACE(object):
126
GET = "GET"
127
POST = "POST"
128
URI = "URI"
129
COOKIE = "Cookie"
130
USER_AGENT = "User-Agent"
131
REFERER = "Referer"
132
HOST = "Host"
133
CUSTOM_POST = "(custom) POST"
134
CUSTOM_HEADER = "(custom) HEADER"
135
136
class POST_HINT(object):
137
SOAP = "SOAP"
138
JSON = "JSON"
139
JSON_LIKE = "JSON-like"
140
MULTIPART = "MULTIPART"
141
XML = "XML (generic)"
142
ARRAY_LIKE = "Array-like"
143
144
class HTTPMETHOD(object):
145
GET = "GET"
146
POST = "POST"
147
HEAD = "HEAD"
148
PUT = "PUT"
149
DELETE = "DELETE"
150
TRACE = "TRACE"
151
OPTIONS = "OPTIONS"
152
CONNECT = "CONNECT"
153
PATCH = "PATCH"
154
155
class NULLCONNECTION(object):
156
HEAD = "HEAD"
157
RANGE = "Range"
158
SKIP_READ = "skip-read"
159
160
class REFLECTIVE_COUNTER(object):
161
MISS = "MISS"
162
HIT = "HIT"
163
164
class CHARSET_TYPE(object):
165
BINARY = 1
166
DIGITS = 2
167
HEXADECIMAL = 3
168
ALPHA = 4
169
ALPHANUM = 5
170
171
class HEURISTIC_TEST(object):
172
CASTED = 1
173
NEGATIVE = 2
174
POSITIVE = 3
175
176
class HASH(object):
177
MYSQL = r'(?i)\A\*[0-9a-f]{40}\Z'
178
MYSQL_OLD = r'(?i)\A(?![0-9]+\Z)[0-9a-f]{16}\Z'
179
POSTGRES = r'(?i)\Amd5[0-9a-f]{32}\Z'
180
MSSQL = r'(?i)\A0x0100[0-9a-f]{8}[0-9a-f]{40}\Z'
181
MSSQL_OLD = r'(?i)\A0x0100[0-9a-f]{8}[0-9a-f]{80}\Z'
182
MSSQL_NEW = r'(?i)\A0x0200[0-9a-f]{8}[0-9a-f]{128}\Z'
183
ORACLE = r'(?i)\As:[0-9a-f]{60}\Z'
184
ORACLE_OLD = r'(?i)\A[0-9a-f]{16}\Z'
185
MD5_GENERIC = r'(?i)\A(0x)?[0-9a-f]{32}\Z'
186
SHA1_GENERIC = r'(?i)\A(0x)?[0-9a-f]{40}\Z'
187
SHA224_GENERIC = r'(?i)\A[0-9a-f]{56}\Z'
188
SHA256_GENERIC = r'(?i)\A(0x)?[0-9a-f]{64}\Z'
189
SHA384_GENERIC = r'(?i)\A[0-9a-f]{96}\Z'
190
SHA512_GENERIC = r'(?i)\A(0x)?[0-9a-f]{128}\Z'
191
CRYPT_GENERIC = r'\A(?!\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\Z)(?![0-9]+\Z)[./0-9A-Za-z]{13}\Z'
192
JOOMLA = r'\A[0-9a-f]{32}:\w{32}\Z'
193
PHPASS = r'\A\$[PHQS]\$[./0-9a-zA-Z]{31}\Z'
194
APACHE_MD5_CRYPT = r'\A\$apr1\$.{1,8}\$[./a-zA-Z0-9]+\Z'
195
UNIX_MD5_CRYPT = r'\A\$1\$.{1,8}\$[./a-zA-Z0-9]+\Z'
196
APACHE_SHA1 = r'\A\{SHA\}[a-zA-Z0-9+/]+={0,2}\Z'
197
VBULLETIN = r'\A[0-9a-fA-F]{32}:.{30}\Z'
198
VBULLETIN_OLD = r'\A[0-9a-fA-F]{32}:.{3}\Z'
199
OSCOMMERCE_OLD = r'\A[0-9a-fA-F]{32}:.{2}\Z'
200
SSHA = r'\A\{SSHA\}[a-zA-Z0-9+/]+={0,2}\Z'
201
SSHA256 = r'\A\{SSHA256\}[a-zA-Z0-9+/]+={0,2}\Z'
202
SSHA512 = r'\A\{SSHA512\}[a-zA-Z0-9+/]+={0,2}\Z'
203
DJANGO_MD5 = r'\Amd5\$[^$]*\$[0-9a-f]{32}\Z'
204
DJANGO_SHA1 = r'\Asha1\$[^$]*\$[0-9a-f]{40}\Z'
205
MD5_BASE64 = r'\A[a-zA-Z0-9+/]{22}==\Z'
206
SHA1_BASE64 = r'\A[a-zA-Z0-9+/]{27}=\Z'
207
SHA256_BASE64 = r'\A[a-zA-Z0-9+/]{43}=\Z'
208
SHA512_BASE64 = r'\A[a-zA-Z0-9+/]{86}==\Z'
209
210
# Reference: https://whatmyuseragent.com/brand/
211
class MOBILES(object):
212
BLACKBERRY = ("BlackBerry Z10", "Mozilla/5.0 (BB10; Kbd) AppleWebKit/537.35+ (KHTML, like Gecko) Version/10.3.3.2205 Mobile Safari/537.35+")
213
GALAXY = ("Samsung Galaxy A54", "Mozilla/5.0 (Linux; Android 15; SM-A546B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.7339.155 Mobile Safari/537.36 AirWatchBrowser/25.08.0.2131")
214
HP = ("HP iPAQ 6365", "Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320; HP iPAQ h6300)")
215
HTC = ("HTC One X2", "Mozilla/5.0 (Linux; Android 14; X2-HT) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.46 Mobile Safari/537.36")
216
HUAWEI = ("Huawei Honor 90 Pro", "Mozilla/5.0 (Linux; Android 15; REP-AN00 Build/HONORREP-AN00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/133.0.6943.137 Mobile Safari/537.36")
217
IPHONE = ("Apple iPhone 15 Pro Max", "Mozilla/7.0 (iPhone; CPU iPhone OS 18_7; iPhone 15 Pro Max) AppleWebKit/533.2 (KHTML, like Gecko) CriOS/126.0.6478.35 Mobile/15E148 Safari/804.17")
218
LUMIA = ("Microsoft Lumia 950 XL", "Mozilla/5.0 (Windows Mobile 10; Android 10.0;Microsoft;Lumia 950XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36 Edge/40.15254.603")
219
NEXUS = ("Google Nexus 7", "Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19")
220
NOKIA = ("Nokia N97", "Mozilla/5.0 (SymbianOS/9.4; Series60/5.0 NokiaN97-1/10.0.012; Profile/MIDP-2.1 Configuration/CLDC-1.1; en-us) AppleWebKit/525 (KHTML, like Gecko) WicKed/7.1.12344")
221
PIXEL = ("Google Pixel 9", "Mozilla/5.0 (Linux; Android 14; Pixel 9) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/24.0 Chrome/139.0.0.0 Mobile Safari/537.36")
222
XIAOMI = ("Xiaomi Redmi 15C", "Mozilla/5.0 (Linux; Android 15; REDMI 15C Build/AP3A.240905.015.A2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.6312.118 Mobile Safari/537.36 XiaoMi/MiuiBrowser/14.43.0-gn")
223
224
class PROXY_TYPE(object):
225
HTTP = "HTTP"
226
HTTPS = "HTTPS"
227
SOCKS4 = "SOCKS4"
228
SOCKS5 = "SOCKS5"
229
230
class REGISTRY_OPERATION(object):
231
READ = "read"
232
ADD = "add"
233
DELETE = "delete"
234
235
class DUMP_FORMAT(object):
236
CSV = "CSV"
237
HTML = "HTML"
238
SQLITE = "SQLITE"
239
240
class HTTP_HEADER(object):
241
ACCEPT = "Accept"
242
ACCEPT_CHARSET = "Accept-Charset"
243
ACCEPT_ENCODING = "Accept-Encoding"
244
ACCEPT_LANGUAGE = "Accept-Language"
245
AUTHORIZATION = "Authorization"
246
CACHE_CONTROL = "Cache-Control"
247
CONNECTION = "Connection"
248
CONTENT_ENCODING = "Content-Encoding"
249
CONTENT_LENGTH = "Content-Length"
250
CONTENT_RANGE = "Content-Range"
251
CONTENT_TYPE = "Content-Type"
252
COOKIE = "Cookie"
253
EXPIRES = "Expires"
254
HOST = "Host"
255
IF_MODIFIED_SINCE = "If-Modified-Since"
256
IF_NONE_MATCH = "If-None-Match"
257
LAST_MODIFIED = "Last-Modified"
258
LOCATION = "Location"
259
PRAGMA = "Pragma"
260
PROXY_AUTHORIZATION = "Proxy-Authorization"
261
PROXY_CONNECTION = "Proxy-Connection"
262
RANGE = "Range"
263
REFERER = "Referer"
264
REFRESH = "Refresh" # Reference: http://stackoverflow.com/a/283794
265
SERVER = "Server"
266
SET_COOKIE = "Set-Cookie"
267
TRANSFER_ENCODING = "Transfer-Encoding"
268
URI = "URI"
269
USER_AGENT = "User-Agent"
270
VIA = "Via"
271
X_POWERED_BY = "X-Powered-By"
272
X_DATA_ORIGIN = "X-Data-Origin"
273
274
class EXPECTED(object):
275
BOOL = "bool"
276
INT = "int"
277
278
class OPTION_TYPE(object):
279
BOOLEAN = "boolean"
280
INTEGER = "integer"
281
FLOAT = "float"
282
STRING = "string"
283
284
class HASHDB_KEYS(object):
285
DBMS = "DBMS"
286
DBMS_FORK = "DBMS_FORK"
287
CHECK_WAF_RESULT = "CHECK_WAF_RESULT"
288
CHECK_NULL_CONNECTION_RESULT = "CHECK_NULL_CONNECTION_RESULT"
289
CONF_TMP_PATH = "CONF_TMP_PATH"
290
KB_ABS_FILE_PATHS = "KB_ABS_FILE_PATHS"
291
KB_BRUTE_COLUMNS = "KB_BRUTE_COLUMNS"
292
KB_BRUTE_TABLES = "KB_BRUTE_TABLES"
293
KB_CHARS = "KB_CHARS"
294
KB_DYNAMIC_MARKINGS = "KB_DYNAMIC_MARKINGS"
295
KB_INJECTIONS = "KB_INJECTIONS"
296
KB_ERROR_CHUNK_LENGTH = "KB_ERROR_CHUNK_LENGTH"
297
KB_XP_CMDSHELL_AVAILABLE = "KB_XP_CMDSHELL_AVAILABLE"
298
OS = "OS"
299
300
class REDIRECTION(object):
301
YES = 'Y'
302
NO = 'N'
303
304
class PAYLOAD(object):
305
SQLINJECTION = {
306
1: "boolean-based blind",
307
2: "error-based",
308
3: "inline query",
309
4: "stacked queries",
310
5: "time-based blind",
311
6: "UNION query",
312
}
313
314
PARAMETER = {
315
1: "Unescaped numeric",
316
2: "Single quoted string",
317
3: "LIKE single quoted string",
318
4: "Double quoted string",
319
5: "LIKE double quoted string",
320
6: "Identifier (e.g. column name)",
321
}
322
323
RISK = {
324
0: "No risk",
325
1: "Low risk",
326
2: "Medium risk",
327
3: "High risk",
328
}
329
330
CLAUSE = {
331
0: "Always",
332
1: "WHERE",
333
2: "GROUP BY",
334
3: "ORDER BY",
335
4: "LIMIT",
336
5: "OFFSET",
337
6: "TOP",
338
7: "Table name",
339
8: "Column name",
340
9: "Pre-WHERE (non-query)",
341
}
342
343
class METHOD(object):
344
COMPARISON = "comparison"
345
GREP = "grep"
346
TIME = "time"
347
UNION = "union"
348
349
class TECHNIQUE(object):
350
BOOLEAN = 1
351
ERROR = 2
352
QUERY = 3
353
STACKED = 4
354
TIME = 5
355
UNION = 6
356
357
class WHERE(object):
358
ORIGINAL = 1
359
NEGATIVE = 2
360
REPLACE = 3
361
362
class WIZARD(object):
363
BASIC = ("getBanner", "getCurrentUser", "getCurrentDb", "isDba")
364
INTERMEDIATE = ("getBanner", "getCurrentUser", "getCurrentDb", "isDba", "getUsers", "getDbs", "getTables", "getSchema", "excludeSysDbs")
365
ALL = ("getBanner", "getCurrentUser", "getCurrentDb", "isDba", "getHostname", "getUsers", "getPasswordHashes", "getPrivileges", "getRoles", "dumpAll")
366
367
class ADJUST_TIME_DELAY(object):
368
DISABLE = -1
369
NO = 0
370
YES = 1
371
372
class WEB_PLATFORM(object):
373
PHP = "php"
374
ASP = "asp"
375
ASPX = "aspx"
376
JSP = "jsp"
377
CFM = "cfm"
378
379
class CONTENT_TYPE(object):
380
TARGET = 0
381
TECHNIQUES = 1
382
DBMS_FINGERPRINT = 2
383
BANNER = 3
384
CURRENT_USER = 4
385
CURRENT_DB = 5
386
HOSTNAME = 6
387
IS_DBA = 7
388
USERS = 8
389
PASSWORDS = 9
390
PRIVILEGES = 10
391
ROLES = 11
392
DBS = 12
393
TABLES = 13
394
COLUMNS = 14
395
SCHEMA = 15
396
COUNT = 16
397
DUMP_TABLE = 17
398
SEARCH = 18
399
SQL_QUERY = 19
400
COMMON_TABLES = 20
401
COMMON_COLUMNS = 21
402
FILE_READ = 22
403
FILE_WRITE = 23
404
OS_CMD = 24
405
REG_READ = 25
406
STATEMENTS = 26
407
408
class CONTENT_STATUS(object):
409
IN_PROGRESS = 0
410
COMPLETE = 1
411
412
class AUTH_TYPE(object):
413
BASIC = "basic"
414
DIGEST = "digest"
415
BEARER = "bearer"
416
NTLM = "ntlm"
417
PKI = "pki"
418
419
class AUTOCOMPLETE_TYPE(object):
420
SQL = 0
421
OS = 1
422
SQLMAP = 2
423
API = 3
424
425
class NOTE(object):
426
FALSE_POSITIVE_OR_UNEXPLOITABLE = "false positive or unexploitable"
427
428
class MKSTEMP_PREFIX(object):
429
HASHES = "sqlmaphashes-"
430
CRAWLER = "sqlmapcrawler-"
431
IPC = "sqlmapipc-"
432
CONFIG = "sqlmapconfig-"
433
TESTING = "sqlmaptesting-"
434
RESULTS = "sqlmapresults-"
435
COOKIE_JAR = "sqlmapcookiejar-"
436
BIG_ARRAY = "sqlmapbigarray-"
437
SPECIFIC_RESPONSE = "sqlmapresponse-"
438
PREPROCESS = "sqlmappreprocess-"
439
440
class TIMEOUT_STATE(object):
441
NORMAL = 0
442
EXCEPTION = 1
443
TIMEOUT = 2
444
445
class HINT(object):
446
PREPEND = 0
447
APPEND = 1
448
449
class FUZZ_UNION_COLUMN:
450
STRING = "<string>"
451
INTEGER = "<integer>"
452
NULL = "NULL"
453
454
class COLOR:
455
BLUE = "\033[34m"
456
BOLD_MAGENTA = "\033[35;1m"
457
BOLD_GREEN = "\033[32;1m"
458
BOLD_LIGHT_MAGENTA = "\033[95;1m"
459
LIGHT_GRAY = "\033[37m"
460
BOLD_RED = "\033[31;1m"
461
BOLD_LIGHT_GRAY = "\033[37;1m"
462
YELLOW = "\033[33m"
463
DARK_GRAY = "\033[90m"
464
BOLD_CYAN = "\033[36;1m"
465
LIGHT_RED = "\033[91m"
466
CYAN = "\033[36m"
467
MAGENTA = "\033[35m"
468
LIGHT_MAGENTA = "\033[95m"
469
LIGHT_GREEN = "\033[92m"
470
RESET = "\033[0m"
471
BOLD_DARK_GRAY = "\033[90;1m"
472
BOLD_LIGHT_YELLOW = "\033[93;1m"
473
BOLD_LIGHT_RED = "\033[91;1m"
474
BOLD_LIGHT_GREEN = "\033[92;1m"
475
LIGHT_YELLOW = "\033[93m"
476
BOLD_LIGHT_BLUE = "\033[94;1m"
477
BOLD_LIGHT_CYAN = "\033[96;1m"
478
LIGHT_BLUE = "\033[94m"
479
BOLD_WHITE = "\033[97;1m"
480
LIGHT_CYAN = "\033[96m"
481
BLACK = "\033[30m"
482
BOLD_YELLOW = "\033[33;1m"
483
BOLD_BLUE = "\033[34;1m"
484
GREEN = "\033[32m"
485
WHITE = "\033[97m"
486
BOLD_BLACK = "\033[30;1m"
487
RED = "\033[31m"
488
UNDERLINE = "\033[4m"
489
490
class BACKGROUND:
491
BLUE = "\033[44m"
492
LIGHT_GRAY = "\033[47m"
493
YELLOW = "\033[43m"
494
DARK_GRAY = "\033[100m"
495
LIGHT_RED = "\033[101m"
496
CYAN = "\033[46m"
497
MAGENTA = "\033[45m"
498
LIGHT_MAGENTA = "\033[105m"
499
LIGHT_GREEN = "\033[102m"
500
RESET = "\033[0m"
501
LIGHT_YELLOW = "\033[103m"
502
LIGHT_BLUE = "\033[104m"
503
LIGHT_CYAN = "\033[106m"
504
BLACK = "\033[40m"
505
GREEN = "\033[42m"
506
WHITE = "\033[107m"
507
RED = "\033[41m"
508
509