mirror of
				https://github.com/sqlmapproject/sqlmap.git
				synced 2025-10-31 07:57:47 +03:00 
			
		
		
		
	Minor cleaning
This commit is contained in:
		
							parent
							
								
									7dbbf3ecf5
								
							
						
					
					
						commit
						34281af3f6
					
				|  | @ -19,7 +19,7 @@ from lib.core.enums import DBMS_DIRECTORY_NAME | ||||||
| from lib.core.enums import OS | from lib.core.enums import OS | ||||||
| 
 | 
 | ||||||
| # sqlmap version (<major>.<minor>.<month>.<monthly commit>) | # sqlmap version (<major>.<minor>.<month>.<monthly commit>) | ||||||
| VERSION = "1.1.6.9" | VERSION = "1.1.6.10" | ||||||
| TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable" | TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable" | ||||||
| TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34} | TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34} | ||||||
| VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE) | VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE) | ||||||
|  |  | ||||||
|  | @ -232,34 +232,26 @@ class StdDbOut(object): | ||||||
|                     # Ignore all non-relevant messages |                     # Ignore all non-relevant messages | ||||||
|                     return |                     return | ||||||
| 
 | 
 | ||||||
|             output = conf.databaseCursor.execute( |             output = conf.databaseCursor.execute("SELECT id, status, value FROM data WHERE taskid = ? AND content_type = ?", (self.taskid, content_type)) | ||||||
|                 "SELECT id, status, value FROM data WHERE taskid = ? AND content_type = ?", |  | ||||||
|                 (self.taskid, content_type)) |  | ||||||
| 
 | 
 | ||||||
|             # Delete partial output from IPC database if we have got a complete output |             # Delete partial output from IPC database if we have got a complete output | ||||||
|             if status == CONTENT_STATUS.COMPLETE: |             if status == CONTENT_STATUS.COMPLETE: | ||||||
|                 if len(output) > 0: |                 if len(output) > 0: | ||||||
|                     for index in xrange(len(output)): |                     for index in xrange(len(output)): | ||||||
|                         conf.databaseCursor.execute("DELETE FROM data WHERE id = ?", |                         conf.databaseCursor.execute("DELETE FROM data WHERE id = ?", (output[index][0],)) | ||||||
|                                                      (output[index][0],)) |  | ||||||
| 
 | 
 | ||||||
|                 conf.databaseCursor.execute("INSERT INTO data VALUES(NULL, ?, ?, ?, ?)", |                 conf.databaseCursor.execute("INSERT INTO data VALUES(NULL, ?, ?, ?, ?)", (self.taskid, status, content_type, jsonize(value))) | ||||||
|                                              (self.taskid, status, content_type, jsonize(value))) |  | ||||||
|                 if kb.partRun: |                 if kb.partRun: | ||||||
|                     kb.partRun = None |                     kb.partRun = None | ||||||
| 
 | 
 | ||||||
|             elif status == CONTENT_STATUS.IN_PROGRESS: |             elif status == CONTENT_STATUS.IN_PROGRESS: | ||||||
|                 if len(output) == 0: |                 if len(output) == 0: | ||||||
|                     conf.databaseCursor.execute("INSERT INTO data VALUES(NULL, ?, ?, ?, ?)", |                     conf.databaseCursor.execute("INSERT INTO data VALUES(NULL, ?, ?, ?, ?)", (self.taskid, status, content_type, jsonize(value))) | ||||||
|                                                  (self.taskid, status, content_type, |  | ||||||
|                                                   jsonize(value))) |  | ||||||
|                 else: |                 else: | ||||||
|                     new_value = "%s%s" % (dejsonize(output[0][2]), value) |                     new_value = "%s%s" % (dejsonize(output[0][2]), value) | ||||||
|                     conf.databaseCursor.execute("UPDATE data SET value = ? WHERE id = ?", |                     conf.databaseCursor.execute("UPDATE data SET value = ? WHERE id = ?", (jsonize(new_value), output[0][0])) | ||||||
|                                                  (jsonize(new_value), output[0][0])) |  | ||||||
|         else: |         else: | ||||||
|             conf.databaseCursor.execute("INSERT INTO errors VALUES(NULL, ?, ?)", |             conf.databaseCursor.execute("INSERT INTO errors VALUES(NULL, ?, ?)", (self.taskid, str(value) if value else "")) | ||||||
|                                          (self.taskid, str(value) if value else "")) |  | ||||||
| 
 | 
 | ||||||
|     def flush(self): |     def flush(self): | ||||||
|         pass |         pass | ||||||
|  | @ -270,17 +262,13 @@ class StdDbOut(object): | ||||||
|     def seek(self): |     def seek(self): | ||||||
|         pass |         pass | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
| class LogRecorder(logging.StreamHandler): | class LogRecorder(logging.StreamHandler): | ||||||
|     def emit(self, record): |     def emit(self, record): | ||||||
|         """ |         """ | ||||||
|         Record emitted events to IPC database for asynchronous I/O |         Record emitted events to IPC database for asynchronous I/O | ||||||
|         communication with the parent process |         communication with the parent process | ||||||
|         """ |         """ | ||||||
|         conf.databaseCursor.execute("INSERT INTO logs VALUES(NULL, ?, ?, ?, ?)", |         conf.databaseCursor.execute("INSERT INTO logs VALUES(NULL, ?, ?, ?, ?)", (conf.taskid, time.strftime("%X"), record.levelname, record.msg % record.args if record.args else record.msg)) | ||||||
|                                      (conf.taskid, time.strftime("%X"), record.levelname, |  | ||||||
|                                       record.msg % record.args if record.args else record.msg)) |  | ||||||
| 
 |  | ||||||
| 
 | 
 | ||||||
| def setRestAPILog(): | def setRestAPILog(): | ||||||
|     if conf.api: |     if conf.api: | ||||||
|  | @ -555,16 +543,11 @@ def scan_data(taskid): | ||||||
|         return jsonize({"success": False, "message": "Invalid task ID"}) |         return jsonize({"success": False, "message": "Invalid task ID"}) | ||||||
| 
 | 
 | ||||||
|     # Read all data from the IPC database for the taskid |     # Read all data from the IPC database for the taskid | ||||||
|     for status, content_type, value in DataStore.current_db.execute( |     for status, content_type, value in DataStore.current_db.execute("SELECT status, content_type, value FROM data WHERE taskid = ? ORDER BY id ASC", (taskid,)): | ||||||
|             "SELECT status, content_type, value FROM data WHERE taskid = ? ORDER BY id ASC", |         json_data_message.append({"status": status, "type": content_type, "value": dejsonize(value)}) | ||||||
|             (taskid,)): |  | ||||||
|         json_data_message.append( |  | ||||||
|             {"status": status, "type": content_type, "value": dejsonize(value)}) |  | ||||||
| 
 | 
 | ||||||
|     # Read all error messages from the IPC database |     # Read all error messages from the IPC database | ||||||
|     for error in DataStore.current_db.execute( |     for error in DataStore.current_db.execute("SELECT error FROM errors WHERE taskid = ? ORDER BY id ASC", (taskid,)): | ||||||
|             "SELECT error FROM errors WHERE taskid = ? ORDER BY id ASC", |  | ||||||
|             (taskid,)): |  | ||||||
|         json_errors_message.append(error) |         json_errors_message.append(error) | ||||||
| 
 | 
 | ||||||
|     logger.debug("[%s] Retrieved scan data and error messages" % taskid) |     logger.debug("[%s] Retrieved scan data and error messages" % taskid) | ||||||
|  | @ -591,10 +574,7 @@ def scan_log_limited(taskid, start, end): | ||||||
|     end = max(1, int(end)) |     end = max(1, int(end)) | ||||||
| 
 | 
 | ||||||
|     # Read a subset of log messages from the IPC database |     # Read a subset of log messages from the IPC database | ||||||
|     for time_, level, message in DataStore.current_db.execute( |     for time_, level, message in DataStore.current_db.execute("SELECT time, level, message FROM logs WHERE taskid = ? AND id >= ? AND id <= ? ORDER BY id ASC", (taskid, start, end)): | ||||||
|             ("SELECT time, level, message FROM logs WHERE " |  | ||||||
|              "taskid = ? AND id >= ? AND id <= ? ORDER BY id ASC"), |  | ||||||
|             (taskid, start, end)): |  | ||||||
|         json_log_messages.append({"time": time_, "level": level, "message": message}) |         json_log_messages.append({"time": time_, "level": level, "message": message}) | ||||||
| 
 | 
 | ||||||
|     logger.debug("[%s] Retrieved scan log messages subset" % taskid) |     logger.debug("[%s] Retrieved scan log messages subset" % taskid) | ||||||
|  | @ -613,8 +593,7 @@ def scan_log(taskid): | ||||||
|         return jsonize({"success": False, "message": "Invalid task ID"}) |         return jsonize({"success": False, "message": "Invalid task ID"}) | ||||||
| 
 | 
 | ||||||
|     # Read all log messages from the IPC database |     # Read all log messages from the IPC database | ||||||
|     for time_, level, message in DataStore.current_db.execute( |     for time_, level, message in DataStore.current_db.execute("SELECT time, level, message FROM logs WHERE taskid = ? ORDER BY id ASC", (taskid,)): | ||||||
|             "SELECT time, level, message FROM logs WHERE taskid = ? ORDER BY id ASC", (taskid,)): |  | ||||||
|         json_log_messages.append({"time": time_, "level": level, "message": message}) |         json_log_messages.append({"time": time_, "level": level, "message": message}) | ||||||
| 
 | 
 | ||||||
|     logger.debug("[%s] Retrieved scan log messages" % taskid) |     logger.debug("[%s] Retrieved scan log messages" % taskid) | ||||||
|  |  | ||||||
|  | @ -46,7 +46,7 @@ f1531be15ed98555a9010e2db3c9da75  lib/core/optiondict.py | ||||||
| d8e9250f3775119df07e9070eddccd16  lib/core/replication.py | d8e9250f3775119df07e9070eddccd16  lib/core/replication.py | ||||||
| 785f86e3f963fa3798f84286a4e83ff2  lib/core/revision.py | 785f86e3f963fa3798f84286a4e83ff2  lib/core/revision.py | ||||||
| 40c80b28b3a5819b737a5a17d4565ae9  lib/core/session.py | 40c80b28b3a5819b737a5a17d4565ae9  lib/core/session.py | ||||||
| cbbdac42ff202cffc475492e6652fce5  lib/core/settings.py | 58c602f0b15b945250f7dadbe3702c98  lib/core/settings.py | ||||||
| d91291997d2bd2f6028aaf371bf1d3b6  lib/core/shell.py | d91291997d2bd2f6028aaf371bf1d3b6  lib/core/shell.py | ||||||
| 2ad85c130cc5f2b3701ea85c2f6bbf20  lib/core/subprocessng.py | 2ad85c130cc5f2b3701ea85c2f6bbf20  lib/core/subprocessng.py | ||||||
| 04cca8a05faef752c98d1a775d98a0e6  lib/core/target.py | 04cca8a05faef752c98d1a775d98a0e6  lib/core/target.py | ||||||
|  | @ -98,7 +98,7 @@ d3da4c7ceaf57c4687a052d58722f6bb  lib/techniques/dns/use.py | ||||||
| 310efc965c862cfbd7b0da5150a5ad36  lib/techniques/union/__init__.py | 310efc965c862cfbd7b0da5150a5ad36  lib/techniques/union/__init__.py | ||||||
| d71e48e6fd08f75cc612bf8b260994ce  lib/techniques/union/test.py | d71e48e6fd08f75cc612bf8b260994ce  lib/techniques/union/test.py | ||||||
| db3090ff9a740ba096ba676fcf44ebfc  lib/techniques/union/use.py | db3090ff9a740ba096ba676fcf44ebfc  lib/techniques/union/use.py | ||||||
| 67f0ad96ec2207d7e59c788b858afd6d  lib/utils/api.py | 1f4c7000cc2a4e75a53c5f39c1a5f8b5  lib/utils/api.py | ||||||
| 7d10ba0851da8ee9cd3c140dcd18798e  lib/utils/brute.py | 7d10ba0851da8ee9cd3c140dcd18798e  lib/utils/brute.py | ||||||
| ed70f1ca9113664043ec9e6778e48078  lib/utils/crawler.py | ed70f1ca9113664043ec9e6778e48078  lib/utils/crawler.py | ||||||
| ba12c69a90061aa14d848b8396e79191  lib/utils/deps.py | ba12c69a90061aa14d848b8396e79191  lib/utils/deps.py | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user