コンポーネントを箱から出しておくことがどれほど有害であるかの物語

この日は、他のすべての目立たない日と同様に始まりました。 仕事に来て、中国のコーヒーメーカーからカプチーノを一杯飲んだ後、彼はウールの場所に座った。 そのうちの1つに出くわして、長い間ソースコードを研究していましたが、よく知られているWYSIWYGエディターの特徴であるFCKに出会いました。 この種の編集者の問題に遭遇したことのある人は、おそらく彼をよく知っているでしょう。



実際、製品自体はサイト管理者にとってのみ面白くて有用ではありません。 サイト上のページを視覚的に編集できます。 しかし彼は、CMSでの実装の安全性、特にサイトのUPLOAD'u写真用の機能セットがあるという点から、私に興味を持っていました。



そして、見よ、CMS開発者は突然、いくつかの重大な間違いを一度に犯し、すぐにサイト上のソースコードの実行にアクセスできるようになりました!



それで彼らは何をしましたか?





1.ボックスから製品をインストールし、構成に2つの値を設定し、製品の使用準備が整っていると考えました。製品に豊富な穴のサンプルが付属しているという事実にまったく注意を払っていません。 したがって、たとえば、ダウンロードスクリプトは非常に予測可能なアドレス/fckeditor/editor/filemanager/connectors/php/upload.phpで利用可能であり、標準キットに付属するテストキットでさえも利用可能です。



2.スクリプトがあります-それはそれが機能することを意味します! 私たちは少しチェックして出来上がりです-写真は外国人のホストです。 ハッキング? そうではないようですが、目標に一歩近づいています。 私たちは、PHPと不愉快なものをアップロードしようとします...スクリプトは、これが未解決のタイプのコンテンツであることを誓います。



3. Googleで、脆弱性の悪用方法に関する記事をいくつか見つけます。最初の投稿では、php5などの.gifファイルなどの処理ルールを含む.htaccessファイルをアップロードするというアイデアに間接的にプッシュします。 私たちは試みます-おっと...再び失敗-再び未解決の種類のコンテンツ。 さらに考えるためにコーヒーに行きます



4.すぐに、FCKEditorに何らかのバグがあり、ファイルを任意のディレクトリにアップロードできるという事実に関する記事に気付きました。 掘り始めて、拡張子がphp.txtのファイルをアップロードし、最後にゼロバイトのディレクトリをソースディレクトリとして指定することになる、さらにいくつかの記事を見つけます。これにより、検証機能の下痢が発生します。 それを膝の上に置いて見よ-それは本当に!



結果は利益です! .phpファイルをホストに簡単にアップロードして実行できます! 脆弱性? むしろ、穴!



もちろん、私は意図的にサイトのリストと脆弱なCMSの名前をここに持ってきません。 議論として、私はそれが狭い円で非常に人気があると言います。 実際、このCMSの多くのサイトは穴でいっぱいであることが判明しました。 多くの人に脆弱性についての情報を書いた手紙を送りましたが、実践が示すように、少なくとも10%を読んで、1%がこの問題を処理してくれれば良いです。



だから私は何を言っている-決して、決して、そして再び、 "ノミ"の存在を調べることなく、コンポーネントの配布を配置しないでください。 データをダウンロードするときは、Webサーバーが実行しないディレクトリに移動するようにしてください(Apacheでは、.htaccessで無効になっています)。 将来、攻撃者の玄関口として機能できるのはこのコンポーネントです。



PR自体の目的のために、Habr(https://docs.google.com/document/d/1sbDhyX8Reu8vgEHzhyltXH6dQYzG4lQV7Lmw2ryjsX0/edit)の尊敬する同僚が参加して開発された標準のプロトタイプがあることに注意してください。 しかし、私たちの現実は、雷が打つまで、ジャガイモは発芽しません:)



All Articles