同步操作将从 yeqingchen1/sqlmap 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#!/usr/bin/env python"""Copyright (c) 2006-2019 sqlmap developers (http://sqlmap.org/)See the file 'LICENSE' for copying permission"""from lib.core.common import Backendfrom lib.core.data import conffrom lib.core.data import kbfrom lib.core.dicts import DBMS_DICTfrom lib.core.enums import DBMSfrom lib.core.exception import SqlmapConnectionExceptionfrom lib.core.settings import MSSQL_ALIASESfrom lib.core.settings import MYSQL_ALIASESfrom lib.core.settings import ORACLE_ALIASESfrom lib.core.settings import PGSQL_ALIASESfrom lib.core.settings import SQLITE_ALIASESfrom lib.core.settings import ACCESS_ALIASESfrom lib.core.settings import FIREBIRD_ALIASESfrom lib.core.settings import MAXDB_ALIASESfrom lib.core.settings import SYBASE_ALIASESfrom lib.core.settings import DB2_ALIASESfrom lib.core.settings import HSQLDB_ALIASESfrom lib.core.settings import H2_ALIASESfrom lib.core.settings import INFORMIX_ALIASESfrom lib.utils.sqlalchemy import SQLAlchemyfrom plugins.dbms.mssqlserver import MSSQLServerMapfrom plugins.dbms.mssqlserver.connector import Connector as MSSQLServerConnfrom plugins.dbms.mysql import MySQLMapfrom plugins.dbms.mysql.connector import Connector as MySQLConnfrom plugins.dbms.oracle import OracleMapfrom plugins.dbms.oracle.connector import Connector as OracleConnfrom plugins.dbms.postgresql import PostgreSQLMapfrom plugins.dbms.postgresql.connector import Connector as PostgreSQLConnfrom plugins.dbms.sqlite import SQLiteMapfrom plugins.dbms.sqlite.connector import Connector as SQLiteConnfrom plugins.dbms.access import AccessMapfrom plugins.dbms.access.connector import Connector as AccessConnfrom plugins.dbms.firebird import FirebirdMapfrom plugins.dbms.firebird.connector import Connector as FirebirdConnfrom plugins.dbms.maxdb import MaxDBMapfrom plugins.dbms.maxdb.connector import Connector as MaxDBConnfrom plugins.dbms.sybase import SybaseMapfrom plugins.dbms.sybase.connector import Connector as SybaseConnfrom plugins.dbms.db2 import DB2Mapfrom plugins.dbms.db2.connector import Connector as DB2Connfrom plugins.dbms.hsqldb import HSQLDBMapfrom plugins.dbms.hsqldb.connector import Connector as HSQLDBConnfrom plugins.dbms.h2 import H2Mapfrom plugins.dbms.h2.connector import Connector as H2Connfrom plugins.dbms.informix import InformixMapfrom plugins.dbms.informix.connector import Connector as InformixConndef setHandler():"""Detect which is the target web application back-end databasemanagement system."""items = [(DBMS.MYSQL, MYSQL_ALIASES, MySQLMap, MySQLConn),(DBMS.ORACLE, ORACLE_ALIASES, OracleMap, OracleConn),(DBMS.PGSQL, PGSQL_ALIASES, PostgreSQLMap, PostgreSQLConn),(DBMS.MSSQL, MSSQL_ALIASES, MSSQLServerMap, MSSQLServerConn),(DBMS.SQLITE, SQLITE_ALIASES, SQLiteMap, SQLiteConn),(DBMS.ACCESS, ACCESS_ALIASES, AccessMap, AccessConn),(DBMS.FIREBIRD, FIREBIRD_ALIASES, FirebirdMap, FirebirdConn),(DBMS.MAXDB, MAXDB_ALIASES, MaxDBMap, MaxDBConn),(DBMS.SYBASE, SYBASE_ALIASES, SybaseMap, SybaseConn),(DBMS.DB2, DB2_ALIASES, DB2Map, DB2Conn),(DBMS.HSQLDB, HSQLDB_ALIASES, HSQLDBMap, HSQLDBConn),(DBMS.H2, H2_ALIASES, H2Map, H2Conn),(DBMS.INFORMIX, INFORMIX_ALIASES, InformixMap, InformixConn),]_ = max(_ if (conf.get("dbms") or Backend.getIdentifiedDbms() or kb.heuristicExtendedDbms or "").lower() in _[1] else () for _ in items)if _:items.remove(_)items.insert(0, _)for dbms, aliases, Handler, Connector in items:if conf.forceDbms:if conf.forceDbms.lower() not in aliases:continueelse:kb.dbms = conf.dbms = conf.forceDbms = dbmsif kb.dbmsFilter:if dbms not in kb.dbmsFilter:continuehandler = Handler()conf.dbmsConnector = Connector()if conf.direct:exception = Nonedialect = DBMS_DICT[dbms][3]if dialect:try:sqlalchemy = SQLAlchemy(dialect=dialect)sqlalchemy.connect()if sqlalchemy.connector:conf.dbmsConnector = sqlalchemyexcept Exception as ex:exception = exif not dialect or exception:try:conf.dbmsConnector.connect()except Exception as ex:if exception:raise exceptionelse:if not isinstance(ex, NameError):raiseelse:msg = "support for direct connection to '%s' is not available. " % dbmsmsg += "Please rerun with '--dependencies'"raise SqlmapConnectionException(msg)if conf.forceDbms == dbms or handler.checkDbms():if kb.resolutionDbms:conf.dbmsHandler = max(_ for _ in items if _[0] == kb.resolutionDbms)[2]()conf.dbmsHandler._dbms = kb.resolutionDbmselse:conf.dbmsHandler = handlerconf.dbmsHandler._dbms = dbmsbreakelse:conf.dbmsConnector = None# At this point back-end DBMS is correctly fingerprinted, no need# to enforce it anymoreBackend.flushForcedDbms()
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。