index.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. use function Hestiacp\quoteshellarg\quoteshellarg;
  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. // Check token
  13. verify_csrf($_POST);
  14. $error = true;
  15. $v_user = quoteshellarg($_POST['user']);
  16. $user = $_POST['user'];
  17. $twofa = $_POST['twofa'];
  18. exec(HESTIA_CMD . "v-list-user ".$v_user .' json', $output, $return_var);
  19. if ($return_var == 0) {
  20. $data = json_decode(implode('', $output), true);
  21. if ($data[$user]['TWOFA'] == $twofa) {
  22. $success = true;
  23. exec(HESTIA_CMD . "v-delete-user-2fa ".$v_user, $output, $return_var);
  24. session_destroy();
  25. } else {
  26. 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);
  27. sleep(5);
  28. }
  29. } else {
  30. 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);
  31. sleep(5);
  32. }
  33. }
  34. require_once '../templates/header.html';
  35. require_once '../templates/pages/login/reset2fa.html';