#162467 gửi bởi vinahost.vn
Ngày 23 Tháng 10 2014 , 03:27
Tình hình dạo gần đây có 1 số website lớn gặp sự cố, mình nghĩ là các doanh nghiệp nên cân nhắc việc bảo mật cho website của mình cao hơn nữa, chia sẻ với mọi người 1 trong số những việc doanh nghiệp có thể làm:
Kiểm tra xử lý tình trạng website bị hack
Bài viết sau đây cung cấp cho bạn các phương pháp để bảo vệ website của mình cũng như hướng dẫn cơ bản bạn kiểm tra khi website bị hack.

Thông thường khi một website của bạn bị hack sẽ có các dấu hiệu dễ nhận biết sau:
- Website bị thay đổi nội dung (deface) hoặc trong mã nguồn bị chèn một số đoạn mã, script lạ do hacker chèn vào. Các đoạn mã này bị chèn vào tùy thuộc vào mục đích của hacker
- Khi truy cập vào website thì thường xuyên bị redirect qua các website độc hại, website quảng cáo
- Website bị upload shell
- Website bị cảnh báo Reported Attack Site bởi Google
Có khá nhiều nguyên nhân để website của bạn có thể trở thành mục tiêu của hacker tuy nhiên thông thường nguyên nhân thường thuộc phía người dùng với các lý do sau:
- Đặt mật khẩu quản trị quá yếu (không đủ độ dài ký tự, không có các ký tự viết hoa, ký tự đặc biệt,... ), thiếu cơ chế chống brute force khiến kẻ tấn công có thể dò password admin.
- Cài đặt các module, plugin, extension,... trong các mã nguồn mở hiện nay (thường là các website joomla, wordpress,...).
- Để lộ mật khẩu quản trị trong quá trình sử dụng
- Dùng mã nguồn phiên bản cũ với nhiều lỗi bảo mật qua đó hacker tấn công vào một điểm yếu và khai thác lỗi
- Tấn công local attack

Một khi website của bạn bị hack bạn cần bình tĩnh và thực hiện các thao tác sau để kiểm tra và xử lý:
- Cách li website
- Kiểm tra và xác định thiệt hại
- Nhận diện lỗ hổng
- Xử lý và bảo trì website
- Đưa website trở lại hoạt động

Bước 1: Cách li website
Khi website của bạn bị hack việc đầu tiên là cần cách li ngay website của mình. Kiểm tra các bản backup của website. Việc này giúp cho website của bạn không bị tiếp tục tấn công bởi hacker hoặc website tiếp tục cung cấp các nội dung bị sửa đổi cho người dùng (bạn nên thay thế trang chủ bởi nội dung"Website đang được bảo trì!")
Tiếp đến bạn cần kiểm tra các tài khoản trên website, kiểm tra có tài khoản nào hacker mới tạo ra và xóa đi. Tránh hacker có thể login vào với thông tin đăng nhập cũ.
Bạn cần đổi tất cả các thông tin tài khoản bao gồm: tài khoản website, database, tài khoản quản lý hosting, FTP.
Sau khi thực hiện tất cả các thao tác trên bạn đã hoàn tất việc cách li website của mình để tiến hành kiểm tra

Bước 2: Kiểm tra và xác định thiệt hại
Bước tiếp theo là kiểm tra mức độ thiệt hai của website sau khi bị tấn công. Thông thường với dạng tấn công deface hacker chỉ thay thế trang chủ website của bạn và thông báo cho bạn website đã bị hack. Trường hợp này ta chỉ cần xóa file "index" của hacker và thay thế lại bằng file "index" gốc của website là website đã có thể hoạt động bình thường.
Tuy nhiên, với một số trường hợp tinh vi hơn, hacker chèn vào trong mã nguồn của bạn các đoạn mã hay script việc phát hiện sẽ khó khăn hơn. Ngoài ra hacker cũng có thể upload shell lên website của bạn để chiếm quyền điều khiển sau này. Với những trường hợp này bạn cần download toàn bộ mã nguồn website về máy tính local và thực hiện rà soát mã nguồn. Nếu kiểm tra trong mã nguồn có các đoạn mã nào lạ bị chèn vào hay file nào lạ được upload lên bạn cần thực hiện xóa ngay.

Nếu bạn có một bản backup website sạch việc kiểm tra sẽ dễ dàng hơn, bạn có thể thực hiện các lệnh sau để kiểm tra các file bị sửa đổi trên website:

# diff -qr <current-directory> <backup-directory>
Ví dụ:
# diff -qr www/ backups/full-backup-20140724/

Hoặc lệnh sau:

# md5sum <current-page> <backup-page>
Ví dụ:
# md5sum www/page.html backups/full-backup-20140724/page.html

Dựa vào các thông tin trên bạn sẽ dễ dàng thấy các file nào bị sửa đổi hay mới được tạo ra và thực hiện thêm một số kiểm tra trên các file này (Lưu ý các lệnh diff và md5sum chỉ thực hiện trên hệ điều hành Linux, bạn có thể tìm và sử dụng một số tool tương tự trên Window).

Nếu website của bạn có chứa database việc kiểm tra cụ thể các dữ liệu trên database là cần thiết. Bạn có thể dễ dàng thực hiện công việc này thông qua công cụ phpMyAdmin

Bước 3: Nhận diện lỗ hổng
Đây là bước khó nhất, nó đòi hỏi kinh nghiệm và kiến thức để có thể kiểm tra chính xác nguyên nhân và cách khắc phục. Bài viết này chỉ cung cấp cho bạn một số bước cơ bản để kiểm tra và xác định nguyên nhân:

- Đầu tiên bạn kiểm tra trong access log hay error log tìm kiếm tất cả các thông tin liên quan đến việc website bị tấn công: ví dụ như website bị tấn công dò mật khẩu, có một số login không hợp lệ từ IP lạ , một số file lạ được upload bằng FTP. Dựa vào các thông tin trên bạn có thể kết luận bạn bị lộ mật khẩu hay hacker tấn công băng cách khai thác các lỗ hỗng bảo mật khác
- Kiểm tra xem mã nguồn đang dùng có đang tồn tại lỗ hỗng bảo mật, các module, plugin được cài lên website có an toàn. Nếu một số lỗi trên có thể bị khai thác thì tìm hiểu cách khai thác và so sánh với access log để đưa ra kết luận
- Kiểm tra một số đoạn access log lạ từ đó tìm ra cách khai thai lỗ hỗng của hacker. Ví dụ thông thường để upload một file lên website thì phải dùng phương thức POST, bạn có thể dựa vào thông tin này để rút ngắn lại phạm vi tìm kiếm nhằm xác định chính xác cách thức khai thác
- Dùng một số phần mềm kiểm tra bảo mật để quét các lỗi bảo mật trên website. Có thể kể đến Acunetix, Nikto, OpenVAS

Bước 4: Xử lý và bảo trì website
Khi xác định được chính xác nguyên nhân bạn cần có phương án xử lý ngay lập tức. Nếu xác định nguyên nhân do lộ mật khẩu quản trị bạn cần đổi mật khẩu phức tạp và tránh để lộ mật khẩu trong quá trình sử dụng.

Nếu lỗi do mã nguồn bạn cần update mã nguồn lên phiên bản mới nhất để fix các lỗi bảo mật. Ngoài ra bạn cần tránh dùng các module hay plugin không rõ nguồn gốc cho website. Nếu Module hay plugin có thể bị khai thác bạn cần xóa ngay plugin này khỏi website

Kiểm tra lần cuối để chắc chắn website của bạn đã bvà tạo một bản backup để sử dụng khi cần thiết

Bước 5: Đưa website trở lại hoạt động
Ngay sau khi đưa website vào hoạt động lại bạn cần thường xuyên kiểm tra để xác định website của mình được an toàn và không tiếp tục bị tấn công

Mỗi website có thể có những vấn đề và điểm yếu riêng. Tuy nhiên, yếu điểm quan trọng nhất là yếu tố con người. Bạn phải không ngừng nâng cao, học hỏi thêm kiến thức mới, tăng cường nhận thức về các mối đe dọa và bảo mật nhằm kịp thời nhận ra các lỗ hổng về kỹ thuật, tránh mắc phải các sai lầm trong công tác quản trị website. Vinahost khuyến khích bạn thực hiện các thao tác sau nhằm nâng cao an toàn cho website của mình:

- Thường xuyên kiểm tra dữ liệu website (chú ý thời gian tập tin, thư mục bị thay đổi ).
- Có kế hoạch backup dữ liệu cụ thể để lúc cần có thể restore lại ngay.
- Không nên cài đặt các module, plugin, extension,... không thật sự cần thiết và không rõ nguồn gốc (nên download module, plugin, extension,.... từ các trang web uy tín). Thường xuyên update mã nguồn lên phiên bản mới nhất để hạn chế các lỗi bảo mật trong các phiên bản trước
- Nên đổi mật khẩu quản trị theo 1 chu kỳ định sẵn và lưu giữ cẩn thận.

Chỉ với những thao tác trên thì website của bạn đã an toàn và hạn chế khả năng bị tấn công bởi hacker
Link bài gốc: http://vinahost.vn/ac/knowledgebase/...te-b-hack.html

Link gốc: http://thegioitinhoc.vn

Servers Vietnam | Servers Vietnam | Colocation Vietnam | Colo Vietnam |