記一次通縮代幣在uniswap v2的套利


首先通過給到的交易進行分析

0x8e5b2e425f1dbed4289d7aa47a9e7ba01d0b779c0078ed6cafba803b2acf1429

 

 交易看到確實是通過Mdex的pair合約轉出WHT代幣的,我們知道Mdexpair合約的代碼

和uniswap的pair代碼基本一致,那么要想轉出代幣的話,可以調用skim函數進行轉出。

這里涉及到uniswap的一個功能,它允許用戶調用它轉出多余的代幣。這里多余的代幣

指的是pair合約中未添加到流動性的代幣。但是這里的套利合約並沒有調用skim函數領取,

它是先查詢兩種代幣的余額,然后再調用getReserves獲取兩種代幣添加流動性的數量,

最后多余的XSquid代幣換成WHT。

結合分析,確定了Mdex是沒有問題的。帶着疑問(為什么會多出XSquid代幣),我們往下分析。

通過pair,找到了和WHT代幣組成LP代幣的XSquid代幣。簡單看了一下代碼,發現該合約是仿造

safemoon編寫的,但是寫的有問題,代碼中刪除了添加獎勵例外的。這里簡單說一下safemoon

中的兩種例外,如果添加了手續費例外,那么每次交易將不收取手續費。另一種例外是獎勵例外,

如果添加獎勵例外的話,持有safemoon類型代幣將不收取獎勵分紅。那么多出來的XSquid代幣

就是pair地址的分紅。

看另外一筆交易就更加直觀,這個是另外一個套利合約的交易:

 

 

從上圖,我們可以看到是調用skim函數領取的代幣,這里因為pair地址沒有加獎勵例外,所以

當有交易的時候,pair地址將收取分紅。任何人都可以調用skim函數領取pair的分紅。

 

 參考safemoon的設置。

避免這種情況的話可以把pair地址加上獎勵例外。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM