Pipdig 在報告暴露供應商後門、內置終止開關和惡意 DDoS 代碼後更新 P3 插件

已發表: 2019-04-03

上週末,一家小型商業主題公司 Pipdig 在多份報告揭露其 Pipdig Power Pack (P3) 插件中添加了一連串不道德的代碼後,一直處於醜聞的中心。

3 月 29 日星期五,Wordfence 威脅分析師 Mikey Veenstra 發布了一份報告,其中包含 Pipdig 內置在其插件中的後門代碼示例,以及一些令人討厭和可疑的代碼添加。

“我們已經確認,插件 Pipdig Power Pack(或 P3)包含已被誤導性變量名稱、函數名稱和註釋混淆的代碼,以隱藏這些功能,”Veenstra 說。

其中包括將未經身份驗證的密碼重置為硬編碼字符串,該字符串故意被代碼註釋掩蓋,表明它被添加為“檢查新的社交渠道以添加到導航欄”。 Veenstra 還演示了該插件如何包含用於未經身份驗證的數據庫刪除的代碼,其中 Pipdig 團隊可以使用 P3 插件遠程破壞任何站點 WordPress 站點。

遠程站點刪除的代碼在 4.8.0 版本中被刪除,但對於尚未更新的用戶來說,這仍然是一個問題。 ASOS 的 iOS 工程師 Michael Waterfall 測試了“終止開關”功能,並證明它仍然適用於以前的版本。

Veenstra 的調查還發現了插件的 cron 事件中存在問題的遠程調用、未公開的內容和配置重寫,以及在用戶不知情的情況下激活 P3 時立即停用的流行插件列表。 他發現其中一些插件與 admin_init 一起被停用,因此任何用戶嘗試重新激活插件都不會堅持。

Wordfence 估計 P3 插件的安裝基礎為 10,000-15,000 個站點。 插件版本 4.8.0 中所做的更改不會在更改日誌中透明地標識,因此用戶不容易知道發生了什麼更改。 內容過濾和插件停用保留在最新版本中。 這些未經許可執行的隱蔽功能可能會對使用插件的網站產生意想不到的後果,非技術用戶可能無法自行修復。

Pipdig P3 插件對競爭對手的網站執行 DDoS 攻擊

在 Wordfence 發布分析的同一天,英國的自由 Web 開發人員 Jem Turner 發布了對 P3 插件的冗長分析。 她進一步深入研究了遠程請求,展示了 Pipdig 如何使用 P3 插件對還為博主提供 WordPress 主題和安裝服務的競爭對手執行 DDoS 攻擊。 該代碼在用戶站點上觸發每小時一次的 cron 作業,有效地使用其客戶的服務器向競爭對手的站點發送惡意請求。

代碼註釋告訴我們這是“檢查 CDN(內容分發網絡)緩存”。 不是。 這是對 pipdigz.co.uk 上的文件 (id39dqm3c0_license_h.txt) 執行 GET 請求,該文件昨天早上在響應正文中返回了“https://kotrynabassdesign.com/wp-admin/admin-ajax.php”。

在沒有任何人工干預的情況下,任何一個運行 pipdig 插件的博主都會在沒有任何人工干預的情況下每隔一小時發送一個帶有偽造用戶代理的請求到“https://kotrynabassdesign.com/wp-admin/admin-ajax.php”,並隨機發送附數字串。 這有效地在 kotrynabassdesign.com 的服務器上執行小規模 DDoS(分佈式拒絕服務)。

Turner 還聯繫了 Pipdig 的競爭對手 Kotryna Bass,後者說她在發現她的 admin-ajax.php 文件受到某種攻擊後聯繫了她的主機。 巴斯與她的主人的交流也發表在特納的報告中。

Turner 的帖子解釋了當用戶在內容中包含指向競爭對手的鏈接時,Pipdig 的 P3 插件代碼如何操縱鏈接以指向他們自己的產品和服務:

在這裡,我們有 pipdig 的插件搜索“blogerize.com”的提及,將字符串分成兩部分並重新連接 - 連接 - 以便在跨插件執行大量“在文件中查找”時更難找到提及競爭對手的內容(除其他外) )。 當插件在博客的內容(帖子、頁面)中找到指向 blogerize.com 的鏈接時,它們會被替換為指向“pipdig.co/shop/blogger-to-wordpress-migration/”的鏈接,即 pipdig 自己的博客遷移服務。 交換這些鏈接可以提高 pipdig 的 SEO 優勢,並且絕大多數博主不會注意到切換器(尤其是在頁面/帖子被編輯時,指向 blogerize 的鏈接將正常顯示在後端)。

該插件在執行任何這些操作之前都沒有徵得用戶的許可,並且其中大多數都是用混淆代碼實現的。 Turner 的調查還涵蓋了 P3 插件如何收集數據和更改管理員密碼。 許多發現與 Wordfence 的分析重疊。

“我知道已經聯繫 Wordfence 徵求意見,儘管我不知道他們正在寫一篇文章,反之亦然,”特納說。 “考慮到 WordPress 用戶的風險,我對他們寫這篇文章並不感到驚訝。”

她一直與當局就 Pipdig 的不道德編碼做法和侵犯隱私權進行聯繫。

“從我的角度來看,我一直在聯繫 Action Fraud(通過他們的網站提交報告)和 NCSC(他們將我指向 Action Fraud 並給了我一個電話號碼)。 從 pipdig 的角度來看,他們的博客文章中存在法律訴訟的威脅,但我還沒有收到任何消息。”

Pipdig 的公共響應解決了關鍵問題

Pipdig 創意總監 Phil Clothier 發表了該公司的公開回應,其中將最近的調查描述為“關於 pipdig 的各種指控和謠言”,並就最近的事態發展對他的公司造成了多麼痛苦的情緒提出了懇求。 他聲稱他的團隊和他們的支持者正在受到騷擾。

在推出 P3 插件的 4.8.0 版本,刪除了一些但不是全部的攻擊性代碼後,Clothier 為他的帖子選擇了 Q&A 風格的格式,將每個問題都放在現在時:

你是 DDOS 的競爭對手嗎?
不。

你“殺死”網站嗎?
不!

你有能力通過 pipdig 電源包殺死網站嗎?

關於他們內置的“kill switch”功能,該功能檢測所有帶有 WordPress 前綴的表並刪除每個表,Clothier 說這只是一個將站點重置為默認設置的功能。 他故意歪曲它的作用:

舊版本的插件中有一個功能,可用於將站點重置為默認設置。 此功能不存在惡意或無意使用的風險。 我可以明確地說,如果您使用 pipdig 主題,您的網站沒有風險。 此功能已被挖掘並標記為“Kill Switch”,以便對我們產生最大的負面影響。

Clothier 聲稱該功能於 2018 年 7 月在 P3 插件中可用,當時第三方開始在他們自己的網站上發布 Pipdig 主題進行銷售:

第 3 方能夠非法下載我們所有的主題並將它們發佈到我們自己網站的克隆版上。 這包括我們主題的預覽和購買它們的能力。 從那裡購買了 pipdig 主題的人們首先向我們發出了警告,但發現某些功能無法正常工作。 經過調查,我們發現受害者是從第三者那裡購買的主題,以為是我們。 第 3 方不僅獲得了主題支付的經濟利益,還利用它作為向受害者網站注入惡意軟件和廣告的一種方式。 重置功能是為了消除第 3 方使用我們的主題託管預覽網站的能力。 它奏效了,它們從此消失了。 然後在更高版本的插件中刪除了該功能。

正如 Wordfence 在更新的文章中指出的那樣,這是一個錯誤的說法。 負責數據庫刪除的代碼的第一個實例於 2017 年 11 月提交給該插件。

該公司在首次發佈公開聲明時未能解決 Wordfence 分析中提出的最關鍵問題。 相反,在協調針對競爭對手的 DDoS 攻擊問題上,Pipdig 指責用戶並暗示他們可能已將競爭對手的 URL 添加到他們的網站。

“我們現在正在研究為什麼這個函數會返回這個 url,”Clothier 說。 “但是,這似乎表明某些‘作者 URL’已設置為‘kotrynabassdesign.com’。 我們目前不知道為什麼會這樣,也不知道網站所有者是否故意改變了這一點。”

Wordfence 今天發布的進一步調查顯示,Pipdig 還在其 Blogger 模板中添加了 DDoS 代碼,並且直到昨天還在積極發出惡意請求:

在調查 Pipdig 的 WordPress 插件和主題期間,我們還發現了一些與他們的 Blogger 主題相關的奇怪代碼。 此代碼是 Pipdig 針對其競爭對手的可疑 DDoS 活動的一部分,並且一直有效到 4 月 1 日,即 Pipdig 否認任何此類行為的四天后。

一些 Pipdig 的 Blogger 主題已被確認可以對 Pipdig 的服務器進行外部 JavaScript 調用,特別是對腳本 hXXps://pipdigz[.]co[.]uk/js/zeplin1.js。

3 月 31 日,隨著調查公開,Pipdig 刪除了其公共 Bitbucket 存儲庫,並用一個“乾淨的”替換它,刪除了三年的提交歷史。 Wordfence 和許多其他人在它被刪除之前克隆了存儲庫,並保存了頁面快照以在調查中引用。

Pipdig 的公開聲明包含一些其他虛假聲明,這些聲明在 Wordfence 的後續代碼示例中進行了概述。 Clothier 通過對媒體進行中傷來結束這篇文章,大概是為了鼓勵客戶不要相信他們從其他來源讀到的內容。

我聯繫了 Pipdig 以徵求他們對最近事件的評論,但 Clothier 拒絕回答我的任何問題。 其中之一就是為什麼該插件會在不通知客戶的情況下禁用 Bluehost 的緩存插件。

Clothier 表示,除了他在公開聲明中所說的內容外,他沒有任何評論,但鼓勵任何有興趣閱讀 4.9.0 版代碼中添加的新評論的人:

我們還更新了插件的 4.9.0 版本,其中包括代碼中的額外註釋,這將有助於清除 Bluehost 緩存和 the_content() 過濾器等問題。

如果有人不確定,我們建議一如既往地更新到最新版本。 然而,我們也認為以前的版本也沒有嚴重的問題。

Pipdig 拒絕回答有關許可的問題,但這些產品似乎沒有獲得 GPL 許可。 這可能就是為什麼該公司認為它有權對那些他們認為“竊取”他們的主題的人採取行動。

Pipdig 客戶對供應商後門和 DDoS 攻擊的報告反應不一

Pipdig 的用戶群在不知不覺中被用來針對公司的競爭對手,這可能是我在 WordPress 歷史上從一家主題公司看到的最無恥的濫用行為之一。 無論公司打擊未經授權分發其主題的動機如何,這些類型的後門和未公開的內容重寫都是站不住腳的。 他們掠奪用戶的信任,在這種情況下,受害者主要是博主。

這個故事中更令人費解的方面之一是,Pipdig 的許多用戶似乎對這些報告中發現的嚴重性並不擔心。 在不完全了解產品的內部運作的情況下,許多客戶會根據他們對公司的感覺做出決定,而不管面對應該導致他們質疑自己體驗的事實。

其他人對他們的網站被用於攻擊感到憤怒。 對於可能不得不首先向開發人員付費才能啟動其網站的非技術用戶來說,設置一個新主題並不是一件容易的事。

“pipdig 的公開回應讓我大吃一驚,”Jem Turner 說。 “我知道他們指望他們的用戶完全不是技術背景來欺騙他們,而且一開始它似乎確實有效,但任何有一點編碼知識的人都可以看出他們在撒謊,我真的不明白他們認為他們會如何僥倖逃脫。”

這一事件凸顯了商業插件和主題生態系統是多麼不受監管,以及用戶對濫用權力的公司的保護是多麼少。 如果您是受此事件影響的 Pipdig 客戶,則無法保證該公司將來不會在您的站點中構建更多後門。 任何類型的權威都不會審查插件更新。 幸運的是,您可以採取一些措施來為您的網站創建一個更安全的環境。

首先,尋找 GPL 許可的主題和插件,因為它們賦予您作為用戶的更多自由,並且與 WordPress 的合法許可兼容。 GPL 許可的產品也有力地表明作者尊重用戶自由和此開源許可支持的共享經濟原則。

許多知名主題公司選擇在 WordPress.org 上託管其產品的配套插件,以便於分發和發布更新。 官方目錄不允許本文中描述的這些陰暗的編碼做法,並且所有插件都經過了 WordPress 插件團隊的安全審查。 如果您擔心代碼質量和濫用的可能性,請對您的下一個潛在商業主題提供商進行一些研究,或者選擇經過更嚴格審查過程的免費 WordPress.org 託管主題和插件。