即將到來的以太坊網絡Constantinople升級為SSTORE操作引入了更便宜的gas成本。作為一種不必要的副作用,當在Solidity智能合約中使用address
functiondeposit(uintid)publicpayable{deposits+=msg
functionupdateSplit(uintid,uintsplit)public{require(split<=100);splits=split;}functionsplitFunds(uintid)public{//Herewouldbe://Signaturesthatbothpartiesagreewiththissplit//Splitaddresspayablea=first;addresspayableb=second;uintdepo=deposits;deposits=0;a
zkSync 2.0測試網現已支持以太坊編程語言Vyper:7月19日消息,以太坊Layer 2擴容解決方案zkSync公告表示,zkSync 2.0測試網現已支持以太坊編程語言Vyper 0.3.3。此外,zkSync表示將于本周晚些時候發布另一則公告。[2022/7/19 2:24:03]
}<新的易受攻擊代碼的示例>該代碼以一種意想不到的方式受到攻擊:它模擬一種安全的資金均攤服務。雙方可以共同接收資金,決定如何split資金以及接收支付。攻擊者可以創建這樣一對地址,其中第一個地址是以下列出的攻擊者合約,第二個地址是任何攻擊者賬戶。該攻擊者將充值一些錢。pragmasolidity^0
數據:USDC Treasury在以太坊上銷毀1988.87萬枚USDC:據歐科云鏈鏈上大師數據顯示,今日17時40分,USDC Treasury在以太坊上銷毀1988.87萬枚USDC;當前USDC在以太坊上的流通量為259.16億枚。
交易哈希:0xc9d697820b9ec90b652691370707382005eef9af2615a8a54a2db4d0ae4c1949。[2021/8/26 22:39:00]
functionattack(addressa)external{victim=a;PaymentSharerx=PaymentSharer(a);x
11月灰度以太坊信托日均交易量創歷史新高:The Block數據顯示,11月份灰度的以太坊信托基金(ETHE)產品的日均交易量與10月份相比增長了220%。11月份ETHE的日均交易量為2463萬美元,創歷史新高。11月份的日交易量比8月份的上一個高峰高出943萬美元。此前12月2日消息,灰度官方宣布,將對以太坊信托的發行股份進行9比1分割。[2020/12/7 14:22:38]
function()payableexternal{addressx=victim;assembly{mstore(0x80,0xc3b18fb600000000000000000000000000000000000000000000000000000000)pop(call(10000,x,0,0x80,0x44,0,0)。functiondrain()external{owner
以太坊研發者評Yam事件:對社區沒有進行盡職調查感到不安:8月13日,以太坊研發者Philippe Castonguay發推談論Yam事件稱,難以置信的魯莽。無論從好的方面還是壞的方面來說,在幾個小時內就將2.5億美元轉移到一個未經審計的項目,這絕對是超現實的。希望看到很多人損失資金,并將這次損失作為一個教訓。隨后,Philippe Castonguay再次發推為該言論道歉稱,他并不想傷害任何人,只是對社區沒有進行盡職調查感到不安。[2020/8/13]
}<攻擊者合約列為第一個地址>該攻擊者將調用自己合約的attack函數,以便在一個交易中披露以下的事件:1、攻擊者使用updateSplit設置當前split,以確保后續升級是便宜的。這是Constantinople升級的結果。攻擊者以這樣的方式設置split,即第一個地址(合約地址)接收所有的資金。2、攻擊者合約調用splitFunds函數,該函數將執行檢查*,并使用transfer將這對地址的全部存款發到合約。3、從回調函數,攻擊者再次更新split,這次將所有資金分配到攻擊者的第二個賬戶。4、splitFunds的執行繼續,全部存款也轉到第二個攻擊者賬戶。簡而話之,攻擊者只是從PaymentSharer合約中偷走了其他人的以太幣,并且可以繼續。為什么現在可以攻擊?
在Constantinople之前,每個storage操作都需要至少5000gas。這遠遠超過了使用transfer或send來調用合約時發送的2300gas費。在Constantinople之后,正在改變“dirty”存儲槽的storage操作僅需要200gas。要使存儲槽變的dirty,必須在正在進行的交易期間更改它。如上所示,這通常可以通過攻擊者合約調用一些改變所需變量的public函數來實現。然后,通過使易受攻擊的合約調用攻擊者合約,例如,使用msg.sender.transfer(...),攻擊者合約可以使用2300gas費成功操縱漏洞合約的變量。必須滿足某些先決條件才能使合同變得易受攻擊:1.必須有一個函數A,函數中transfer/send之后,緊跟狀態改變操作。這有時可能是不明顯的,例如第二次transfer或與另一個智能合約的互動。2.攻擊者必須能夠訪問一個函數B,它可以(a)改變狀態,(b)其狀態變化與函數A的狀態發生沖突。3.函數B需要在少于1600gas時能執行(2300gas費-為CALL提供700gas)。我的合約是否易受攻擊?要測試您是否容易受到攻擊:檢查transfer事件后是否有任何操作。檢查這些操作是否改變了存儲狀態,最常見的是分配一些存儲變量。如果你調用另一個合約,例如,token的transfer方法*,檢查哪些變量被修改。做一個列表。檢查合約中非管理員可以訪問的任何其他方法是否使用這些變量中的一個。檢查這些方法是否自行改變存儲狀態。檢查是否有低于2300gas的方法,請記住SSTORE操作只有200gas。如果出現這種情況,攻擊者很可能會導致您的合約陷入不良狀態。總的來說,這是另一個提醒,即為什么Checks-Effects-Interactions模式如此重要。作為節點運營商或礦工,我需要做什么?
下載最新版本的以太坊客戶端:最新的geth客戶最新的Parity客戶端最新Harmony客戶端最新的萬神殿客戶端最新的Trinity客戶端以太坊錢包/迷霧的最新版本|作者:ChainSecurity|翻譯:獵豹區塊鏈安全團隊
頭條 日本金融廳否認關于“虛擬貨幣ETF”的報道1月9日,日本金融廳在接受采訪時否認了彭博關于“金融廳正在研究虛擬貨幣ETF”的報道。金融廳表示:“目前,還沒有研究過加密貨幣ETF的方案.
1900/1/1 0:00:00我們研究了有關對銀行如何發放貸款的常見誤解,以及這對銀行在經濟中擴大信貸水平能力的影響。我們分析貨幣的內在屬性,以確保它是符合實際情況的.
1900/1/1 0:00:00編者按:本文來自藍狐筆記,作者:AddisonCameron-Huff,來源于nasdaq,由“藍狐筆記”公眾號社群的“SL”翻譯,Odaily星球日報經授權發布.
1900/1/1 0:00:00作者|秦曉峰編輯|孫瑞麗據PRNewswire報道,1月29日,免疫腫瘤療法公司Agenus宣布,即將發行價值高達1億美元的生物技術電子證券代幣.
1900/1/1 0:00:00預測市場是一個美好的思想實驗,大意是如果任何一個人都能就任意事件用錢來下注預測,社會就能更好的利用潛藏的信息和知識,更進一步,甚至能利用預測市場去定向改變事件的結果.
1900/1/1 0:00:00分析師聲明本?以勤勉的職業態度,獨立、客觀地出具本報告。本報告所采用的數據和信息均來自市場公開信息,本?不保證該等信息的準確性或完整性.
1900/1/1 0:00:00