0x01 不正
不正アクセスの問題は、一般ユーザーがログインした後、またはログインしていない後に、js インターフェイスを結合し、メッセージを作成し、管理者の権限操作を実装する権限を超えてしまうことにあります。理由: バックエンドは Cookie/セッションの ID 情報を検証しなかったので、一般ユーザーの権限で管理者権限の機能を実現できました。
初め
Webpack パッケージ化により多くの JS インターフェイスがリークされます。ここでは、Vue3+Webpack インターフェイス リークの作成プロセスを示します。Vue3-
cli を使用してプロジェクトを作成し
、2 つのファイル (1 つはルーター ディレクトリ内のindex.js で、もう 1 つは ming) を変更します。 vue
npm ビルド パッケージ webpack を実行して dist フォルダーを生成し、このフォルダー内のすべてのコンテンツをパゴダ パネルに配置して表示します
Web サイト設定ファイル Vue Router をルーティング管理用に変更します。シングルページ アプリケーションのルーティングを処理します。つまり、ユーザーに関係なく、ブラウザにどのようなパスを入力しても、index.html ファイルが返される必要があります。ブラウザで URL を開いて
js ファイルを表示すると、リークした js インターフェースを見つけることができます
。インターフェースを結合することで内容を表示できます。
2番
通常のユーザー権限でログインし、
この Web サイトのディレクトリにある js ファイルを表示し
、js インターフェイスを結合します。
三番目
また、通常のユーザー権限を使用してログインし、js インターフェイスを見つけ、
js をバックグラウンドに接続します。
0x02 ウルトラウイルス
Ultra viresも不正アクセスの一種ですが、抜け穴が多発するため別途書きました。
水平オーバーライド: 採用 Web サイトなど、ユーザーは他のユーザーの情報を表示できます。ID 番号、名前、アバターなどの自分の情報は誰もが表示できますが、ユーザーは他のユーザーの情報を表示できます。は水平オーバーライドです。他の人の情報の同様の変更と削除も水平オーバーライドです。
初め
他のユーザーの情報を表示するための水平オーバーライド.
採用システムの
burp が
メッセージをインターセプトする . Do you think a little bit about 12354? Burp はパッケージを再送信してテスト 12352.
12353
水平オーバーライドには SQL インジェクションの可能性もあります. 詳細については、前の記事。
2番
他のユーザーの情報を許可なく変更します。
システムに ming4 と ming5 の 2 つのアカウントを登録しました
。ming5 アカウントにログインします。情報を変更し、[保存] をクリックします。Burp
がメッセージを傍受します
。ID を 2177 ( ming4 ユーザーの ID)
を使用して、ming4 ユーザーの情報を更新しました。情報が変更され、パスワードも変更されました。
フォローアップの考え: 実際、これは update SQL ステートメントではないかと思われます。当時は比較的テストされておらず、何もありませんでした。このサイトでまだテストできる場合は、
2177 と sleep('5') をテストします。遅延注入が発生するかどうかを確認してください。
三番目
OA システムへの不正ログインです。ここでのロジックは、学生の学生 ID を使用して、統一認証にログインすることです。統一認証には、OA システムにジャンプするリンク ポイントがあります。学生のユーザーは OA システムにアクセスできませんが、教師のユーザーは OA システムにアクセスできません。ワーク ID は、統一認証インターフェースに入り、「OA」をクリックすると
、システムリンク、げっぷがメッセージ
チケットを傍受し、教師のワークナンバーに変更し、OA システムに入ります。
0x03 クッキー
バックエンド開発者は、サーバーが Cookie を使用してユーザー情報を識別するコードを作成します。
初め
Cookie の内容を変更すると、管理者権限を直接付与できます
。ログイン後、Web システムは次の内容を返します。Cookie の Cookieusername と cookieid は、cookieusername=admin と cookieid=1 に変更できます。
2番
Cookie 情報を変更すると水平方向のオーバーライドがトリガーされ、
Cookie 内のユーザー ID コンテンツを変更するとオーバーライドが行われます。
0x04 任意のパスワードのリセット
この Web サイトは、携帯電話を使用してパスワードを変更するための確認コードを送信しますが、確認コードの機能はフロントエンド インターフェイスを表示することだけであり、バックエンドとの確認のやり取りはありません。
初め
システム リセット パスワード ボックス
. 携帯電話番号と確認コードを入力してメッセージを送信します.
ステータス値を 1 に変更します.
パスワードを入力して [次へ] をクリックします.
バイパス
. 脆弱性が修復された後の確認方法は、確認コードを保持することですパスワードを入力して「次へ」をクリックした後に送信するメッセージ内の情報。
2番
パスワードをリセットする場所でもあります。確認コードを書き込んで、「次へ」をクリックしてください。
メッセージのステータスがエコーされます
。ここで True に変更します。
もう一度クリックすると、
True に戻ります。リセットは成功しました。
終わり
ロジックの脆弱性は幅広い問題をカバーしています。同時実行の問題と支払いの脆弱性については、この記事では言及しません。第一に、同時実行の問題は特に有害ではなく、エンタープライズ SRC のみがそれらを含めます。第二に、私は支払いの脆弱性については初心者であり、一度もやったことがありません。以前に発見しました!