Có nhiều khả năng bạn đang mất lưu lượng, doanh thu, và niềm tin của khách hàng mỗi ngày từ trang WordPress vì thứ gọi là 'SQL injection'.
Tại sao?
Đơn giản – một hacker nào đó nghĩ rằng việc hút lưu lượng kinh doanh của bạn và dẫn họ đến:
- Trang web người lớn;
- trang web ma túy trái phép;
- quảng cáo tôn giáo;
- hoặc trang web độc hại khác
là ý tưởng tốt.
Điều này khiến trang web bị Google đưa vào danh sách đen. Bạn cũng mất sự tôn trọng của khách hàng và cộng đồng do cảnh báo như: trang web lừa đảo, trang web này có thể bị hack trong kết quả tìm kiếm.
Phần tồi tệ nhất?
Kẻ hacker vô danh, vô hình này không nghĩ bạn có thể làm gì.
Trang web của bạn bây giờ tràn lan popup lạ, chuyển hướng, từ khóa spam và lỗi 403.
Chúng tôi đã làm việc với hơn một triệu trang WordPress hơn một thập kỷ và gặp phải các hack này thường xuyên.
Chúng tôi đã giúp xóa mã độc SQL injection khỏi hàng trăm trang web trước khi nó gây hại.
Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách loại bỏ hack này và đưa trang web về trạng thái gốc sớm nhất có thể.
Tóm lại: Để xóa SQL injection khỏi trang web, cài đặt MalCare. Nó sẽ dọn dẹp trang web trong chưa đầy 60 giây. Sau đó tăng cường bảo mật bằng tính năng tăng cường bảo mật của MalCare. Điều đó sẽ giữ trang web an toàn khỏi tấn công SQL injection trong tương lai.
Bot hacker được thiết kế để thực hiện hàng trăm lần thử SQL injection trong vài phút.
Một lần thành công sẽ phá hủy trang web.
Nếu tường lửa hoặc plugin bảo mật phát hiện hàng chục lần tấn công SQL injection, có khả năng cao trang web đã bị hack.
Nếu chưa thì bạn may mắn.
Vậy làm sao biết chắc chắn trang web đã bị hack?
Và nếu bị thì làm sao xóa mã độc?
Đừng lo, chúng tôi sẽ chỉ cho bạn các bước chính xác để phát hiện và dọn dẹp tấn công SQL injection trên trang web.
Nhưng trước khi đi vào chi tiết, việc hiểu tấn công SQL injection thực sự là gì là ý tưởng tốt. Tuy nhiên, nếu bạn gấp cần kiểm tra trang web nhiễm mã độc, hãy nhảy đến phần này.
Tấn Công SQL Injection Là Gì?
Trang WordPress dùng cơ sở dữ liệu để quản lý dữ liệu như bài viết, trang, bình luận, v.v. Tất cả dữ liệu này được lưu trữ có tổ chức trong các bảng cơ sở dữ liệu.
Hacker truy cập cơ sở dữ liệu bằng tấn công SQL injection.
Nhưng tại sao ai muốn truy cập cơ sở dữ liệu của bạn?
Câu hỏi hay.
Khi hacker cố gắng xâm nhập trang web, họ hoặc muốn đánh cắp dữ liệu nhạy cảm (như thông tin đăng nhập và thẻ tín dụng) hoặc phá hỏng trang web.
Nếu mã độc được chèn vào cơ sở dữ liệu nhằm mục đích lấy dữ liệu, đó gọi là SQL injection In-band. Nhưng nếu mục đích là hại trang web bằng cách xóa nội dung từ cơ sở dữ liệu, đó gọi là Tấn công SQL injection Blind.
Chúng tôi biết bạn đang thắc mắc – tại sao gọi là tấn công SQL injection?
Để trang web lưu dữ liệu vào cơ sở dữ liệu, nó cần tương tác với cơ sở dữ liệu. SQL là ngôn ngữ trang web dùng để thêm, cập nhật, xóa, và tìm kiếm dữ liệu trong cơ sở dữ liệu. Hacker dùng cùng ngôn ngữ đó để hack cơ sở dữ liệu.
Hacker khai thác các trường nhập liệu trên trang web như form liên hệ hoặc thanh tìm kiếm để chèn mã độc vào cơ sở dữ liệu. Do đó, gọi là tấn công SQL injection.
Cách Xóa SQL Injection WordPress Khỏi Trang Web
Bạn có đang gặp bất kỳ tình huống sau:
- Nhận hàng trăm email từ form liên hệ trong vài phút.
- Quảng cáo chuyển hướng đến trang web đáng ngờ.
- Popup lạ xuất hiện trên một số trang và lỗi trên trang khác.
Đây là triệu chứng phổ biến của hack SQL injection.
Đó nói, loại hack này có thể không thực sự nhìn thấy được. Hacker có thể hack trang chỉ để lấy thông tin. Chúng không cần sửa đổi trang web.
Vì vậy dù trang web trông bình thường, nó vẫn có thể bị hack. Bạn cần quét trang web để chắc chắn.
Có nhiều trình quét để chọn. Dicho nhiều plugin quét không thể phát hiện mã độc mới, phức tạp, hoặc giấu kỹ. Chúng tôi khuyến nghị MalCare vì nó đi trước một dặm. Đây là lý do:
- MalCare không dựa vào so khớp mẫu (pattern matching) để tìm mã độc. Thay vào đó, nó trang bị các tín hiệu thông minh đánh giá hành vi mã. Điều này cho phép plugin phát hiện mã độc mới và phức tạp.
- Nó quét không chỉ tệp WordPress mà cả cơ sở dữ liệu. Nó nhìn vào mọi góc ngách tìm mã độc hoặc malware.
- Nó thực hiện quét trên máy chủ riêng để đảm bảo trang web không bị quá tải.
- Plugin sẽ tự động quét trang web hàng ngày. Và chỉ thông báo khi tìm thấy mã độc.
Để phát hiện hack với MalCare, bạn cần làm các bước sau:
Bước 1: Đăng ký Trình quét Mã độc WordPress MalCare. Cài đặt và kích hoạt plugin trên trang web. Sau đó thêm trang vào bảng điều khiển MalCare.
Nó sẽ ngay lập tức chạy quét trên trang web.
Nếu phát hiện trang web bị hack, nó sẽ thông báo.
Bạn có thể tiến hành dọn dẹp trang web cùng công cụ đó.
Nhiều người nghĩ đến khôi phục bản sao lưu để dọn nhiễm mã độc. Điều này KHÔNG hoạt động. Khôi phục bản sao lưu chỉ thay thế tệp hiện có, không xóa tệp độc hại hacker thêm vào.
Cảnh báo công bằng: Mặc dù trình quét miễn phí, tính năng xóa mã độc của MalCare là tính năng premium. Bạn cần nâng cấp để dọn dẹp trang web.
Để dọn dẹp hack, làm theo hướng dẫn dưới:
Bước 2: Khi MalCare phát hiện trang web bị hack, nó sẽ thông báo trên bảng điều khiển.
Ngay dưới thông báo, bạn sẽ thấy nút Tự động dọn dẹp (Auto-Clean). Nhấn vào.
Bước 3: Tiếp theo, bạn cần nhập thông tin FTP. Nếu không biết đó là gì hoặc cách tìm, hướng dẫn và video này sẽ giúp.
Bước 4: Sau đó bạn sẽ được yêu cầu chọn thư mục chứa trang WordPress. Thường là thư mục public_html.
Một số chủ trang web di chuyển trang đến vị trí khác vì an toàn. Vì vậy nếu bạn quản trị trang cho khách hàng, tốt nhất xác minh trang thực sự nằm trong public_html.
Khi đã chọn thư mục, MalCare sẽ bắt đầu dọn dẹp trang web.
Sẽ mất vài phút để xóa mã độc khỏi trang web.
Ngoài MalCare, có nhiều plugin bảo mật khác giúp phát hiện và dọn dẹp trang web. Đó là Wordfence, WebARXSecurity, Astra Security, Sucuri, v.v. Bạn có thể thử bất kỳ cái nào.
WordPress Xử Lý Tấn Công SQL Như Thế Nào?
Qua nhiều năm, WordPress đã nỗ lực bảo vệ cơ sở dữ liệu khỏi tấn công SQL injection.
Để bảo vệ trang WordPress khỏi loại tấn công này, trường nhập liệu phải trước hết xác minh dữ liệu do người dùng cung cấp trước khi chèn vào cơ sở dữ liệu.
WordPress có danh sách hàm làm sạch dữ liệu chèn vào trường nhập liệu khiến không thể chèn mã độc.
Tuy nhiên, trang WordPress rất phụ thuộc vào theme và plugin. Tấn công SQL injection thực hiện bằng cách khai thác theme và plugin dễ bị tổn thương. Xem thêm phần sau.
Tấn Công SQL Injection Được Thực Hiện Như Thế Nào?
Hacker truy cập trang web bằng cách khai thác lỗ hổng trên trang.
Trong trường hợp tấn công SQL injection, hacker khai thác lỗ hổng trong trường nhập liệu của trang web như form liên hệ, hộp đăng nhập, hộp đăng ký, phần bình luận, hoặc thậm chí thanh tìm kiếm để chèn mã PHP độc hại vào cơ sở dữ liệu.
Có nghĩa là có trường nhập liệu là nguy hiểm?
Câu trả lời là cả có và không.
Trường nhập liệu như bình luận và form liên hệ được hỗ trợ bởi plugin hoặc theme. Giống như phần mềm khác, plugin và theme phát sinh lỗ hổng sau đó bị hacker khai thác để tấn công SQL injection.
Không thể đảm bảo plugin và theme tuân theo WordPress trong ngăn chặn SQL injection.
Hãy lấy plugin form làm ví dụ.
Thông tin chèn vào plugin form nên được xác thực và làm sạch trước khi lưu vào cơ sở dữ liệu.
Tại sao phải xác thực và làm sạch?
Xác thực dữ liệu: Đảm bảo dữ liệu nhận được theo định dạng cụ thể. Plugin form nhận số điện thoại nên đảm bảo khách chỉ chèn ký tự số.
Làm sạch dữ liệu: Đảm bảo không chèn quá nhiều thứ không cần thiết. Plugin form nên hạn chế khách chèn quá 10 ký tự.
Nếu plugin không kiểm tra đầu vào khách, dễ dàng chèn chuỗi mã độc vào form.
Form sẽ lưu dữ liệu này vào cơ sở dữ liệu, cho hacker truy cập cơ sở dữ liệu.
Đối với hầu hết người dùng WordPress, không thể biết plugin hoặc theme cài trên trang có lọc kỹ dữ liệu người dùng hay không.
Đó nói, có cách đảm bảo trang web an toàn khỏi tấn công SQL injection trong tương lai. Để tìm hiểu bảo vệ trang web khỏi tái nhiễm, nhảy đến phần này.
Tác Động Của Tấn Công SQL Injection Lên Trang Web
Hậu quả của tấn công SQL injection thành công rất xấu. Bạn có thể trải qua bất kỳ hoặc tất cả hệ quả sau:
1. Mất Dữ Liệu Nhạy Cảm
Bạn đã nghe về vi phạm dữ liệu ở Yahoo, Twitter, Adobe, dẫn đến xâm phạm hàng triệu tài khoản.
Trang web của bạn không lớn như Twitter nhưng chứa thông tin nhạy cảm, nếu bị đánh cắp sẽ dẫn đến vấn đề nghiêm trọng như vi phạm niềm tin, tổn hại uy tín, thậm chí hậu quả pháp lý.
Trang thương mại điện tử có thể bị đánh cắp hồ sơ tài chính, trang y tế bị đánh cắp hồ sơ sức khỏe, v.v.
Hacker có thể bán hồ sơ này trực tuyến hoặc yêu cầu tiền chuộc.
2. Mất Dữ Liệu Trang Web
Khi trang bị xâm nhập, lo ngại lớn nhất của hacker là bị bắt.
Vì vậy, chúng di chuyển cẩn thận qua trang, thực hiện hoạt động lén lút.
Nhưng đôi khi chúng vô tình sửa đổi cơ sở dữ liệu. Có thể là lỗi xóa thông tin. Hoặc hành động cố ý nhằm phá hỏng trang web.
Hệ quả, bạn mất nội dung trang web.
3. Vi Phạm Niềm Tin & Tổn Hại Uy Tín
Vi phạm dữ liệu sẽ ảnh hưởng cách khách hàng nhìn nhận kinh doanh và có muốn tiếp tục tin cậy không.
Scandal vi phạm dữ liệu Cambridge Analytica năm 2018 khiến người xóa tài khoản Facebook.
Khi khách hàng biết bạn không bảo vệ được hồ sơ sức khỏe hoặc tài chính, họ khó bao giờ muốn làm ăn với bạn.
Bạn có thể bị truy cứu trách nhiệm pháp lý vì mất dữ liệu chắc chắn sẽ làm đen uy tín.
4. Google Đưa Vào Danh Sách Đen & Hosting Tạm Khóa
Hacker cố gắng không bị bắt. Chúng hoạt động cẩn thận và bí mật.
Thường không có dấu hiệu hack rõ ràng. Vì vậy có thể mất thời gian để biết trang web bị hack.
Công cụ tìm kiếm và máy chủ hosting nhanh chóng phát hiện hoạt động độc hại trên trang WordPress. Khi phát hiện, chúng nhanh chóng tạm khóa trang để bảo vệ người dùng của họ và ngăn họ truy cập trang.
5. Chi Phí Dọn Dẹp
Dọn dẹp trang bị hack không dễ. Bạn không thể làm thủ công.
Có dịch vụ chuyên biệt nhưng tốn kém và tốn thời gian.
Và nếu bạn bị nhiễm liên tục, hy vọng bạn có túi tiền sâu để trả hóa đơn chồng chất.
May mắn thay, dịch vụ bảo mật như MalCare cung cấp dọn dẹp không giới hạn $99/năm cho một trang. Xem giá MalCare nếu chưa xem.
Làm Thế Nào Bảo Vệ Trang Web Khỏi Tái Nhiễm?
Trang WordPress bị hack do lỗ hổng trong plugin hoặc theme.
Sau khi dọn dẹp trang web, bạn cần biện pháp ngăn hacker tái nhiễm.
1. Chọn Theme & Plugin Cẩn Thận
Trước khi cài theme hoặc plugin, đọc đánh giá từ người dùng.
Nếu công cụ phát sinh lỗ hổng gây hack trang web, đừng dùng.
Công cụ xây dựng tốt khó phát sinh lỗ hổng thường xuyên.
Ngay khi có, nhóm nhà phát triển có trách nhiệm sẽ nhanh phát hành phiên bản tốt hơn.
Điều này giữ trang web an toàn.
2. Giữ Trang Web Luôn Cập Nhật
Tấn công SQL injection thành công do lỗ hổng trong theme, plugin hoặc lõi.
Lỗ hổng cho hacker chèn mã độc vào trang và truy cập cơ sở dữ liệu.
Lỗ hổng này có thể sửa bằng bản cập nhật.
Khi nhà phát triển biết lỗ hổng, họ phát hành bản vá dưới dạng cập nhật.
Nếu bạn áp dụng cập nhật đó, trang web an toàn khỏi SQL injection.
Quan trọng giữ theme, plugin và lõi luôn cập nhật.
Mẹo chuyên nghiệp: Đảm bảo cập nhật tự động WordPress được bật. Năm 2017, WordPress phát hành bản cập nhật vá lỗ hổng SQL. Nhưng nhiều trang vẫn bị hack vì cập nhật tự động bị tắt.
3. Thay Đổi Tiền Tố Bảng Cơ Sở Dữ Liệu
Điều này khiến hacker khó truy cập cơ sở dữ liệu.
Tại sao?
Cơ sở dữ liệu có bảng bắt đầu bằng "wp_"
Thay đổi tiền tố sẽ làm khó định vị bảng.
Mẹo chuyên nghiệp: Bước đầu tiên là sao lưu trang web. KHÔNG BAO GIỜ BỎ QUA BƯỚC NÀY. Sửa đổi backend nguy hiểm. Nếu sai, bạn có bản sao để khôi phục.
> Truy cập tệp wp-config qua tài khoản hosting.
> Đăng nhập hosting và vào cPanel > Trình quản lý tệp.
> Tìm tệp wp-config.php và mở.
> Từ câu $table_prefix = 'wp_'; thay wp_ bằng thứ khác. Lưu và thoát.
4. Sử Dụng Tường Lửa
Tường lửa bảo vệ trang WordPress khỏi hacker.
Nó điều tra mọi người truy cập trang và chặn những kẻ có tiền sử hoạt động độc hại.
Tường lửa như Astra Security sẽ phân tích đầu vào người dùng để phát hiện và ngăn chặn SQL injection.
Nếu bạn dùng MalCare dọn dẹp trang web, bạn không cần lo cài plugin tường lửa. Tường lửa MalCare tự động chặn lưu lượng độc hại.
Tiếp Theo Là Gì?
Trang WordPress gồm cơ sở dữ liệu và nhiều tệp.
Giống như cơ sở dữ liệu, tệp WordPress dễ bị hack.
Bạn cần bước bảo vệ chúng khỏi hacker và bot. Hướng dẫn này sẽ giúp – Cách Bảo Mật Trang WordPress.
Mặc dù có nhiều biện pháp bảo mật, bước bạn không thể bỏ qua là dùng plugin bảo mật.
Plugin bảo mật như MalCare sẽ quét trang hàng ngày, thông báo ngay nếu bị hack, giúp dọn dẹp dưới 60 giây, và đảm bảo trang web an toàn khỏi hack trong tương lai.
Bảo Vệ Trang Web 24×7 Với Plugin Bảo Mật MalCare