#謎を解く:Uniswap Permit2署名フィッシング詐欺ハッカーはWeb3エコシステムにおいて恐ろしい存在です。プロジェクトにとって、コードがオープンソースであることは、世界中のハッカーがあなたを狙う可能性があることを意味します。一度セキュリティの脆弱性が発生すれば、その結果は耐え難いものとなります。個人ユーザーにとっては、自分が行っている操作を理解していなければ、チェーン上のインタラクションや署名のたびに資産が盗まれる可能性があります。したがって、セキュリティの問題は暗号世界で最も厄介な問題の一つです。ブロックチェーンの特性により、一度資産が盗まれるとほぼ回収不可能であるため、暗号世界ではセキュリティの知識を習得することが特に重要です。最近、新しいフィッシング手法が活発化しており、署名するだけで盗まれる可能性があります。この手法は非常に巧妙で防ぐのが難しいです。Uniswapと相互作用したアドレスはすべてリスクにさらされる可能性があります。本記事では、この署名フィッシング手法について解説し、さらなる資産損失を避けるための情報を提供します。## 何が起こったのか最近、友人(、仮称小A)のウォレット資産が盗まれました。一般的な盗難手法とは異なり、小Aはプライベートキーを漏らすことも、フィッシングサイトの契約とやり取りすることもありませんでした。ブロックチェーンブラウザによれば、小Aウォレット内のUSDTはTransfer From関数を通じて移動されました。これは、別のアドレスがトークンを移動させたことを意味しており、ウォレットの秘密鍵が漏洩したわけではありません。取引の詳細が表示されます:- 尾号fd51のアドレスは小Aの資産を尾号a0c8のアドレスに転送します- この操作はUniswapのPermit2コントラクトと相互作用します重要な問題は、末尾fd51のアドレスがこの資産の権限をどのように取得するのかですか?なぜUniswapに関連しているのですか?さらに調査したところ、アドレスの末尾がfd51のアドレスは、小Aの資産を移転する前にPermit操作を行っており、これらの2つの操作の相互対象はUniswapのPermit2契約であることがわかりました。! [署名が盗まれましたか? Uniswap Permit2署名フィッシング詐欺の謎を解く](https://img-cdn.gateio.im/social/moments-0cc586809f131d9dfab81df33fd1835e)Uniswap Permit2は2022年末に導入された新しい契約で、トークンの権限を異なるアプリケーションで共有および管理することを許可し、より統一された、コスト効率の良い、安全なユーザー体験を創出することを目的としています。より多くのプロジェクトがPermit2を統合するにつれて、すべてのアプリケーションでのトークン承認の標準化が実現され、取引コストが削減され、スマートコントラクトの安全性が向上します。Permit2はユーザーとDappの間の仲介者として機能し、ユーザーはTokenの権限をPermit2コントラクトにのみ付与すれば、Permit2を統合したすべてのDappがこの権限の範囲を共有できます。これにより、ユーザーのインタラクションコストが削減され、体験が向上します。しかし、これは両刃の剣でもあり、問題はPermit2とのインタラクション方法にあります。従来のインタラクション方式では、承認と資金移動はすべてユーザーのオンチェーンインタラクションでした。しかし、Permit2はユーザーの操作をオフチェーン署名に変え、すべてのオンチェーン操作は仲介者によって行われます。これによって得られる利点は、ユーザーのウォレットにETHがなくても、他のトークンでガス代を支払ったり、仲介者からの払い戻しを受けたりできることです。しかし、オフチェーン署名はユーザーが最も見落としがちな部分です。多くの人が署名の内容を慎重に確認せず、その意味を理解していないため、これは最も危険な点です。このPermit2署名フィッシングをトリガーするための重要な前提条件は、フィッシングされるウォレットがUniswapのPermit2契約に対してトークンをすでに承認していることです。現在、Permit2を統合したDappまたはUniswapでスワップを行うには、Permit2契約に承認を与える必要があります。さらに恐ろしいことに、Swapの金額に関わらず、UniswapのPermit2コントラクトはユーザーにそのTokenの全残高を自動的に許可します。MetaMaskはカスタム入力金額を許可していますが、多くの人は最大またはデフォルト値を直接選択する可能性が高く、Permit2のデフォルト値は無制限の額です。! [署名が盗まれましたか? Uniswap Permit2署名フィッシング詐欺の謎を解く](https://img-cdn.gateio.im/social/moments-bb348691082594ecc577f91d7f9dc800)これは、2023年以降にUniswapとやり取りを行い、Permit2コントラクトに権限を与えた場合、このフィッシング目薬のリスクに直面する可能性があることを意味します。重要なのはPermit関数であり、これによりハッカーはあなたの署名を利用してPermit2契約に対してあなたが承認したTokenの上限を他のアドレスに移転することができます。あなたの署名を取得するだけで、ハッカーはあなたのウォレット内のTokenの権限を取得し、資産を移転することができます。## イベント詳細分析permit 関数のワークフロー:1.現在の時刻が署名の有効期間の(sigDeadline)を超えているかどうかを確認します2. 署名の真偽を検証する3. 検査を通じて、記録を更新することで他の人があなたのトークンを使用できるようにします。焦点は、検証機能と_updateApproval機能にあります。verify関数は、署名情報からv、r、sの3つのデータを取得し、取引署名アドレスを復元します。コントラクトは復元されたアドレスと渡されたトークン所有者アドレスを比較し、同じであれば検証が成功し、_updateApproval関数を続行します。異なる場合は、取引をロールバックします。_updateApproval関数は署名検証を通過した後、承認値を更新し、あなたの権限が移転されたことを意味します。この時、承認された側はtransferfrom関数を呼び出してトークンを指定されたアドレスに移転することができます。チェーン上の実際の取引が表示されています:- ownerは小Aのウォレットアドレス(の末尾番号308a)です。- 詳細では、認証されたトークンコントラクトのアドレス(USDT)や金額などの情報を確認できます- Spenderは末尾がfd51のハッカーアドレスです- sigDeadline は署名の有効期間、signature は A の署名情報です! [署名が盗まれましたか? Uniswap Permit2署名フィッシング詐欺の謎を解く](https://img-cdn.gateio.im/social/moments-30520c8399a6ee69aa22424476c5870c)小Aのインタラクション記録を振り返ると、彼が以前Uniswapを使用している際にデフォルトの承認額、つまりほぼ無限の額をクリックしていたことがわかります。簡単な振り返り:小Aは以前Uniswapを使用する際、Permit2に無限のUSDTの権限を与えていました。その後、ウォレット操作中に誤ってハッカーが設計したPermit2の署名フィッシングトラップに引っかかりました。ハッカーは小Aの署名を取得した後、Permit2契約内でPermitとTransfer Fromの操作を行い、小Aの資産を移転しました。現在、UniswapのPermit2契約はフィッシングの温床となっているようで、このような署名フィッシングは約2か月前から活発になっています。## どのように防ぐか?Uniswap Permit2コントラクトが将来的により普及する可能性を考慮すると、より多くのプロジェクトがそれを統合して権限の共有を行う可能性があります。効果的な防止手段には以下が含まれます:1. サイン内容を理解し識別する: Permit署名フォーマットには通常、Owner、Spender、value、nonce、deadlineなどの重要な情報が含まれています。Permit2が提供する利便性と低コストを享受したい場合は、この署名フォーマットを認識することを学ぶ必要があります。安全なプラグインを使用するのは良い選択です。! [署名が盗まれましたか? Uniswap Permit2署名フィッシング詐欺の謎を解く](https://img-cdn.gateio.im/social/moments-730db044a34a8dc242f04cf8ae4d394c)2. アセットウォレットとインタラクティブウォレットを分離して使用する:大量の資産を保有している場合、主要な資産はコールドウォレットに保管し、オンチェーンインタラクションウォレットには少量の資金だけを残すことをお勧めします。これにより、フィッシング目薬に遭遇した際の損失を大幅に減少させることができます。3. Permit2コントラクトに対する権限の制限または権限の取り消し:Uniswapでスワップする際には、インタラクションに必要な金額のみを承認してください。毎回インタラクションごとに再承認する必要があるためコストが増えますが、Permit2署名フィッシングを回避できます。承認済みの額がある場合は、安全プラグインを使用して承認をキャンセルできます。4. トークンの性質を識別し、permit機能をサポートしているかどうかを理解する:将来的には、より多くのERC20トークンがpermit機能を実装する可能性があります。自分が保有しているトークンがこの機能をサポートしているかどうかに注意が必要です。サポートしている場合、取引や操作には特に注意を払い、未知の署名がpermit関数に対して行われているかどうかを厳密に確認してください。5. もし目薬にあった後、他のプラットフォームにまだトークンが存在する場合は、十分な救済計画を策定する必要があります: 詐欺に遭った場合、もしまだ他のプラットフォームにステーキングなどの方法でトークンが存在する場合は、引き出して移転する必要がありますが、ハッカーがいつでもあなたのアドレスの残高を監視している可能性があることに注意してください。トークン救済プロセスを適切に策定し、引き出しと移転を同時に実行して、ハッカーの取引挿入を防ぐことが重要です。MEV移転を利用するか、Beosinチームなどの専門のセキュリティ会社に支援を求めることを検討してください。今後、Permit2に基づくフィッシングがますます増える可能性があります。この署名フィッシングの手法は非常に巧妙で防ぎにくく、Permit2の適用範囲が広がるにつれて、リスクにさらされるアドレスも増加します。読者がこの記事を見た後、より多くの人に広め、より多くの人が損失を被るのを避けることを願っています。
Uniswap Permit2署名フィッシング新目薬:リスクの識別と防止ガイド
#謎を解く:Uniswap Permit2署名フィッシング詐欺
ハッカーはWeb3エコシステムにおいて恐ろしい存在です。プロジェクトにとって、コードがオープンソースであることは、世界中のハッカーがあなたを狙う可能性があることを意味します。一度セキュリティの脆弱性が発生すれば、その結果は耐え難いものとなります。個人ユーザーにとっては、自分が行っている操作を理解していなければ、チェーン上のインタラクションや署名のたびに資産が盗まれる可能性があります。したがって、セキュリティの問題は暗号世界で最も厄介な問題の一つです。ブロックチェーンの特性により、一度資産が盗まれるとほぼ回収不可能であるため、暗号世界ではセキュリティの知識を習得することが特に重要です。
最近、新しいフィッシング手法が活発化しており、署名するだけで盗まれる可能性があります。この手法は非常に巧妙で防ぐのが難しいです。Uniswapと相互作用したアドレスはすべてリスクにさらされる可能性があります。本記事では、この署名フィッシング手法について解説し、さらなる資産損失を避けるための情報を提供します。
何が起こったのか
最近、友人(、仮称小A)のウォレット資産が盗まれました。一般的な盗難手法とは異なり、小Aはプライベートキーを漏らすことも、フィッシングサイトの契約とやり取りすることもありませんでした。
ブロックチェーンブラウザによれば、小Aウォレット内のUSDTはTransfer From関数を通じて移動されました。これは、別のアドレスがトークンを移動させたことを意味しており、ウォレットの秘密鍵が漏洩したわけではありません。
取引の詳細が表示されます:
重要な問題は、末尾fd51のアドレスがこの資産の権限をどのように取得するのかですか?なぜUniswapに関連しているのですか?
さらに調査したところ、アドレスの末尾がfd51のアドレスは、小Aの資産を移転する前にPermit操作を行っており、これらの2つの操作の相互対象はUniswapのPermit2契約であることがわかりました。
! 署名が盗まれましたか? Uniswap Permit2署名フィッシング詐欺の謎を解く
Uniswap Permit2は2022年末に導入された新しい契約で、トークンの権限を異なるアプリケーションで共有および管理することを許可し、より統一された、コスト効率の良い、安全なユーザー体験を創出することを目的としています。より多くのプロジェクトがPermit2を統合するにつれて、すべてのアプリケーションでのトークン承認の標準化が実現され、取引コストが削減され、スマートコントラクトの安全性が向上します。
Permit2はユーザーとDappの間の仲介者として機能し、ユーザーはTokenの権限をPermit2コントラクトにのみ付与すれば、Permit2を統合したすべてのDappがこの権限の範囲を共有できます。これにより、ユーザーのインタラクションコストが削減され、体験が向上します。しかし、これは両刃の剣でもあり、問題はPermit2とのインタラクション方法にあります。
従来のインタラクション方式では、承認と資金移動はすべてユーザーのオンチェーンインタラクションでした。しかし、Permit2はユーザーの操作をオフチェーン署名に変え、すべてのオンチェーン操作は仲介者によって行われます。これによって得られる利点は、ユーザーのウォレットにETHがなくても、他のトークンでガス代を支払ったり、仲介者からの払い戻しを受けたりできることです。
しかし、オフチェーン署名はユーザーが最も見落としがちな部分です。多くの人が署名の内容を慎重に確認せず、その意味を理解していないため、これは最も危険な点です。
このPermit2署名フィッシングをトリガーするための重要な前提条件は、フィッシングされるウォレットがUniswapのPermit2契約に対してトークンをすでに承認していることです。現在、Permit2を統合したDappまたはUniswapでスワップを行うには、Permit2契約に承認を与える必要があります。
さらに恐ろしいことに、Swapの金額に関わらず、UniswapのPermit2コントラクトはユーザーにそのTokenの全残高を自動的に許可します。MetaMaskはカスタム入力金額を許可していますが、多くの人は最大またはデフォルト値を直接選択する可能性が高く、Permit2のデフォルト値は無制限の額です。
! 署名が盗まれましたか? Uniswap Permit2署名フィッシング詐欺の謎を解く
これは、2023年以降にUniswapとやり取りを行い、Permit2コントラクトに権限を与えた場合、このフィッシング目薬のリスクに直面する可能性があることを意味します。
重要なのはPermit関数であり、これによりハッカーはあなたの署名を利用してPermit2契約に対してあなたが承認したTokenの上限を他のアドレスに移転することができます。あなたの署名を取得するだけで、ハッカーはあなたのウォレット内のTokenの権限を取得し、資産を移転することができます。
イベント詳細分析
permit 関数のワークフロー:
1.現在の時刻が署名の有効期間の(sigDeadline)を超えているかどうかを確認します 2. 署名の真偽を検証する 3. 検査を通じて、記録を更新することで他の人があなたのトークンを使用できるようにします。
焦点は、検証機能と_updateApproval機能にあります。
verify関数は、署名情報からv、r、sの3つのデータを取得し、取引署名アドレスを復元します。コントラクトは復元されたアドレスと渡されたトークン所有者アドレスを比較し、同じであれば検証が成功し、_updateApproval関数を続行します。異なる場合は、取引をロールバックします。
_updateApproval関数は署名検証を通過した後、承認値を更新し、あなたの権限が移転されたことを意味します。この時、承認された側はtransferfrom関数を呼び出してトークンを指定されたアドレスに移転することができます。
チェーン上の実際の取引が表示されています:
! 署名が盗まれましたか? Uniswap Permit2署名フィッシング詐欺の謎を解く
小Aのインタラクション記録を振り返ると、彼が以前Uniswapを使用している際にデフォルトの承認額、つまりほぼ無限の額をクリックしていたことがわかります。
簡単な振り返り:小Aは以前Uniswapを使用する際、Permit2に無限のUSDTの権限を与えていました。その後、ウォレット操作中に誤ってハッカーが設計したPermit2の署名フィッシングトラップに引っかかりました。ハッカーは小Aの署名を取得した後、Permit2契約内でPermitとTransfer Fromの操作を行い、小Aの資産を移転しました。現在、UniswapのPermit2契約はフィッシングの温床となっているようで、このような署名フィッシングは約2か月前から活発になっています。
どのように防ぐか?
Uniswap Permit2コントラクトが将来的により普及する可能性を考慮すると、より多くのプロジェクトがそれを統合して権限の共有を行う可能性があります。効果的な防止手段には以下が含まれます:
! 署名が盗まれましたか? Uniswap Permit2署名フィッシング詐欺の謎を解く
アセットウォレットとインタラクティブウォレットを分離して使用する: 大量の資産を保有している場合、主要な資産はコールドウォレットに保管し、オンチェーンインタラクションウォレットには少量の資金だけを残すことをお勧めします。これにより、フィッシング目薬に遭遇した際の損失を大幅に減少させることができます。
Permit2コントラクトに対する権限の制限または権限の取り消し: Uniswapでスワップする際には、インタラクションに必要な金額のみを承認してください。毎回インタラクションごとに再承認する必要があるためコストが増えますが、Permit2署名フィッシングを回避できます。承認済みの額がある場合は、安全プラグインを使用して承認をキャンセルできます。
トークンの性質を識別し、permit機能をサポートしているかどうかを理解する: 将来的には、より多くのERC20トークンがpermit機能を実装する可能性があります。自分が保有しているトークンがこの機能をサポートしているかどうかに注意が必要です。サポートしている場合、取引や操作には特に注意を払い、未知の署名がpermit関数に対して行われているかどうかを厳密に確認してください。
もし目薬にあった後、他のプラットフォームにまだトークンが存在する場合は、十分な救済計画を策定する必要があります: 詐欺に遭った場合、もしまだ他のプラットフォームにステーキングなどの方法でトークンが存在する場合は、引き出して移転する必要がありますが、ハッカーがいつでもあなたのアドレスの残高を監視している可能性があることに注意してください。トークン救済プロセスを適切に策定し、引き出しと移転を同時に実行して、ハッカーの取引挿入を防ぐことが重要です。MEV移転を利用するか、Beosinチームなどの専門のセキュリティ会社に支援を求めることを検討してください。
今後、Permit2に基づくフィッシングがますます増える可能性があります。この署名フィッシングの手法は非常に巧妙で防ぎにくく、Permit2の適用範囲が広がるにつれて、リスクにさらされるアドレスも増加します。読者がこの記事を見た後、より多くの人に広め、より多くの人が損失を被るのを避けることを願っています。