Nếu cấu hình của server : register_gobals = On thì có thể sẽ dẫn đến 1 lỗi bảo mật sau,
Giả sử file index.php có nội dung như sau:
<?php
if($root){
print "Value: $root";
}
?>
nếu ta gọi: index.php thì không có gì xảy ra, nhưng khi gọi index.php?root=2 thì kết quả in ra sẽ là : Value: 2 điều này có nghĩa là biến root có thể thay đổi từ url-> sẽ nguy hiểm cho lỗi bảo mật
Ví dụ:
<?php
if($permission){
//thực hiện quyền admin
}
?>
như vậy bất kỳ ai cũng có thể truy cập vào quyền admin nếu sử dụng cách đã nó ở trên.
Cách khác phục của trường hợp này: 2 cách,
1. cấu hình server register_globals = OFF
2. định nghĩa biến $root trước
<?php
$root = 0;
if($root){
print "Value: $root";
}
?>
Kiến thức này không mới nhưng TG mới biết nên ghi lại anh em nào biết gì thêm chỉ anh em tham khảo nha :)
Tác giả:TG
