mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-11 15:56:11 +01:00
phpmyadmin: login admin users as root
This commit is contained in:
@@ -163,14 +163,32 @@ def generateAccess(request):
|
|||||||
admin = Administrator.objects.get(id = userID)
|
admin = Administrator.objects.get(id = userID)
|
||||||
currentACL = ACLManager.loadedACL(userID)
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
|
|
||||||
keySavePath = '/home/cyberpanel/phpmyadmin_%s' % (admin.userName)
|
## if user ACL is admin login as root
|
||||||
|
|
||||||
|
command = 'chmod 640 /usr/local/lscp/cyberpanel/logs/access.log'
|
||||||
|
ProcessUtilities.executioner(command)
|
||||||
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
|
||||||
try:
|
try:
|
||||||
GlobalUserDB.objects.get(username=admin.userName).delete()
|
GlobalUserDB.objects.get(username=admin.userName).delete()
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
command = 'chmod 640 /usr/local/lscp/cyberpanel/logs/access.log'
|
password = randomPassword.generate_pass()
|
||||||
ProcessUtilities.executioner(command)
|
token = randomPassword.generate_pass()
|
||||||
|
GlobalUserDB(username=admin.userName, password=password,token=token).save()
|
||||||
|
|
||||||
|
data_ret = {'status': 1, 'token': token, 'username': admin.userName}
|
||||||
|
json_data = json.dumps(data_ret)
|
||||||
|
return HttpResponse(json_data)
|
||||||
|
|
||||||
|
|
||||||
|
keySavePath = '/home/cyberpanel/phpmyadmin_%s' % (admin.userName)
|
||||||
|
try:
|
||||||
|
GlobalUserDB.objects.get(username=admin.userName).delete()
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
command = 'rm -f %s' % (keySavePath)
|
command = 'rm -f %s' % (keySavePath)
|
||||||
ProcessUtilities.executioner(command)
|
ProcessUtilities.executioner(command)
|
||||||
@@ -235,6 +253,31 @@ def fetchDetailsPHPMYAdmin(request):
|
|||||||
gdb = GlobalUserDB.objects.get(username=admin.userName)
|
gdb = GlobalUserDB.objects.get(username=admin.userName)
|
||||||
|
|
||||||
if gdb.token == token:
|
if gdb.token == token:
|
||||||
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
passFile = "/etc/cyberpanel/mysqlPassword"
|
||||||
|
|
||||||
|
try:
|
||||||
|
jsonData = json.loads(open(passFile, 'r').read())
|
||||||
|
|
||||||
|
mysqluser = jsonData['mysqluser']
|
||||||
|
password = jsonData['mysqlpassword']
|
||||||
|
|
||||||
|
returnURL = '/phpmyadmin/phpmyadminsignin.php?username=%s&password=%s' % (
|
||||||
|
mysqluser, password)
|
||||||
|
return redirect(returnURL)
|
||||||
|
|
||||||
|
except BaseException:
|
||||||
|
|
||||||
|
f = open(passFile)
|
||||||
|
data = f.read()
|
||||||
|
password = data.split('\n', 1)[0]
|
||||||
|
password = password.strip('\n').strip('\r')
|
||||||
|
|
||||||
|
returnURL = '/phpmyadmin/phpmyadminsignin.php?username=%s&password=%s' % (
|
||||||
|
'root', password)
|
||||||
|
return redirect(returnURL)
|
||||||
|
|
||||||
keySavePath = '/home/cyberpanel/phpmyadmin_%s' % (admin.userName)
|
keySavePath = '/home/cyberpanel/phpmyadmin_%s' % (admin.userName)
|
||||||
key = ProcessUtilities.outputExecutioner('cat %s' % (keySavePath)).strip('\n').encode()
|
key = ProcessUtilities.outputExecutioner('cat %s' % (keySavePath)).strip('\n').encode()
|
||||||
f = Fernet(key)
|
f = Fernet(key)
|
||||||
|
|||||||
Reference in New Issue
Block a user