Tắt Xác thực hai bước (hay đăng nhập hai bước)

Thành viên mới
Hôm trước em đọc và làm theo các bước như hướng dẫn ở chỗ này :https://nukeviet.vn/vi/news/nhom-phat-trien/nhieu-cong-cu-bao-mat-hon-voi-nukeviet-4-1-441.html
Nhưng mà giờ e làm mất mã dự phòng với mua điện thoại mới không cài ứng dụng Google Authenticator nên giờ không vào đc Admin để thay đổi thiết lập đăng nhập 2 bước, anh chị em ai biết cách khắc phục chỉ e với ah, e cảm ơn nhiều
 
Thành viên mới
Có anh chị em nào biết hd e với ah
 
--= Roll With The Wind =--
Quản trị viên
Có anh chị em nào biết hd e với ah
Sẽ động vào code một chút.
Bạn muốn thử không thì mình sẽ hỗ trợ.
 
--= Roll With The Wind =--
Quản trị viên
Cơ bản là can thiệp vào module users.
Tìm file:
\modules\users\funcs\login.php

Mình thử trên bản 4.3.01, tương ứng sẽ có đoạn code sau, khoảng dòng code 700 - 710:
PHP:
        if (!empty($row)) {
            if ((($row['md5username'] == nv_md5safe($nv_username) and $login_email == false) or ($row['email'] == $nv_username and $login_email == true)) and $crypt->validate_password($nv_password, $row['password'])) {
                if (!$row['active']) {
                    $error1 = $lang_module['login_no_active'];
                } else {
                    if (!empty($row['active2step'])) {
Hãy tìm thật chính xác và thêm bên trên đoạn code ấy dòng này:
PHP:
        $row['active2step'] = '';
Khi đó ta sẽ có :
PHP:
        $row = $db->query($sql)->fetch();
        $row['active2step'] = '';
        if (!empty($row)) {
            if ((($row['md5username'] == nv_md5safe($nv_username) and $login_email == false) or ($row['email'] == $nv_username and $login_email == true)) and $crypt->validate_password($nv_password, $row['password'])) {
                if (!$row['active']) {
                    $error1 = $lang_module['login_no_active'];
                } else {
                    if (!empty($row['active2step'])) {
Chức năng xác thực hai bước sẽ tạm thời bị vô hiệu. Chỉ áp dụng với đăng nhập bằng username/pass thôi nhé.
Sau khi đăng nhập thành công, nhớ xoá bỏ dòng code vừa rồi, tránh để bị mất khả năng bảo mật.
 
--= Roll With The Wind =--
Quản trị viên
Đối với cấu hình đăng nhập trang Admin, cần đụng vào Core.
\includes\core\admin_login.php
Tìm đến dòng khoảng 170:

PHP:
            if ($_2step_require) {
                $url_setup2step = NV_BASE_SITEURL . 'index.php?' . NV_LANG_VARIABLE . '=' . NV_LANG_DATA . '&' . NV_NAME_VARIABLE . '=two-step-verification&' . NV_OP_VARIABLE . '=setup&nv_redirect=' . nv_redirect_encrypt(NV_BASE_ADMINURL);
                $error = '<a href="' . $url_setup2step . '">' . $lang_global['2teplogin_require'] . '</a>';
                validUserLog($row);
Thêm lên ngay bên trên dòng if đó đoạn code tương tự:
PHP:
            $row['active2step'] = '';
Khi đó, bạn đã có thể đăng nhập trang Admin với username và password.
Và,
Sau khi đăng nhập thành công, nhớ xoá bỏ dòng code vừa rồi, tránh để bị mất khả năng bảo mật.
Chúc may mắn !
 
Thành viên mới
em làm theo hướng dẫn của bác rồi nhưng khi xoá dòng code thì lại hiển thị đăng nhập hai bước
 
--= Roll With The Wind =--
Quản trị viên
em làm theo hướng dẫn của bác rồi nhưng khi xoá dòng code thì lại hiển thị đăng nhập hai bước
Ủa thì mình hướng dẫn để bạn đăng nhập được thôi. Vào trong trang quản trị hoặc trang cấu hình thành viên tắt đi mới được chứ.
 
Thích: hoanglongvnpt