Appleが支払うためにこれらの脆弱性は、あなたはそれをプラグインする必要がありますか?

支払プロセス

まず、私たちが支払ったアップルのプロセス全体の管理を見てみましょう。

3つの役割の支払いがあります。

  • アップル
  • ビジネス、どの我々
  • ユーザー

Appleの支払い方法

  1. ユーザーの注文
  2. クライアントがインタフェースをコールバック、注文を発生させます
  3. クライアントは、ユーザーが支払う、支払いページを呼び出します
  4. 成功した支払いの後、クライアントは、領収書を取得し、
  5. クライアントのバックエンドに発行された領収書
  6. 領収書の合法性を確認するために、Appleのバックエンド
  7. 正当な場合は、それが出荷されています

抜け穴

1.受信および順序番号を関連付けることができません

Appleはその攻撃者が商品を得るためにお金を使うためのA受注Bの受信を確認するために使用し、最終的には安価なことができ、この脆弱性を利用するための番号を対応する領収書を取得するためのインタフェースを提供していませんでした。

攻撃方法:

  1. 注文A(1元の価格)、ラインB(100の価格)生成されたユーザ
  2. ユーザーは、注文Aの支払い、領収書Aを取得します
  3. 注文を依頼するユーザーのための領収書は、エンドBをバックに出荷しました
  4. Bの商品は、エンドユーザーがオーダーを受けるが、唯一のマネーオーダーのAを支払いました

ソリューション:インタフェースの受信を確認するには、該当する番号の入庫を得ることができます。領収書の検証が、商品が注文番号と商品の同じ番号に対応していることを確認します。

もちろん、このソリューションは、ユーザAと同じ商品を購入し、ユーザーAを払って、ユーザーがレシートAを得ることができれば、この時点で領収書A、Bを取得するために、ユーザーBとして、依然脆弱である、それは領収書のAを盗まれたことができます彼らの注文の配信システムを実現します。しかし、これは、ユーザBがユーザAの領収書を取得するので、達成電話特権または権利ユーザー仲介を取得する必要があり、その後、暗号化HTTPSを破るために持たせることが困難です

2.領収書を複製することができます

唯一の領収書が正規のものである返されますインターフェイスの領収書を確認し、それがレシートを確認するために数を返しません。だから、攻撃者は一つだけ順序を支払うことができ、その後、再使用ブラシ、複数の受注を達成するために、この脆弱性を利用します。攻撃方法:

  1. ユーザー生成注文、お支払いは、レシートAを取得します
  2. ユーザBは、受注A Bを検証するために使用される、注文を生成します

ソリューション:領収書を検証する際、領収書が使用されているかどうかを確認してください。実装は、成功した検証の領収書で、データベースをチェックするために、次の時間が既に領収書の下に存在するかどうかを確認するために、データベースへの領収書を保存します。また、ここでの並行性の問題に注意してください。例えば、上の2つの要求が、注文はAとBした後、同一のレシートAを使用して確認し、この時点では、データベースは、領収書Aのレコードではなく、ABは、最終的な程度の成功を検証します。ロックは、独自のデータベースのキーを使用してもよいし、Redisのアトミック性を避けるために。

3.領収書のタイムアウトを確認します

インタフェースの受信がタイムアウトすることができることを確認します。タイムアウトは、成功または失敗を意味するものではありません。だから、領収書のタイムアウトのため、使用したり、非同期タスクのタイミングは、再認証をします。そうでなければ、結果は、ユーザーの給与につながるが、成功を実現しませんでした。

4.36元の脆弱性

Appleは$ 40の下方機能、支払うのは初めてのための新しいユーザー、商品を持って、Appleが最初の商船に通知し、その後、お金を控除銀行カードに移動します。多くの黒の生産が堪能に、この抜け穴を使用します。お金が商人に定住されていないので、Appleは、その後、戻ってシルバーに控除お金失敗し、企業決算が、Appleは私がお金を受け取っていないと言ったその時の終わりまでに、商船通知です。最終損失や企業負担します。ビジネスとして、この脆弱性を防止する方法はありません(ローグは、明らかにあなたの抜け穴を良い感じ、結果は私を負担しなければなりません)。

5.返金の脆弱性

攻撃方法:

  • ユーザーがお金を支払います
  • 商人は、ユーザーへの出荷を作りました
  • ユーザの要件にアップル返金
  • Apple社は、企業が直接、払い戻しを払い戻しを相談することができるかどうか、返金がビジネスを気づかないだろうではありません。
  • 最終的な結果は次のとおりです。ユーザーがお金を費やす必要はありませんが、ビジネスは商品を作りました。

ビジネスのように、これは抜け穴を防ぐための方法はありません。

遂に

Appleは世界有数のメーカーですが、マイクロチャネルとアリペイよりアップルのセキュリティの支払いは多くの悪化しているが。商人は、これらの脆弱性の開発に気付かなかった場合は、攻撃されやすいです。そして、これはお金の機能が関与している、結果は多くの場合、非常に深刻な攻撃です。

許可なしに、転載しないでください

おすすめ

転載: www.cnblogs.com/Xjng/p/11703434.html