3300のグローバルインターネットプロジェクトのソースを受け取りました

数か月前、私たち( 2ComradesAnton Isaykin )は、大規模なインターネットプロジェクト(Rambler、Mail、Yandex、Operaなど)に固有の脆弱性を発見しました。 有名なサイト(合計3320サイト)のファイル構造、場合によっては完全なソースコードにアクセスすることができました。



21世紀には、このような脆弱性を見つけることは難しいようです。 すべてがすでに見つかっているようですが、見つからないものは非常に深いところにあります。 今日の悪の根源は完全に日常的なものであることが判明しました。 確かにあなたはそれぞれSVNバージョン管理システムを扱ったことがあるでしょう。



SVNは、数十または数百の開発者の共同開発のための高度なツールです。 アーキテクチャにより、SVNはメタファイルを各プロジェクトディレクトリに格納し、 隠された .svnディレクトリにきちんと折りたたんでいます。 エントリと呼ばれるファイルの1つに、 .svnと同じフォルダーにあるすべてのファイルとディレクトリのリストがあります。 リポジトリの場所、ファイルのサイズ、変更の日付、プロジェクトで作業しているユーザーのログインに関する情報もあります。 すでに悪くないですよね? SVNを使用してプロジェクトを開発する場合、 draftcopy.ru / .svn / entriesを見ると、作成者、最新の変更、メインリポジトリブランチへのリンクなどのプロジェクトルートのファイル構造が表示されます。



しかし、さらに先へ進むことができます。 同じ.svnフォルダーにはtext-baseディレクトリがあり、リポジトリ内のすべてのファイルの最新バージョンが含まれています。 また、ファイルには、インタープリターにすぐに送信できる標準の拡張子(.phpなど)がありませんが、追加の拡張子.svn-baseがあるため、ファイルを「そのまま」要求した人にファイルが提供されます。 。 裸のソースコード!



draftcopy.ru/.svn/text-base/index.php.svn-base



説明された画像は理想的であり、ほとんどの場合そのようなものでしたが、何らかの理由で依然として多くのソースコードを取得できなかったことは注目に値します。



発見された脆弱性が過去9年間でほとんどのプロジェクトに内在していることを初めて認識し、Runetを完全にスキャンして、インターネットプロジェクトがどのように生き、興味深い統計を取得するかを決定しました。 しかし、それがどうだったかという話の前に、白髪の管理者にこれから自分を守る方法を教えてください...



脆弱性保護



脆弱性はいくつかの方法で回避できます。 額へのパスは、ポート80のSVNメタディレクトリへのアクセスを禁止することです。 Webサーバーツール。



nginxのソリューション


location ~ /.svn/ {
    deny    all;
}

      
      





nginx` , server . , . — .



Apache


<Directory ~ ".*\.svn">
    Order allow,deny
    Deny from all
    Satisfy All
</Directory>

      
      





, httpd.conf apache .svn .



SVN
— . , , , . . svn export .

twocomrades.ru













, . -, ru. , . , 3000 .



, , , 200 500 , js-. - 200 , .



, . 4 . . , ( com 700 ( 2 ru)).



- , , . , , , . .



, . (yandex.ru, rambler.ru, mail.ru, opera.com, rbc.ru, 003.ru, bolero.ru, habrahabr.ru, 19 ), , , 3000+ .



opera.com .



:

: 2253388

: 3320



, . , . , . , .

, …



:

  1. SVN, ;
  2. CSS CSS $make 0_0;
  3. 0_0, « » ;
  4. «» ;
  5. MySQL, html ;
  6. CodeIgniter;
  7. PostgreSQL wikimedia => PostgreSQL MySQL ;-) ;-(
  8. ( ) perl.
  9. 10 «hack» «secure» ;
  10. , phpmyadmin «__xpma123uff__» , ;
  11. inc , .php, .


P.S. , .

P.S.S. :

P.P.P.S. oowl.

P.P.P.P.S. , . , xmlapi, xsl . , , . , , .



, , - nginx :














All Articles