Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Tăng cường bảo mật Django Admin với trang đăng nhập giả (Honeypot)

Chúng ta sẽ tạo trang đăng nhập Django Admin giả (honeypot) bằng package bên thứ ba. Trang giả này sẽ chặn mọi cố gắng đăng nhập - dù đúng hay sai mật khẩu - và ghi lại địa chỉ IP của kẻ tấn công vào database.

Thiết lập cơ bản

Cấu hình urls và thêm app vào INSTALLED_APPS trong settings.py.

Ví dụ chi tiết

1. Cài đặt package

pip install django-admin-honeypot

2. Cấu hình settings.py

INSTALLED_APPS += ['admin_honeypot']

3. Cấu hình URLs dự án (urls.py)

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', include('admin_honeypot.urls', namespace='admin_honeypot')),
    path('secret/', admin.site.urls),
]

Thay thế URL admin thật bằng honeypot, chuyển admin thật sang endpoint /secret/.

4. Chạy migration

python manage.py makemigrations
python manage.py migrate

Lệnh này tạo bảng lưu trữ các lần thử đăng nhập với session ID.

Kết quả

Truy cập https://127.0.0.1/admin/ - bạn sẽ thấy trang đăng nhập giả. Dù nhập đúng hay sai, đều không đăng nhập được và mọi lần thử đều được ghi log.

Tăng cường bảo mật Django Admin với trang đăng nhập giả (Honeypot)

Truy cập https://127.0.0.1/secret/ để đăng nhập admin thật.

Tăng cường bảo mật Django Admin với trang đăng nhập giả (Honeypot)

Trong database, bạn sẽ có bảng ghi lại tất cả các lần tấn công với IP, username, password, timestamp.