Giới thiệu kỹ thuật tấn công LFI Apache Log Poisoning
Hôm nay mình xin giới thiệu kỹ thuật Upload trực tiếp shellweb lên web server Log Poisoning, qua bài viết này các bạn có thể hình dung được mức độ nguy hiểm của lỗi trên và có phương pháp lập trình an toàn.
I) File Inclusion
Trong lập trình PHP có các lệnh là include, require, include_once, require_once cho phép việc file hiện tại gọi ra một file khác.
Dựa vào các lỗi include file chúng ta có thể khai thác lỗi Log poisoning để upload được một shellweb lên server.
II) Khai thác
Bước 1: Tìm mục tiêu
Trong bước này cần tìm những site có URL giống như:
Cần chú ý vào các biến giống như page vì page được gán bằng 1 file có trên server
Thử kiểm tra bằng cách:
Gán page bằng dấu ‘ ' ’ kết quả server đã không thể hiểu được ‘ ' ’ và hiện ra cảnh báo cho người dùng. Warning có thể có hoặc không hiện lên cho người dùng.
Thử 1 vài đường dẫn của các file mặc định trên server trong phần khai thác này chúng ta sẽ thử với file access.log có trên Apache log
Bước 2: Khai thác.
Mục tiêu trong bước này inject vào trong file log của web server 1 form upload bằng PHP:
Form upload:
Chú ý phần này khi các bạn sử dụng các trình duyệt như Firefox, chrom… thì các trình duyệt này đều có những cơ chế để mã hóa những ký tự đặc biệt có trong URL. Chính vì vậy chúng ta sẽ sử dụng CURL để có thể bypass qua các cơ chế lọc của trình duyệt.
Bước 3: Upload shell lên server.
Chúng ta sẽ cần truy cập lại vào file access.log
Bây giờ các bạn có thể upload bất kỳ mã độc nguy hiểm nào lên server.
Phương thức khai thác này rất nguy hiểm các bạn nên report cho quản trị biết khi phát hiện ra lỗi.
I) File Inclusion
Trong lập trình PHP có các lệnh là include, require, include_once, require_once cho phép việc file hiện tại gọi ra một file khác.
Dựa vào các lỗi include file chúng ta có thể khai thác lỗi Log poisoning để upload được một shellweb lên server.
II) Khai thác
Bước 1: Tìm mục tiêu
Trong bước này cần tìm những site có URL giống như:
Cần chú ý vào các biến giống như page vì page được gán bằng 1 file có trên server
Thử kiểm tra bằng cách:
Gán page bằng dấu ‘ ' ’ kết quả server đã không thể hiểu được ‘ ' ’ và hiện ra cảnh báo cho người dùng. Warning có thể có hoặc không hiện lên cho người dùng.
Thử 1 vài đường dẫn của các file mặc định trên server trong phần khai thác này chúng ta sẽ thử với file access.log có trên Apache log
Bước 2: Khai thác.
Mục tiêu trong bước này inject vào trong file log của web server 1 form upload bằng PHP:
Form upload:
PHP:
"
Bước 3: Upload shell lên server.
Chúng ta sẽ cần truy cập lại vào file access.log
Bây giờ các bạn có thể upload bất kỳ mã độc nguy hiểm nào lên server.
Phương thức khai thác này rất nguy hiểm các bạn nên report cho quản trị biết khi phát hiện ra lỗi.
Chỉnh sửa lần cuối bởi người điều hành: