0

後で抽出して使用するために XML でページのさまざまな部分をフォーマットすると、PHP がどのように安全になるかについて、誰かが光を当てるのを助けることができるかどうか疑問に思っています。基本的に、ページの作成を担当する "index.php" の関数を設定しています。呼び出されると、データベース接続情報とサイト設定を含む一連の XML ファイルを取得します。次に、コードで使用するためにこれらを配列に解析します。その後、全体のページ設定とウィジェット設定について同じことが行われます。

認めますが、私は単純に XML が好きではありません。冗長すぎて潜在的な利点がなく、一般的にデータ ストレージの選択としては適切ではありません (なぜデータベースを使用しないのでしょうか?)。彼は理由を説明していませんが、それでも確信しています。なぜこれが当てはまるのでしょうか?

さらに悪いことに、XML ファイルはグローバル変数に解析されます。エクスプロイトがインデックスに侵入した場合、攻撃者が行う必要があるのは、$GLOBALS をループして、データベースの資格情報やコード上のその他の貴重な情報を取得することだけです。これは、XML にデータを格納することの利点を無効にしているようです。それで、私はここで何が欠けていますか?何かご意見は?

4

2 に答える 2

4

XML ファイルは本質的に安全でも安全でもないわけではありません。それはその使用方法です。XML は単なるデータ形式です。この場合、データの分離方法がセキュリティに大きく貢献しているようには思えません。

直接的な答え:そうではありません。

于 2013-02-13T13:14:22.587 に答える
0

これは憶測だと言ったことは知っていますが、一体何なのですか。

まず、データベースを使用して独自のデータベース接続情報を保存することはできないため、そのビットはどこかにある必要があります。XML は本質的に安全ではないという Deceze の意見は正しい。

セキュリティの側面は、組織内で XML ファイルが PHP とは異なる方法でどのように扱われるかという別の詳細から得られます。私が考えることができる2つのことは次のとおりです。

  1. PHP とは異なる人々が XML を編集することを許可されているかどうか (それらを編集および保存するための優れたフロントエンドがあるかどうかを含む)

  2. すべての Web サイト ファイルが侵害される可能性のある場所 (GitHub、USB サム ドライブなど) と同期またはバックアップされている場合、db パスワードなどの機密情報を除外する必要があるため、ファイル拡張子 .xml を使用してファイルをフィルター処理するのは簡単です。除外。

もちろん、これらは .json ファイルや .csv ファイルにも簡単に適用できますし、実際には別のフォルダーにある .php ファイルにも適用できます。

最後に、XML の目的は次のとおりです。

  • 誰かが何をしているのかを知らずにファイルをいじくり回すと、かなり簡単にファイルを壊してしまい、解析できなくなり、システム全体が機能しなくなります。結論: 一部の人々は、XML をいじるのをためらっています。それがセキュリティと見なされるかどうかはわかりませんが、あいまいな動機を持つ同僚の世界ではもっともらしいです.
于 2013-02-13T14:59:25.700 に答える