Chuyển đến nội dung chính

Làm gì khi phát hiện website bị tấn công, bị chèn mã độc?

Trong bài viết trước tôi đã hướng dẫn các bạn cách để nhận biết website của bạn đang bị tấn công. Vậy sau khi phát hiện website bị tấn công bạn cần làm gì? Trong bài viết này tôi viết tổng quan những công việc mà các bạn cần làm sau khi phát hiện website của mình bị hack và cách cơ bản để thực hiện.
Bạn cần làm theo các công việc sau
  • Khôi phục lại hoạt động của website, xóa bỏ các trang giả mạo, trang index mà hacker đã thay đổi hoặc tải lên website để website trở lại hoạt động bình thường.
  • Tìm và loại bỏ các mã độc, backup, webshell đang tồn tại trên hệ thống.
  • Tìm nguyên nhân mà website của bạn bị tấn công, ai là người đã tấn công
  • Vá các lỗ hổng mà hacker đã khai thác.
Khôi phục lại hoạt động của website bị tấn công
Trước tiên bạn cần sao lưu lại toàn bộ trạng thái của thư mục web để phục vụ cho việc kiểm tra sau này. Thay đổi các tài khoản của hệ thống, các tài khoản có thể cho phép tin tặc tiếp tục truy cập vào hệ thống của bạn: Tài khoản SSH, tài khoản Remote desktop, tài khoản quản trị của website, tài khoản kết nối CSDL, phpmyadmin…
Trong trường hợp bạn có bản sao lưu của mã nguồn hoàn chỉnh, có thể tải bản mới lên bản mã nguồn mới cho website của bạn, trong trường hợp không có bạn cần thực hiện xóa bỏ các dấu hiệu mà hacker đã để lại, tìm và xóa các trang web lừa đảo mà hacker đã để lại. Có thể sử dụng công cụ Website malware scanner của Sucuri để phát hiện các mã độc mà hacker đã chèn vào wesite của, tại đây. (https://sitecheck.sucuri.net/)
Tìm và loại bỏ các mã độc, backup, webshell đang tồn tại trên hệ thống
Hacker thường để lại mã độc trên website của bạn theo 3 hình thức sau
  • Chèn code mã độc vào các tệp tin trên website của bạn.
  • Tải các tệp tin webshell, backdoor lên website để có thể kiểm soát website của bạn thông qua backdoor này.
  • Cài đặt chương trình độc hại chạy ngầm, mở cổng để hacker truy cập vào trong lần sau.
Để phát hiện các webshell, backdoor bạn cần tìm và quét toàn bộ thư mục web của mình để phát hiện. Bạn có thể sử dụng một số công cụ tìm kiếm: FileSeek, Everything, Webshell Detector… bạn có thể theo dõi thêm bài viết: Kinh nghiệm tìm kiếm WebShell trong mã nguồn để được hướng dẫn chi tiết về cách thực hiện công việc này.
Để phát hiện các mã độc hại được nhúng và mã nguồn website, bận cần tìm và kiểm tra tất cả các tệp tin có ngày thay đổi (date modified) xung quanh thời điểm tấn công. Rất có thể hacker đã chèn các mã độc vào các tệp tin “sạch” của bạn.
Ngoài ra bạn có thể đọc trong Log access để biết các backdoor mà hacker đã truy cập vào trước thời gian mà website của bạn bị tấn công.
Với các tiến trình mã độc trên website, bạn cần thực hiện một cuộc điều tra về các tiến trình đang hoạt động, các tiến trình cho phép khởi động cùng hệ điều hành, các tiến trình được cài đặt để chạy theo lịch trong Crontab. Từ đó phát hiện ra các tiến trình độc hại trên máy chủ của bạn.
Trước tiên bạn cần biết ai là người đã tấn công bạn. hacker đã tấn công bạn như thế nào, hacker đã làm gì trên website của bạn, hacker còn cài đặt, ẩn giấu mã độc gì trên website của bạn?
Tìm nguyên nhân mà website của bạn bị tấn công, ai là người đã tấn công website của bạn?
Để biết được ai là người đã tấn công và nguy nhân của cuộc tấn công, nếu website không có các hệ thống giám sát an ninh mạng để thu thập dữ liệu log trên máy chủ thì cách duy nhất là cần tận dụng các dữ liệu log trên website.
Bạn có thể tìm kiếm các truy cập vào tệp tin mã độc để xác định đối tượng tấn công, đọc log access trong thời gian tệp tin mã độc được tạo hoặc các tệp tin khác bị thay đổi hoặc tạo mới để tìm được cách mà hacker đã thực hiện để tấn công bạn, lọc toàn bộ các yêu cầu được gửi trong log từ địa chỉ IP của đối tượng tấn công.
Bạn cũng có thể đọc thêm các dữ liệu log audit, log secure, history… để biết được hacker đã làm gì với website của bạn.
Vá các lỗ hổng mà hacker đã khai thác
Sau khi đã biết được cách mà hacker đã khai thác, tấn công website bạn cần vá lại các lỗ hổng mà hacker đã khai thác, cập nhật các bản vá mới cho phần mềm, cấu hình phần quyền cho website. Tôi sẽ trình bày chi tiết hơn vấn đề này trong bài viết sau, mời các đón bạn đón đọc.

Nhận xét

Bài đăng phổ biến từ blog này

So sánh giấy phép mã nguồn mở Apache, MIT, GPL

Mã nguồn mở ngày nay đã và đang trở nên phổ biến hơn bao giờ hết, những dự án mã nguồn mở có thể được tìm thấy hầu như ở bất kì đâu trên không gian mạng rộng lớn này. Tuy nhiên dù có “mở” đi chăng nữa thì những phần mềm mã nguồn mở phải tuân theo những giấy phép nhất định. Điển hình là 3 loại giấy phép phổ biến nhất là Apache, MIT và GPL. Vậy, giữa chúng có gì khác nhau. Trước hết, giấy phép mã nguồn mở là một loại giấy phép được sử dụng cho các phần mềm mã nguồn mở. Giấy phép này cho phép bất kì cá nhân hay tổ chức nào cũng có thể nghiên cứu, thay đổi, chỉnh sửa và cải tiến phần mềm, và phân phối ở các dạng khác nhau như thay đổi hoặc chưa thay đổi. Giấy phép Apache Giấy phép Apache ra đời bởi Quỹ Phần mềm Apache (Apache Software Foundation - ASF). Đây là một giấy phép phần mềm tự do, không có copyleft, bắt buộc trong việc thông báo bản quyển và lời phủ nhận. Giấy phép này hoạt động như các giấy phép phần mềm mã nguồn mở khác, trao cho người sử dụng phần mềm quyền tự do trong b

Mã hóa đối xứng và bất đối xứng

Hôm nay mình xin được nói về hai thuật toán cơ bản và quan trong nhất trong bảo mật đó là mã hóa đối xứng và mã hóa bất đối xứng . 1. Mã hóa đối xứng (mã hóa không công khai- symmetric-key algorithms ) - Là lớp thuật toán các mã hóa trong đó việc mã hóa và giải mã đều dùng chung cho 1 khóa (secret key) 1.1 Các loại thuật toán khóa đối xứng Thuật toán đối xứng có thể được chia ra làm hai thể loại, mật mã luồng ( stream ciphers ) và mật mã khối ( block ciphers ). Mật mã luồng mã hóa từng bit của thông điệp trong khi mật mã khối gộp một số bit lại và mật mã hóa chúng như một đơn vị. Cỡ khối được dùng thường là các khối 64 bit. Thuật toán tiêu chuẩn mã hóa tân tiến ( Advanced Encryption Standard ), được NIST công nhận tháng 12 năm 2001, sử dụng các khối gồm 128 bit. Các thuật toán đối xứng thường không được sử dụng độc lập. Trong thiết kế của các hệ thống mật mã hiện đại, cả hai thuật toán bất đối xứng ( asymmetric ) (dùng chìa khóa công khai) và thuật toán đối xứng được sử

Chuyện nghề Kiểm thử an toàn thông tin

Từ hồi đi làm đến giờ, tôi gặp nhiều tình huống không biết nên trả lời thế nào cho đúng, hôm nay ghi lại đây để mai mốt ai có gặp tham khảo. Khi được liên hệ, tôi thấy đa phần các đơn vị làm xong rồi mới nghĩ đến chuyện kiểm thử, thậm chí là bị hack rồi mới nghĩ tới. Việc pentest nên được triển khai ngay từ khi Phân tích thiết kế hệ thống . Các luồng đi của dữ liệu khi phác thảo ý tưởng ở trên giấy cũng cần kiểm tra tính an toàn, nếu để đến khi đã ra sản phẩm rồi thì đi sửa lại mất nhiều thời gian, công sức hơn nhiều, thậm trí sửa lại sinh ra lỗi mới. Nhiều người vẫn đánh giá các sản phẩm cầm nắm được giá trị hơn sản phẩm trí tuệ, hay sáng tạo. Giống thằng em tôi làm graphic designer hay "được nhờ" vẽ hộ logo hai cái này cái kia, có khi mất cả ngày hoặc nhiều hơn, trong khi không được đồng nào, có khi còn bị chê :)). Nếu làm tốt việc gì đó, đừng bao giờ làm miễn phí hoặc lấy giá quá rẻ . Nghe đồn Louis Vutton đốt trụi rũi hàng ế, chứ chưa bao giờ chịu giảm giá. Relax với chuy