Ở đây chúng ta tiến hành chặn một số file quan trọng trên WordPress.
# --- CHAN FILE NHAY CAM (SECURITY BLOCK) ---
@forbidden {
# 1. Block PHP Uploads
path /wp-content/uploads/*.php
# 2. Block System Files & Directories
path /wp-config.php
path /.htaccess
path /.git
path /.git/*
path *.env
path /readme.html
path /license.txt
# 3. Trừ khi bạn dùng plugin Jetpack hoặc đăng nhập WordPress trên điện thoại, còn không thì nên chặn
path /xmlrpc.php
# 4. Block Backups & Logs
path *.sql *.bak *.log *.old
path *.zip *.rar *.tar *.7z
}
# Tra ve 404
respond @forbidden 404
–
path /wp-content/uploads/*.php
Nghĩa là chặn việc thực thi PHP trong thư mục uploads (dùng để chứa ảnh).
–
path /wp-config.php
Nghĩa là chặn file wp-config.php, nơi chứa thông tin user, pass của database.
–
path /.htaccess
Chặn file .htaccess. Bản thân Caddy Web Server không tạo file .htaccess, nhưng nếu bạn chuyển từ webserver khác sang thì nó có thể có file này, và file chứa thông tin quan trọng và nên chặn lại.
–
path /.git
path /.git/*
path *.env
Một số môi trường WordPress chứa các file, thư mục này (có thể) bao gồm các mật khẩu quan trọng, do vậy nó cũng được chặn lại.
–
path /readme.html
path /license.txt
Chứa các thông tin liên quan đến phiên bản WordPress đang dùng, có thể bị lợi dụng để bên tấn công nắm rõ lỗ hổng hơn (nếu phiên bản WordPress đó có).
–
path /xmlrpc.php
Chủ yếu được dùng bởi plugin Jetpack, và khi đăng nhập qua điện thoại, nhưng bị khai thác tấn công nhiều, nên nếu không rơi vào 2 trường hợp trên thì cũng nên chặn file này lại.
–
path *.sql *.bak *.log *.old
path *.zip *.rar *.tar *.7z
Đây thường là file rác do chủ web đã sử dụng xong (ví dụ file backup, khôi phục dữ liệu website) nhưng nếu các đối tượng tấn công khai thác được thì chúng sẽ có rất nhiều thông tin, do vậy tốt nhất nên chặn lại.
Riêng dòng dưới:
path *.zip *.rar *.tar *.7z
Nó chặn cả các định dạng nén phổ biến, điều này thường cũng tốt xét về khía cạnh an toàn, tuy nhiên nếu trang web của bạn chia sẻ phần mềm hoặc bất kể tài liệu gì được nén lại thành một trong các định dạng trên thì nên bỏ nó (định dạng cụ thể đó) ra khỏi danh sách.
–
respond @forbidden 404
Trả về kết quả 404 – nghĩa là không tồn tại. Đây được cho là cách hay hơn so với trả về 403 – bị cấm (dù điều này phản ánh đúng thực tế hơn). Vì bị cấm thì bên tấn công biết nó có tồn tại, chỉ là họ không được phép.