CVE-2017-2989 - 緩和策
Windows および Linux 向け Adobe Campaign バージョン 6.11 (16.11.8790) のセキュリティ更新をリリースしました。このアップデートは、ウェブアプリケーション(Microsite、Survey など)での重要な入力検証バイパスを解決します。データベース(CVE-2017-2989)に任意のデータを書くために利用されるかも知らない。

説明

このドキュメントは、Adobe Campaign v6.0.x インスタンスに関連しています。

次のものは8767まで v6.1ビルドでも利用できますが、ビルドのアップグレードは最推奨されます

注意:

最新の6.1.1でも、バージョン 6.x (HTML 5 & Webkit HTML to PDF) だけが固定されています。Web アプリケーションをこの engine で更新します。または、v6.0の緩和手順に従います。

Screen_Shot_2017-03-09_at_5_47_24_PM

最初の mitigation:すべての保管アクティビティを手動で保護します

次の方法があります:

  • すべての保管アクティビティを JavaScript コードで置き換えます(reconciliation キーをご自分で定義してください)。
  • クリーンアップを行うには、すべての保管の前にスクリプトのアクティビティを追加します(強制に reconciliation キーおよび運用)。

番目の mitigation:すべての保管アクティビティを手動で保護

つの javascript サーバーファイルをパッチ取り付けできます:

  • formbase.js (datakit/xtk/fra/js/server/formbase.js)。パッチ取り付けは次のとおりです。
    • FormBase.prototype.loadContext
    • FormBase.prototype.pushActivityHistory
    • FormBase.prototype.popActivityHistory
  • webApp.js (/datakit/xtk/fra/js/server/webApp.js)。パッチ取り付けは次のとおりです。
    • PreFillActivity.prototype.checkIdentifierImpl
    • PreFillActivity.prototype.loadEntityImpl
    • WriterActivity.prototype.write

 

これらのパッチはエクストラネットダウンロードセンターで検索できます。

追加の保護:「webapp」オプレーターの権限を制限します(受信者以外に削除しないでください)

「webapp」オプレーターのアドミン権限を削除することもできます。詳しい手順書はこちらにありますドキュメントの中に: 

  1. 「webapp」セキュリティグループを作成します。
  2. 「webapp」オプレーターからアドミンという名前の権利を削除します。
  3. 「webapp」セキュリティグループに 「webapp」 オプレーターを追加します。
  4. Web アプリケーションまたはアンケートで入力できる各受信者(またはプロファイル)フォルダーごとに、「webapp」セキュリティグループを追加します。

または、次のパッケージを読み込みます。

<package ignoreWarnings="true">
  <entities schema="xtk:group">
    <group label="Web Application agents" name="webapp" type="1">
      <folder _operation="none" name="xtkGroup"/>
      <operatorGroup>
        <group _operation="none" name="webapp" type="1"/>
        <operator _operation="none" name="webapp" type="0"/>
      </operatorGroup>
    </group>
  </entities>
 
  <entities schema="xtk:operatorGroup">
    <operatorGroup _operation="delete">
      <group _operation="none" name="admin" type="2"/>
      <operator _operation="none" name="webapp" type="0"/>
    </operatorGroup>
  </entities>
 
  <installScript>
    var folders = NLWS.xtkQueryDef.create({queryDef:{
      schema: "xtk:folder",
      operation: "select",
      select: { node: [
        {expr: "@name"}, {expr: "@id"}, {expr: "@model"}
      ]},
      where: { condition: [
        {expr:"@model IN ('nmsRecipient', 'nmsVisitor', 'nmsPurl')"}
      ]}
    }}).ExecuteQuery();
     
    for each( folder in folders.getElements("folder") ) {
      if( folder.$model == "nmsPurl" )
        folderRights = "read";
      else
        folderRights = "read|write";
      NLWS.xtkSession.Write({folder: {
          id: folder.$id,
          xtkschema: "xtk:folder",
          _operation: "update",
          rights: {
             _operation:"insertOrUpdate",
             propagate: "true",
             rights:    folderRights,
             "folder-id": folder.$id,
             operator: {
                name: "webapp",
                type: "1",
                _operation: "none"
             }
           }
         }
      });
    }
  </installScript>
 
</package>

説明に従い、セキュリティを向上させるために、別のア「webapp」オプレーターを作成することもできます。

注意:

Web アプリケーションが信者がの削除を有効にしたい場合は、上のパケッジから rights: "read|write" rights: "read|write|delete" に切り替えてできます。