Bài này mình mới đọc trên Reddit hôm qua thôi, có thể nhiều anh em thấy chuyện này bình thường nhưng cộng đồng dev nước ngoài, họ tỏ ra rất bức xúc và không hài lòng với phốt này của GoDaddy.
Chuyện bắt đầu với Igor Kromin – người đang sử dụng Hosting của GoDaddy và anh ta nhận thấy có chuyện không ổn với website của mình.
Mình sẽ dịch sơ lại + chém gió + bổ sung 1 số đoạn cho dễ hiểu hơn nhằm giúp người đọc nắm được tại sao việc này quan trọng, có thể gọi là phốt cũng được vì inject Javascript vào trang web của khách hàng mà không được sự cho phép sẽ ảnh hưởng tới nguy cơ bảo mật, tính riêng tư và làm chậm website đi.
1. Cách GoDaddy lén lút tiêm mã JS vào trang web của tôi.
Gần đây, tôi gặp sự cố với giao diện admin website đang chạy, tôi quyết định kiểm tra trong console của Dev Tools (F12) có hiển thị lỗi nào không? Thật may tôi đã phát hiện ngay 1 lỗi, đại khái là tệp map Javascript đang được tải (nhưng không thành công). Điều này nghĩa là tệp Javascript này đã được tải ngay trên website của tôi. Nó khiến tôi suy nghĩ và quyết định tìm hiểu kỹ hơn.
Tôi đã kiểm tra toàn bộ source code để xem có file lạ nào được thêm gần đây không? Rất tiếc là không, cho nên tôi thử view source để xem chi tiết có mã lạ nào trong trang web của tôi không. Sau 1 hồi tìm kiếm, tôi nhận thấy trong tất cả trang web đều bị chèn đoạn mã Javascript lạ, ngay trước khi đóng thẻ </html>
.
<script>'undefined'=== typeof _trfq || (window._trfq = []);'undefined'=== typeof _trfd
&& (window._trfd=[]),_trfd.push({'tccl.baseHost':'secureserver.net'}),
_trfd.push({'ap':'cpsh'},{'server':'xxxxxxxx0000'})
// Monitoring performance to make your website faster.
If you want to opt-out, please contact web hosting support.</script>
<script src='https://img1.wsimg.com/tcc/tcc_l.combined.1.0.6.min.js'></script>
Dĩ nhiên GoDaddy rất lịch sự khi thêm đoạn comment để hầu hết người dùng không chú tâm:
// Monitoring performance to make your website faster. If you want to opt-out, please contact web hosting support.
Câu hỏi là: tại sao GoDaddy lại lén lút thêm mã JS vào website của tôi? Liệu GoDaddy muốn theo dõi?
Google Analytics và Tawk.to là quá đủ và chúng đều do tôi tự nguyện thêm vào nhằm tăng trải nghiệm qua chat tức thời hay chức năng thống kê từ Google Analytics. Tuy nhiên, gần đây tôi cũng dần gỡ bỏ cả 2 đoạn mã theo dõi này để giải phóng trang web của tôi.
Thực sự tôi không muốn tin rằng đoạn mã Javascript trên được tiêm từ máy chủ của GoDaddy vào website thuộc quyền sở hữu của tôi mà không được sự đồng ý của chính tôi.
Hóa ra chính xác đó là những gì GoDaddy đang làm và họ biện minh đó là thu thập số liệu để cải thiện hiệu suất và làm cho website của bạn nhanh hơn.
Công nghệ được sử dụng ở đây có tên gọi: Real User Metrics (RUM) và Goddady có 1 trang thông tin về nó – Why am I signed up for Real User Metrics? Nếu bạn là khách hàng ở US (tuy nhiên trang web của tôi không lưu trữ trong 1 datacenter ở US) thì bạn tự động được chọn tham gia dịch vụ này và tất cả các trang trên trang web của bạn sẽ được chèn mã JavaScript ở trên.
Phần tồi tệ nhất của việc chèn đoạn mã Javascript trên cũng đến từ GoDaddy khi ở trang trợ giúp của họ, họ thừa nhận rằng điều này có thể làm chậm hoặc phá vỡ trang web của bạn!
Quá nhiều điều ảnh hưởng trực tiếp tới website của bạn cho một công cụ được thiết kế để cải thiện hiệu suất và độ tin cậy mà đáng ra bạn không cần dùng đến nó, hoặc bạn cũng không biết là website mình đang được GoDaddy chọn mặc định!
Trích đoạn lời thú tội ngọt ngào của GoDaddy ngay trên trang thông tin bên trên:
2. Hướng dẫn ngăn chặn:
May mắn thay, có 1 cách để khắc phục vụ này bằng cách từ chối trực tiếp. Dưới đây là hướng dẫn:
# Bước 1: từ bảng điều khiển Hosting, click vào dấu 3 chấm ở góc trên bên phải. Sau đó nhấn nút Help Us
.
# Bước 2: một hộp thoại xuất hiện, nhấp vào Opt Out
để chọn không tham gia RUM.
# Lưu ý: bạn chỉ có thể chọn Tham Gia (Opt-Out)
hoặc Từ Chối (Opt-Out)
sau mỗi 24h. Tức chọn Tham Gia thì 24h sau mới được từ chối và ngược lại.
Tôi không cố chống lại việc các nhà cung cấp hosting có quyền theo dõi các máy chủ đang chạy của họ. Việc sử dụng 1 công nghệ như RUM là 1 cách tuyệt vời để làm điều đó, nhưng điều này giống như việc che mắt người dùng cuối. Việc giám sát máy chủ không can thiệp sâu như cách GoDaddy tiêm (inject) 1 đoạn mã Javascript vào các trang web đang chạy của khách hàng. Ít nhất trong mắt tôi, điều này khiến tôi mất niềm tin vào GoDaddy.
Buồn cười thay, sau khi tìm ra vụ GoDaddy chèn mã JS vào website của tôi. Lỗi thực sự mà tôi gặp trong trang quản trị không phải từ phía GoDaddy mà liên quan đến 1 bug trong Safari và chỉ cần đóng và mở lại Safari là vào được.
Đôi khi tìm lỗi, ta vô tình tìm thấy lỗi khác. Và lần này, tôi tin GoDaddy cần tôn trọng người dùng hơn. Cảm ơn các bạn đã đọc bài viết này.
Nguồn: blog của Igor Kromin