Apache axis コンポーネントのリモート コマンド実行の脆弱性を修正する方法

王林
リリース: 2019-11-27 17:41:01
転載
5473 人が閲覧しました

Apache axis コンポーネントのリモート コマンド実行の脆弱性を修正する方法

最近、Sangfor は、Apache axis コンポーネントのリモート コマンド実行の脆弱性を悪用する方法を発見しました。この脆弱性の本質は、管理者による AdminService の設定ミスにあります。enableRemoteAdmin 属性が true に設定されている場合、攻撃者はリモートから AdminService インターフェイスを使用して、構築された WebService を自己公開することができます。生成された WebService にアクセスするとき、内部参照クラスは、リモート コマンド実行の脆弱性を悪用するために使用されます。

axis コンポーネントの紹介

axis の正式名 Apache EXtensible Interaction System は、Apache 拡張可能対話システムです。 axis は、サーバー側、クライアント側、およびゲートウェイの SOAP 操作を作成するための基本的なフレームワークを提供します。 axis の現在のバージョンは主に Java 用であり、C 指向のバージョンは開発中です。 axis は正確には SOAP エンジンではありませんが、スタンドアロン SOAP サーバーとしても、サーブレット エンジン (Tomcat など) に埋め込まれたサーバーとしても使用できます。

脆弱性分析

脆弱性の本質は、管理者の AdminService の設定エラーです。 EnableRemoteAdmin 属性が true に設定されている場合、攻撃者は WebService を構築して freemarker コンポーネントの template.utility.Execute クラスを呼び出し、リモートで使用することができます。 AdminService インターフェイスを使用して WebService を公開し、生成された WebService インターフェイスに再度アクセスし、実行するコマンドを渡すと、リモート コマンド実行の脆弱性を悪用できます。

脆弱性の再発

axis 1.4 tomcat6の環境を構築し、AdminService構成のenableRemoteAdmin属性を次のように設定します。真実 。

次に示すように、WebService 公開用に構築されたデータを渡します。

Apache axis コンポーネントのリモート コマンド実行の脆弱性を修正する方法

次に、WebService インターフェイスを呼び出してコマンドを渡し、実行します。以下:

Apache axis コンポーネントのリモート コマンド実行の脆弱性を修正する方法

修復提案

1. URL アクセス制御ポリシーの構成: Axis サーバーに展開パブリック ネットワークでは、ACL により /services/AdminService および /services/FreeMarkerService パスへのアクセスが禁止されています。

2. 軸のリモート管理機能を無効にする: バージョン 1.4 未満の軸では、デフォルトでリモート管理機能がオフになっていますので、必要な場合以外は有効にしないでください。これをオフにする必要がある場合は、axis ディレクトリの WEB-INF フォルダーにある server-config.wsdd ファイルを変更し、「」の値を設定する必要があります。 EnableRemoteAdmin" は false です。

Web セキュリティについて詳しく知りたい場合は、Web サーバー セキュリティ

を参照してください。

以上がApache axis コンポーネントのリモート コマンド実行の脆弱性を修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:secpulse.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート