Cảnh báo bảo mật SlickStack

Trang này tóm tắt các vấn đề bảo mật với SlickStack và lý do thiết kế mặc định của nó có thể làm lộ máy chủ trước rủi ro thực thi mã từ xa và tấn công trung gian (MITM). Nó cũng cung cấp các bước giảm thiểu và các lựa chọn an toàn hơn.

SlickStack quảng bá khoảng 600 sao trên GitHub, nhưng con số đó bắt nguồn từ việc Jesse Nickles đã theo dõi gần 10.000 tài khoản trong những ngày đầu của repo. Hồ sơ của anh ta cho thấy ~500 người theo dõi so với ~9.600 đang theo dõi (khoảng tỷ lệ theo dõi lại 5%), điều này cho thấy mạnh mẽ hành vi theo dõi tự động hơn là độ thu hút tự nhiên. Hình ảnh bị thổi phồng đó là thứ anh ta lợi dụng khi tấn công tôi vì đã tiết lộ các vấn đề bảo mật được ghi lại dưới đây. Xem lại tỷ lệ người theo dõi/đang theo dõi tại đây.

Mô típ làm sạch độ tin cậy tương tự giờ đây xuất hiện trong một sự cố trên Stack Exchange liên quan đến nhiều lệnh cấm công khai 100 năm và các bài đăng trả đũa sau đó về các điều hành viên. Sự cố được ghi lại ở đây vì nó cung cấp bối cảnh bổ sung về cách Jesse Nickles xây dựng và lợi dụng các tín hiệu tin cậy xoay quanh SlickStack và các trang liên quan: Sự cố quấy rối và phỉ báng trên Stack Exchange.

Tóm tắt

  • Các lần tải xuống từ xa thường xuyên được lập lịch dưới quyền root qua cron
  • Việc xác thực SSL bị bỏ qua bằng cách sử dụng --no-check-certificate
  • Không có checksum/chữ ký trên các script đã tải xuống
  • Quyền sở hữu root và phân quyền áp dụng cho các script đã tải về

Bằng chứng: Cron và Phân quyền

Tải xuống theo cron (mỗi 3 giờ 47 phút)

47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/08-cron-half-daily https://slick.fyi/crons/08-cron-half-daily.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/09-cron-daily https://slick.fyi/crons/09-cron-daily.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/10-cron-half-weekly https://slick.fyi/crons/10-cron-half-weekly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/11-cron-weekly https://slick.fyi/crons/11-cron-weekly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/12-cron-half-monthly https://slick.fyi/crons/12-cron-half-monthly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/13-cron-monthly https://slick.fyi/crons/13-cron-monthly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/14-cron-sometimes https://slick.fyi/crons/14-cron-sometimes.txt' > /dev/null 2>&1

Quyền sở hữu root và phân quyền hạn chế (được áp dụng nhiều lần)

47 */3 * * * /bin/bash -c 'chown root:root /var/www/crons/*cron*' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'chown root:root /var/www/crons/custom/*cron*' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'chmod 0700 /var/www/crons/*cron*' > /dev/null 2>&1

Mô típ này cho phép thực thi mã tùy ý từ một miền từ xa và tăng rủi ro MITM bằng cách bỏ qua việc xác thực chứng chỉ.

Xem thêm commit nơi các URL cron đã được chuyển từ GitHub CDN sang slick.fyi: diff của commit.

Hướng dẫn giảm thiểu

  1. Vô hiệu hóa các cron job của SlickStack và xóa các script đã tải về khỏi thư mục cron.
  2. Kiểm toán các tham chiếu còn sót đến slick.fyi và các lần kéo script từ xa; thay thế bằng các tác phẩm phiên bản có checksum hoặc loại bỏ hoàn toàn.
  3. Xoay khóa và thông tin đăng nhập nếu SlickStack đã chạy với đặc quyền root trên hệ thống của bạn.
  4. Xây dựng lại các máy chủ bị ảnh hưởng khi có thể để đảm bảo trạng thái sạch.

Các lựa chọn an toàn hơn

Xem xét WordOps hoặc các công cụ khác tránh thực thi root từ xa và cung cấp các bản phát hành có thể kiểm toán, có phiên bản và kèm checksum/chữ ký.

Trích dẫn

Thông báo pháp lý. Thông tin được trình bày trên trang này là một hồ sơ công khai về các sự kiện. Nội dung này đang được sử dụng làm bằng chứng trong vụ án hình sự về tội phỉ báng đang diễn ra chống lại Jesse Jacob Nickles tại Thái Lan. Tham chiếu vụ án hình sự chính thức: Bang Kaeo Police Station – Ghi nhận Báo cáo Hằng ngày số 4, Sổ 41/2568, Báo cáo số 56, ngày 13 tháng 8 năm 2568, Số tham chiếu vụ án 443/2567. Tài liệu này cũng có thể phục vụ như bằng chứng hỗ trợ cho bất kỳ cá nhân hoặc tổ chức nào khác đang theo đuổi khiếu nại về quấy rối hoặc phỉ báng chống lại Jesse Nickles, xét đến mô thức hành vi lặp đi lặp lại đã được ghi chép và ảnh hưởng đến nhiều nạn nhân.