本ブログは、英語版ブログ「https://www.proofpoint.com/us/threat-insight/post/threat-actors-abuse-github-service-host-variety-phishing-kits」の翻訳です。
【注】
4月19日金曜日の時点で、GitHubは本ブログにリストされているフィッシング素材をホスティングしているすべてのアカウントを削除しました。GitHubは、極めて迅速にシステムの悪用に対処しています。
概要
Proofpointの研究者がこれまで観測してきたように、フィッシング詐欺師や他の脅威アクターは、大規模な消費者向けクラウドストレージ、ソーシャルネットワーキング、Dropbox、Google Drive、Paypal、EbayおよびFacebookなどの、一般に広く使われている商用サービスを利用することでホワイトリストやネットワーク防御を回避しようとしています。
そして少なくとも2017年半ば以降、フィッシング詐欺師は$github_username.github.ioドメインでフィッシング用のWebサイトをホストするためにGitHubサービスの無料コードリポジトリを悪用しています。(GitHubでWebページをホストすることについての詳細はhttps://pages.github.com/をご覧下さい)
これらのリポジトリは、リテールバンクのブランドを悪用するフィッシングメールキャンペーン(図1)を含む、さまざまな悪意のある活動に使用されてきました:
図1:リテールバンクのブランドを悪用し、GitHubでホストされているフィッシングキットに誘導する電子メールルアー(餌)
このメールキャンペーンに対応する実際のフィッシングランディングページは、以下のように表示されます(図2)。
図2:ユーザーのクレデンシャル情報を盗むために悪意のある電子メールメッセージ内のURLからリダイレクトされたリテールバンクのブランドロゴを使用したフィッシングランディングページ
解析
ここで説明するGitHubの悪用事例では、ほとんどの場合脅威アクターは正規のgithub.ioドメイン内に悪用するブランドに類似した正規のコードリポジトリサイトを構築しています。たとえば図1のフィッシングサイトに関連付けられているドメインは、app-l0gin-<bankname> [.] github [.] ioです。
Webインターフェースを使用して類似GitHubアカウントそのものを調べ、次のように設定画面に移動します:
図3:app-l0gin-<bankname> [.] github [.] ioにインストールされたフィッシングキットのアカウントビュー
フィッシングキット内のファイルは次のように表示されます:
図4:app-l0gin-<bankname> [.] github [.] ioのランディングページのソースコード
これを解析すると、HTMLコードは難読化のために、簡単な暗号化が施されています:
図5:app-l0gin-<bankname> [.] github [.] ioの難読化されたソースコード
難読化を解除すると、クレデンシャル情報がHTTP POSTで別のWebサイトに送信されていることがわかります。
図6:app-l0gin-<bankname> [.] github [.] ioの難読化されていないソースコード
github.io上で確認されている多くのアクティブなフィッシングキットにとって、盗んだクレデンシャル情報を別の侵害したWebサイトに送信することは一般的なことのようです。さらに、github.ioプラットフォームはPHPバックエンドサービスを提供していないため、このキットでは一般的なホスト型PHPメソッドは使用されていないようです。
github.ioドメインを単なるトラフィックリダイレクタとして使用しているアクターもおり、この場合実際のフィッシングページは削除されるまでの期間が少し長くなります(図7)。
図7:パブリックなGitHubアカウントでのHTTPリダイレクトの例
個人用の有料アカウントとは違い、パブリックなGitHubアカウントだったため、ProofpointはアクターがホストされているWebページにいつ変更を加えたかを観測することができました。このような可視性は、どのような目的でフィッシングキットに変更が行われたのか等のインサイトを得るのに役立つかもしれません。ほとんどのキットはスクラッチから書かれているわけではなく、異なるアクターによってそれぞれの目的に合うように変更されるため、こういったレベルの可視性はアクターの行動と属性を追跡するために有用かもしれないのです。
図8:パブリックなGitHubアカウントのHTMLソースにおける変更の追跡
HTMLコードの変更をベースに、短縮リンクを含むIOC(indicators of compromise)の更新を観測することができました:
図9:パブリックなGitHubアカウントのソースコードへの追加/削除
アクターはまた、キットのローカルドメインではなくリモートドメインでホストされているPHPスクリプトを使用するようにフィッシングランディングページを変更しました。
図10:リモートドメインからロードされたPHPスクリプトを反映するようにパブリックGitHubのランディングページを変更
GitHubには、どのアカウントがリポジトリ内のファイルを更新しているのかを示すためのインターフェースが含まれています。github.comでホストされているいくつかのフィッシングソースリポジトリを確認したところ、Proofpointは複数のキットを編集していたユーザー 「greecpaid」を特定しました:
図11:「greecpaid」 がGitHubリポジトリ内の複数のファイルをコミット
私たちが彼らのプロフィールを調べると、彼らはGitHubサービス上では活動していないようです。
図12:GitHubサービスでの 「greecpaid」の活動状況
しかし、GitHub上でシンプルな「コミッター」検索を行った結果、このユーザーが最近編集したすべてのフィッシングキットが表示されました。
図13:GitHubサービスにコミットをプッシュしている「greecpaid」の複数のインスタンス
その他の事例
GitHubは、このブログで特定したフィッシングキットをすべて削除しましたが、以下にProofpointが観測したその他のフィッシングと盗まれたブランドの例を示します。
図14:Indeed.comの盗まれたブランドを使ったメール
このメールからリンクされているランディングページは、下の図15に示されています:
図15:Jrgen-employ [.] github [.] ioのクレデンシャルフィッシングのランディングページ
図16:net-mailcn.github.ioのメールアドレス
図17:net-mailcn.github.ioのクレデンシャルフィッシングのランディングページ
また、図18および19の例に示すように、GitHubがホストするフィッシングキットの悪用は、英語圏以外の被害者を狙ったキャンペーンにも広がっています。
図18:盗んだDHLブランドを使ったglobal-dhi [.] github [.] io上のEメール
図19:global-dhi [.] github [.] io上のDHLフィッシングランディングページ
結論
これまでは、脅威アクターは有名で信頼できるコンシューマ向けクラウドサービス、ソーシャルネットワーキング、および商用サービスを使用してファイルをホストすることで、検出を逃れることができました。GitHubサービス上のMicrosoftの無料アカウントは、一般にはオープンソースやその他の公共のソフトウェア開発のためのリポジトリとして使用されており、広範囲の悪用に対して等しく脆弱です。GitHub自体は、この種のマテリアルをホストしている悪意のあるアカウントを特に警戒し、迅速に削除していますが、防御する側も、$ github_username.github.io正規ドメイン上に潜在的な悪意のあるコンテンツがあることを知っておくべきです。
GitHub repositories used for phishing (Inactive as of 4/19)
hxxp://github[.]com/aspenmoris/request
hxxp://github[.]com/aspenmorisuk/confidential
hxxp://github[.]com/business-onlineoutprofile/owa_do
hxxp://github[.]com/chat-we/continue
hxxp://github[.]com/document-sales/drop-paperless-file
hxxp://github[.]com/dropbox4realestate/dgg36463633gffeg3f44
hxxp://github[.]com/dropboxco/dropboks
hxxp://github[.]com/dropboxco/sdjg67rfg4674676sdfg
hxxp://github[.]com/dropboxenquiry/purchasedocs
hxxp://github[.]com/en-employer/return-indeed-accounti-dashbaord
hxxp://github[.]com/exhange-server-embedportal/upgradev3
hxxp://github[.]com/fact-sheet/paperless-dropb-v19
hxxp://github[.]com/fulldetails/housing
hxxp://github[.]com/global-dhI/china-VR5-Parcel
hxxp://github[.]com/intui-nternal/tuit.com-signin
hxxp://github[.]com/jonsnowarya/aspenmoris.com
hxxp://github[.]com/louiewarna/premium-docusign-/docusign
hxxp://github[.]com/mattbuil/joshstephens
hxxp://github[.]com/mattbuil/request
hxxp://github[.]com/mcrsoft-login/mail_owa-gb
hxxp://github[.]com/mufasa123321/dropbox
hxxp://github[.]com/mufasa123321/timothy
hxxp://github[.]com/new-connections/our-v16-time-profile
hxxp://github[.]com/onedrivefile/newfile
hxxp://github[.]com/ourtime-us-com/v3-i-login-CPSessionID-1e1141b3-b626-4ec2-8d2b-309dfa64
hxxp://github[.]com/Payment-inv/adobe.profile-document
hxxp://github[.]com/purchasedocs4realestate/cynthiamorgan
hxxp://github[.]com/Quick-invoice/abobe.authentication
hxxp://github[.]com/secure1Q-chase/dashboard1-dashboardme
hxxp://github[.]com/session2login-online
hxxp://github[.]com/sitashboard/vs02-profile-Return
hxxp://github[.]com/upgrade-telusidentit/app-authorization_oa
hxxp://github[.]com/us-doabox/manage-docx-preview
hxxp://github[.]com/V1-dashboard-online/outl00k-app
hxxp://github[.]com/wardrldaer/requests
hxxp://github[.]com/wardrldder/github
hxxp://github[.]com/webmailcn/authenticate-id
hxxp://github[.]com/node-mirc/live-account
hxxp://github[.]com/net-mailCN/continue
Sampling of domains active since Jan 2019
admin-microsoftonline-com.github[.]io
anastasia-stepanova.github[.]io
app-l0gin-reglons.github[.]io
aspenmorisukcom.github[.]io
binance-btc.github[.]io
blockrmv.github[.]io
bttpromotion.github[.]io
center-of-payments-paypal.github[.]io
dl-dropbox.github[.]io
docussgn.github[.]io
dropboxenquiry.github[.]io
ebay-cardconfiguration.github[.]io
ebay-helpscardbusiness.github[.]io
ebay-home.github[.]io
ebay-my.github[.]io
ebay-pays-sell.github[.]io
ebay-support.github[.]io
ebay-wbe.github[.]io
ebay-wbrr.github[.]io
ebaypaypal.github[.]io
ebaypayserror.github[.]io
ebaypayserror.github[.]io
ebaypayss.github[.]io
ebays-com.github[.]io
errorpaypal.github[.]io
facebooktw-login.github[.]io
gift-cards-paypal.github[.]io
housepropertyie.github[.]io
jrgen-employ.github[.]io
manazaheer.github[.]io
markin.github[.]io
messiade.github[.]io
mez0erague.github[.]io
nondatuta.github[.]io
office-outlook.github[.]io
officialmcafee.github[.]io
outdhl.github[.]io
outdhl.github[.]io
paypal-business-giftcards.github[.]io
paypal-business.github[.]io
paypal-do-home.github[.]io
paypal-egiffts.github[.]io
paypal-egift.github[.]io
paypal-egiftcard.github[.]io
paypal-egifts.github[.]io
paypal-giftcards-us.github[.]io
paypal-giftcards.github[.]io
paypal-me.github[.]io
paypal-payment.github[.]io
paypal-prepaid-gift-cards.github[.]io
paypal-serial.github[.]io
paypal-signgiftcard.github[.]io
paypalerrorpay.github[.]io
paypalgifs.github[.]io
paypalgift.github[.]io
paypalgiftcards.github[.]io
paypalgiftfts.github[.]io
paypalpay.github[.]io
paypalpayments.github[.]io
portabledocuments.github[.]io
propertyandhousing.github[.]io
purchasedocs4realestate.github[.]io
rekus.github[.]io
revolutionnew.github[.]io
richienb.github[.]io
session2login-online.github[.]io
skilltekfeed.github[.]io
updateredirect.github[.]io
upgrading-accounts.github[.]io
us-ppal.github[.]io
we-admin.github[.]io
webmailcn.github[.]io
yotolegoca.github[.]io
ET and ETPRO Suricata/Snort Signatures
Generic Detections for Suricata version 4 and up are in the ET OPEN ruleset
ET POLICY Request for Possible Binance Phishing Hosted on Github.io
ET POLICY Request for Possible Ebay Phishing Hosted on Github.io
ET POLICY Request for Possible Webmail Phishing Hosted on Github.io
ET POLICY Request for Possible Account Phishing Hosted on Github.io
ET POLICY Request for Possible Office Phishing Hosted on Github.io
ET POLICY Request for Possible Outlook Phishing Hosted on Github.io
ET POLICY Request for Possible DHL Phishing Hosted on Github.io
ET POLICY Request for Possible Docusign Phishing Hosted on Github.io
ET POLICY Request for Possible Adobe Phishing Hosted on Github.io
ET POLICY Request for Possible Paypal Phishing Hosted on Github.io
ET POLICY Request for Possible Microsoft Phishing Hosted on Github.io
ET POLICY Request for Possible Facebook Phishing Hosted on Github.io