Một thẻ đã tồn tại với tên chi nhánh được cung cấp. Nhiều lệnh Git chấp nhận cả tên thẻ và tên nhánh, vì vậy việc tạo nhánh này có thể gây ra hành vi không mong muốn. Bạn có chắc chắn muốn tạo nhánh này không?
session_start[];
include['secretpath.class.php'];if[ empty[$_SESSION['secpth']] ]{
header['location: example.php'];
exit;
}else{
$secpth = unserialize[$_SESSION['secpth']];
}
if[ $secpth->testAuth[] === true ]{
echo 'Authorized Access!';
}else{
echo 'Access Denied!';
}
?>
Trang này nhằm giúp những người định cấu hình PHP và máy chủ web mà nó đang chạy trở nên rất an toàn
Dưới đây, bạn sẽ tìm thấy thông tin về cài đặt thích hợp cho tệp php.ini
và hướng dẫn về cách định cấu hình máy chủ web Apache, Nginx và Caddy
Để biết bảo mật cơ sở mã PHP chung, vui lòng tham khảo hai hướng dẫn tuyệt vời sau đây
- Hướng dẫn bảo mật PHP 2018 của Paragonie
- Bảo mật PHP tuyệt vời
Cấu hình và triển khai PHP
php. ban đầu
Một số cài đặt sau cần được điều chỉnh cho phù hợp với hệ thống của bạn, cụ thể là session.save_path
, session.cookie_path
[e. g. /var/www/mysite
], và
doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
0 [e. g. doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
1]Bạn cũng nên chạy PHP 7. 2 hoặc muộn hơn. Nếu chạy PHP 7. 0 và 7. 1, bạn sẽ sử dụng các giá trị hơi khác nhau ở một số vị trí bên dưới [xem nhận xét nội tuyến]. Cuối cùng xem qua Hướng dẫn PHP để có tài liệu tham khảo đầy đủ về mọi giá trị trong php. tập tin cấu hình ini
Bạn có thể tìm thấy bản sao của các giá trị sau trong tệp php sẵn sàng hoạt động. tập tin ini ở đây
Xử lý lỗi PHP
expose_php = Off
error_reporting = E_ALL
display_errors = Off
display_startup_errors = Off
log_errors = On
error_log = /valid_path/PHP-logs/php_error.log
ignore_repeated_errors = Off
Hãy nhớ rằng bạn cần có
doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
2 đến doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
3 trên máy chủ sản xuất và bạn nên thường xuyên chú ý nhật kýCài đặt chung PHP
doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
4 ngăn LFI dễ dàng leo thang thành RFIXử lý tải lên tệp PHP
file_uploads = On
upload_tmp_dir = /path/PHP-uploads/
upload_max_filesize = 2M
max_file_uploads = 2
Nếu ứng dụng của bạn không sử dụng tính năng tải tệp lên và cho biết dữ liệu duy nhất mà người dùng sẽ nhập/tải lên là các biểu mẫu không yêu cầu bất kỳ tài liệu đính kèm nào, thì
doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
5 sẽ được chuyển thành doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
3Xử lý thực thi PHP
enable_dl = Off
disable_functions = system, exec, shell_exec, passthru, phpinfo, show_source, highlight_file, popen, proc_open, fopen_with_path, dbmopen, dbase_open, putenv, move_uploaded_file, chdir, mkdir, rmdir, chmod, rename, filepro, filepro_rowcount, filepro_retrieve, posix_mkfifo
# see also: //ir.php.net/features.safe-mode
disable_classes =
Đây là những hàm PHP nguy hiểm. Bạn nên vô hiệu hóa tất cả những gì bạn không sử dụng
Xử lý phiên PHP
Cài đặt phiên là một số giá trị quan trọng NHẤT cần tập trung vào khi định cấu hình. Đó là một thực hành tốt để thay đổi
doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
7 thành một cái gì đó mới session.save_path = /path/PHP-session/
session.name = myPHPSESSID
session.auto_start = Off
session.use_trans_sid = 0
session.cookie_domain = full.qualified.domain.name
#session.cookie_path = /application/path/
session.use_strict_mode = 1
session.use_cookies = 1
session.use_only_cookies = 1
session.cookie_lifetime = 14400 # 4 hours
session.cookie_secure = 1
session.cookie_httponly = 1
session.cookie_samesite = Strict
session.cache_expire = 30
session.sid_length = 256
session.sid_bits_per_character = 6 # PHP 7.2+
session.hash_function = 1 # PHP 7.0-7.1
session.hash_bits_per_character = 6 # PHP 7.0-7.1
Một số kiểm tra hoang tưởng bảo mật hơn
session.referer_check = /application/path
memory_limit = 50M
post_max_size = 20M
max_execution_time = 60
report_memleaks = On
track_errors = Off
html_errors = Off
Vớ vẩn
Suhosin là một bản vá cho PHP cung cấp một số tính năng tăng cường và bảo mật không có sẵn trong bản dựng PHP mặc định. Tuy nhiên, Suhosin chỉ hoạt động với PHP 5, không được hỗ trợ và không nên sử dụng
Đối với PHP 7, có Suhosin-ng, nhưng nó đang ở giai đoạn tiền phát hành và do đó không nên được sử dụng trong sản xuất
Snuffleupagus
Snuffleupagus là hậu duệ tinh thần của Suhosin cho PHP 7 trở đi, với các tính năng hiện đại. Nó được coi là ổn định và có thể sử dụng được trong sản xuất