Tăng cường bảo mật AdminCP cho XenForo

Thảo luận trong 'Hacking - Security' bắt đầu bởi VXF, 9/5/12.

2votes
5/5, 2 votes

  1. VXF

    VXF Be like no other .. Staff Member

    Bài viết:
    1,277
    Likes :
    2,175
    Chào các bạn, hôm nay mình sẽ hướng dẫn các bạn về bảo mật trang admin.php của XenForo. Các bạn có thể chọn các phần theo nhu cầu bảo mật của mình sao cho tiện lợi nhất.

    Phần 1: Thay đổi địa chỉ trang quản lí admin (Mặc định trang quản lí của bạn là http://tenwebsiteban/admin.php).
    - Vào host đổi tên file admin.php thành tên bạn muốn (ví dụ: vietxfdotorg.php).
    - Mở file: library/XenForo/Link.php. Tìm đoạn code sau:
    Mã:
    public static function buildAdminLink($type, $data = null, array $extraParams = array())
    {
    $type = self::_checkForFullLink($type, $fullLink, $fullLinkPrefix);
     
    $link = self::_buildLink('admin', $type, $data, $extraParams);
    $queryString = self::buildQueryString($extraParams);
     
    if ($queryString !== '' && $link !== '')
    {
    $append = $link . '&' . $queryString;
    }
    else
    {
    // 1 or neither of these has content
    $append = $link . $queryString;
    }
     
    if (($hashPos = strpos($type, '#')) !== false)
    {
    $append .= substr($type, $hashPos);
    }
     
    $outputLink = 'admin.php' . ($append !== '' ? '?' : '') . $append;
    if ($fullLink)
    {
    $outputLink = $fullLinkPrefix . $outputLink;
    }
     
    return $outputLink;
    }
    - Thay admin.php bằng tên file mà bạn vừa đổi.
    Ví dụ:
    Mã:
    $outputLink = 'vietxfdotorg.php' . ($append !== '' ? '?' : '') . $append;
    - Mở template moderator_bar tìm đoạn code sau:
    Mã:
    <xen:if is="{$visitor.is_admin}">     
                    <a href="admin.php" class="acp adminLink"><span class="itemLabel">{xen:phrase admin_control_panel}</span></a>
             
                    <xen:if is="{$session.permissionTest}">
                        <a href="{xen:link misc/reset-permissions}" class="permissionTest adminLink OverlayTrigger">
                            <span class="itemLabel">{xen:phrase permissions_from_x, 'name={$session.permissionTest.username}'}</span>
                        </a>
                    </xen:if>
                </xen:if>
    - Thay admin.php bằng tên file mà bạn vừa đổi.
    Ví dụ:
    Mã:
     <a href="vietxfdotorg.php" class="acp adminLink"><span class="itemLabel">{xen:phrase admin_control_panel}</span></a>
    Phần 2: Tạo thêm 1 lần đăng nhập trước khi vào AdminCP.
    - Mở file admin.php (hoặc file mà bạn vừa đổi tên) thêm vào sau:
    PHP:
    <?php
    Đoạn code sau:
    PHP:
    //Dang nhap vao admincp
    $config['user_vietxforg'] = 'yourusername';
    $config['pass_vietxforg'] = 'yourpassword';
     
    if (
    $_SERVER['PHP_AUTH_USER'] != $config['user_vietxforg'] || $_SERVER['PHP_AUTH_PW'] != $config['pass_vietxforg']){
    header('WWW-Authenticate: Basic realm="Xin vui long khai bao thong tin yeu cau truoc khi duoc chuyen den bang dang nhap"');
    header('HTTP/1.0 401 Unauthorized');
     
    //Trang sẽ hiển thị khi thông tin khai báo sai. (support HTML).
    echo '<center>Access Denied!!!</center>';
    exit;
    }
    Phần 3: Tạo 1 file admin.php ảo để đánh lừa hacker.
    - Sau khi hoàn thành bước 1 file admin.php thật sẽ được thay đổi. Bạn có thể tạo ra 1 file admin.php ảo có nội dung như sau:
    PHP:
    <?php
    header
    ('WWW-Authenticate: Basic realm="Welcome to VietXF.ORG Admin CP"');
    header('Refresh: 3; url=http://vietxf.org');
    print 
    'Wrong data. You will be redirected in 3 seconds';
    ?>
    Phần 4: Bảo vệ file admin.php thật (file mà bạn đã đổi tên) bằng .htaccess. Mình sẽ nói qua về phần này, chi tiết hơn mời các bạn đọc bài viết sau: http://vietxf.org/threads/bao-ve-admincp-thu-muc-install-bang-htaccess.57/
    - Mở file .htaccess (ngang hàng với index.php) thêm vào đoạn code sau:
    Mã:
    <Files admin.php>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REMOTE_HOST} !^12.34.56.78
    RewriteCond %{REQUEST_URI} !/index.php$
    RewriteRule .* /index.php [R=302,L]
    </Files>
    Thay 12.34.56.78 bằng IP của bạn (Tác dụng của việc này là chỉ cho phép IP của bạn có thể truy cập vào AdminCP). Để biết được IP của bạn các bạn vào http://whoer.net
    ip_htaccess

    Done ! Tuts by Alucar (VietXF.ORG)
     
    Đang tải...
  2. Xavier

    Xavier Well-Known Member

    Bài viết:
    1,414
    Likes :
    522
    cho hỏi cái này.."yourusername" là mình tự điền vào à???
     
  3. Biney

    Biney New Member

    Bài viết:
    6
    Likes :
    0
    Mở template moderator_bar tìm đoạn code sau: cái này ở đâu ?
    để thêm nhiều IP thì làm thế nào :(
     
  4. Xavier

    Xavier Well-Known Member

    Bài viết:
    1,414
    Likes :
    522
    ở trong template chứ ở đâu...style->template
     
  5. nhok

    nhok New Member

    Bài viết:
    22
    Likes :
    0
    em muốn sửa file moderator_bar này trên host thì tìm trong thư mục nào ạ
     
  6. Logi

    Logi Well-Known Member

    Bài viết:
    1,087
    Likes :
    456
    Nó là template ko phải file đâu mà bạn sửa trên host :|
     
    gacon_hocit and nhok like this.
  7. nhok

    nhok New Member

    Bài viết:
    22
    Likes :
    0
    Bác chỉ em được sửa file đó được không.tình hình em không vào acp được nữa em ghi nhầm 1 kí tự khi sửa trong moderator_bar nên vào toàn báo lỗi và giăng ra ngoài không à :((:((
     
  8. Logi

    Logi Well-Known Member

    Bài viết:
    1,087
    Likes :
    456
    Cái modertator_bar thực ra ko quan trọng. Bạn có thể bỏ qua cũng đc.
     
  9. Coffee

    Coffee Member

    Bài viết:
    324
    Likes :
    81
    đến bao giờ mới có modcp :-s
     
  10. 8bee

    8bee New Member

    Bài viết:
    1
    Likes :
    0
    Mình muốn cho file admincp vào 1 thư mục riêng như vbb thì sao?
     
  11. Reishou

    Reishou Member

    Bài viết:
    519
    Likes :
    192
    Mình nghĩ cái đó không cần thiết. Vì cái đó trước dành cho SMOD. Bây giờ forum mình bất cứ SMOD nào cũng sẽ là Admin và chỉ can thiệp vào những phần mà mình cho phép trong admincp. Nhưng nick SMOD đó sẽ có cái second group là smod và mình chỉnh ưu tiên hiện màu là SMOD trước Admin nên nick đó vẫn hiện màu của SMOD.
     
  12. hoangsbk

    hoangsbk New Member

    Bài viết:
    66
    Likes :
    9
  13. Logi

    Logi Well-Known Member

    Bài viết:
    1,087
    Likes :
    456
    Tất nhiên là thật :) Nếu là ảo sẽ ko load đc style như thế đâu ;)
     
  14. antv

    antv Member

    Bài viết:
    429
    Likes :
    99
    modcp của vbb thừa thải quá nên xenforo tích hợp trên thanh công cụ rồi :) thực hành luôn.
     
  15. Đăng Quang Nguyễn

    Đăng Quang Nguyễn New Member

    Bài viết:
    26
    Likes :
    1
    An exception occurred: Undefined index: PHP_AUTH_USER in /home/thcsphuo/public_html/anonz.php on line 17
    1. XenForo_Application::handlePhpError() in /home/thcsphuo/public_html/anonz.php at line 17

    Bác admin giúp mình với. Mình đổi tên file admin.php thành anonz.php. Mình vào templates
     
  16. hieucocc

    hieucocc Active Member

    Bài viết:
    409
    Likes :
    223
    nói rõ lổi đi đại ka, em sửa cho nào ;))
     
  17. freecode

    freecode Member

    Bài viết:
    398
    Likes :
    143
    voi loi nay, 15 phut sau ban ay se tu sua dc =))
     
  18. sanvu88

    sanvu88 Well-Known Member

    Bài viết:
    1,048
    Likes :
    467
    ai nói với bạn thế ;)) giả vẫn có thể load như thật nhé :)) không khác gì mỗi cái là gõ pass và acc vào nó không ra cái gì cả ;))
     
  19. sanvu88

    sanvu88 Well-Known Member

    Bài viết:
    1,048
    Likes :
    467
    Hoàn toàn có thể tạo một trang login admincp fake giống thật tới 90% ;))
     
    antv thích bài này.
  20. Đăng Quang Nguyễn

    Đăng Quang Nguyễn New Member

    Bài viết:
    26
    Likes :
    1
    Em đổi tên file admin.php thành anonz.php rồi vào admincp bình thường
    nhưng khi bấm vào sửa template thì gặp lỗi này X_X
     
comments powered by Disqus

Chia sẻ trang này

Đang tải...