index.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. session_start();
  3. define('NO_AUTH_REQUIRED', true);
  4. $TAB = 'RESET PASSWORD';
  5. if (isset($_SESSION['user'])) {
  6. header("Location: /list/user");
  7. }
  8. // Main include
  9. include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
  10. //Check values
  11. if (!empty($_POST['user']) && !empty($_POST['twofa'])) {
  12. if ($_POST['token'] != $_SESSION['token']) {
  13. header('Location: /');
  14. }
  15. $error = true;
  16. $v_user = escapeshellarg($_POST['user']);
  17. $user = $_POST['user'];
  18. $twofa = $_POST['twofa'];
  19. exec(HESTIA_CMD . "v-list-user ".$v_user .' json', $output, $return_var);
  20. if ($return_var == 0) {
  21. $data = json_decode(implode('', $output), true);
  22. if ($data[$user]['TWOFA'] == $twofa) {
  23. $success = true;
  24. exec(HESTIA_CMD . "v-delete-user-2fa ".$v_user, $output, $return_var);
  25. session_destroy();
  26. } else {
  27. exec(HESTIA_CMD . 'v-log-user-login ' . $v_user . ' ' . $v_ip . ' failed ' . $v_session_id . ' ' . $v_user_agent .' yes "Failed to enter correct 2FA reset key"', $output, $return_var);
  28. sleep(5);
  29. }
  30. } else {
  31. exec(HESTIA_CMD . 'v-log-user-login ' . $v_user . ' ' . $v_ip . ' failed ' . $v_session_id . ' ' . $v_user_agent .' yes "Failed to enter correct 2FA reset key"', $output, $return_var);
  32. sleep(5);
  33. }
  34. }
  35. require_once '../templates/header.html';
  36. require_once '../templates/pages/login/reset2fa.html';