Thật điên rồ - soi keo hom nay

/imgposts/86evrudu.jpg

Không ngờ rằng chuỗi sự kiện về việc trang web bị hack lại nhanh chóng cập nhật đến phần ba như vậy... Chỉ mới hai ngày sau lần xâm nhập thứ hai, trang web của cựu công ty lại tiếp tục bị chiếm quyền kiểm soát. Kẻ tấn công dường như đã nhận ra rằng mã nguồn trang chủ đã bị khóa cứng và không thể chỉnh sửa trực tiếp. Lần này, chúng đã lợi dụng lỗ hổng từ Kangle/EasyPanel để thay đổi mật khẩu tài khoản Kangle, sau đó thông qua tập tin cấu hình, chuyển hướng 301 toàn bộ trang web sang một địa chỉ độc hại.

Trên mạng có rất nhiều bài viết đề cập đến các lỗ hổng nghiêm trọng của Kangle + EasyPanel. Thay vì sử dụng những công cụ này, việc chuyển sang Apache/Nginx sẽ đáng tin cậy hơn rất nhiều. Quan điểm trước đây vẫn giữ nguyên: sử dụng các công cụ triển khai PHP tự động trong nước kèm theo bảng điều khiển quản lý chỉ là cách đào hố chôn chính mình. Nếu có thể tránh xa những dự án kiểu này thì tốt nhất là nên từ chối ngay; nếu buộc phải nhận, hãy thay thế tất cả các thành phần yếu kém càng sớm càng tốt.

Sau hơn một giờ đồng hồ vất vả, cuối cùng tôi cũng đã khôi phục được cấu hình Kangle và đưa trang web trở lại trạng thái bình thường. Tuy nhiên, tỷ số bóng đá hôm nay cảm giác rằng nguồn gốc của vấn đề chưa thực sự được tại f8bet giải quyết vẫn đeo bám. Để đối phó tạm thời, tôi đã áp dụng một số biện pháp:

  • Thay đổi cổng mặc định của Kangle.
  • Hạn chế địa chỉ IP có thể đăng nhập vào hệ thống Kangle.
  • Sử dụng dịch vụ giám sát trang web của Alibaba Cloud, với tần suất kiểm tra mỗi phút một lần để đảm bảo nội dung trang web luôn chứa từ khóa liên quan đến công ty. Nếu không tìm thấy từ khóa, hệ thống sẽ gửi cảnh báo qua tin nhắn và email ngay lập tức. Tuy nhiên, tôi vẫn chưa chắc chắn rằng giải pháp này hoạt động hiệu quả trong trường hợp chuyển hướng 301.
  • Đồng thời, triển khai máy chủ mới để thay thế kiến trúc cũ lỗi thời này. Máy chủ mới cũng sẽ đóng vai trò là bản sao dự phòng (hot backup). Tôi nhớ đến tính năng tự động chuyển DNS khi xảy ra sự cố mà DNSPod từng cung cấp – đó thực sự là một giải pháp hữu ích.

Đã hai năm kể từ khi tôi rời khỏi công ty cũ, nhưng hệ thống mà tôi từng tiếp quản dường như không có thay đổi lớn nào. Điều này cho thấy rằng không ai đủ can đảm để chạm vào hệ thống cổ xưa đầy lỗ hổng này. Rốt cuộc, viết lại toàn bộ hệ thống không mang lại giá trị sản phẩm rõ ràng nào. Xét trên góc độ rộng hơn, thị trường hiện nay chắc chắn còn tồn tại rất nhiều hệ thống PHP "cổ lỗ sĩ" tương tự. Do vấn đề phiên bản PHP và chất lượng thấp của các framework được xây dựng dựa trên nó, các lỗ hổng bảo mật xuất hiện khắp nơi. Nếu có thể chuyển đổi những hệ thống này một cách mượt mà sang kiến trúc hiệu quả và an toàn bằng Golang, có lẽ đây sẽ là một thị đánh bài online trường tiềm năng.

Ngoài ra, không thể trông chờ vào một vài lập trình viên trong các công ty nhỏ để đối phó với những hệ thống đầy lỗ hổng như vậy. Giải pháp đúng đắn hơn là sử dụng phần mềm bảo vệ chuyên nghiệp hoặc dịch vụ đám mây.

Sau khi tạm thời khắc phục được vấn đề trang web, vị sếp cũ bắt đầu phê bình kỹ thuật viên. Dù chỉ là người lắng nghe bên lề, tôi vẫn cảm nhận được rằng ông ấy đang gián tiếp phê phán cả tôi nữa. Thật điên rồ! Tôi đã thức suốt đêm, làm việc đến tận mười một hoặc mười hai giờ khuya như một người tình nguyện, nhưng vẫn phải chịu đựng những lời chỉ trích này... Nếu không vì sự tò mò về nguyên nhân bị tấn công và mong muốn tích lũy thêm kinh nghiệm để phòng ngừa cho hệ thống hiện tại, tôi đã chẳng buồn quan tâm đến chuyện này chút nào. Nghe vài câu phê bình rồi, tôi cáo lui ngay lập tức, cảm thấy vô cùng thất vọng.

  • Không nên tùy tiện mở cổng. Hệ thống bảo mật của Alibaba Cloud tỏ ra đáng tin cậy hơn nhiều so với các nhà cung cấp khác. Cấu hình mặc định của họ không mở bất kỳ cổng nào, yêu cầu người dùng phải kích hoạt từng cổng một. Trong khi đó, cơ chế mở cổng mặc định của Tencent Cloud thật sự gây khó chịu.
  • Hãy sử dụng dịch vụ đám mây từ các thương hiệu lớn. Những lần bị tấn công liên tiếp gần đây xảy ra trên node Linode ở nước ngoài, trong khi các trang web được triển khai trên Alibaba Cloud trong nước thì hoàn toàn ổn định. Theo tôi nghĩ, điều này có liên quan đến việc tuân thủ chuẩn cổng kết nối và khả năng bảo vệ tự động khỏi các cuộc quét độc hại của Alibaba Cloud (mặc dù hệ thống này cũng không hoàn hảo, tôi vẫn thường xuyên thấy các cuộc quét độc hại ghi lại trong log, nhưng ít nhất nó vẫn tốt hơn là không có gì).
  • Tránh xa các framework nhái và ít phổ biến. Các công cụ như Kangle, ThinkPHP,... đều không đáng tin cậy và không nên sử dụng.
  • Cần thiết lập cơ chế phục hồi nhanh chóng. Cho dù là hệ thống dự phòng hai máy hay các dịch vụ sao lưu ổ cứng do nhà cung cấp đám mây cung cấp, bạn nên sử dụng chúng để phòng ngừa các tình huống khẩn cấp.
  • Việc sử dụng Docker để cập nhật nhanh chóng web server trực tuyến có phải là một giải pháp tốt không?