国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

某60區(qū)塊鏈安全之JOP實戰(zhàn)一學習記錄

這篇具有很好參考價值的文章主要介紹了某60區(qū)塊鏈安全之JOP實戰(zhàn)一學習記錄。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

區(qū)塊鏈安全


Jump Oriented Programming實戰(zhàn)一

實驗目的

學會使用python3的web3模塊
學會分析以太坊智能合約中中Jump Oriented Programming(JOP)問題
深刻理解EVM字節(jié)碼
找到合約漏洞進行分析并形成利用

實驗環(huán)境

Ubuntu18.04操作機

實驗工具

python3

實驗原理

JOP 的思想和 ROP 是相似的:串聯(lián)起一個個小的代碼片段(gadget),達成一定的目的。
涉及到 JOP 的是如下三個字節(jié)碼:0x56 JUMP 0x57 JUMPI 0x5B JUMPDEST,在 EVM 中的無條件跳轉(zhuǎn) JUMP 和條件跳轉(zhuǎn) JUMPI 的目的地都必須是 JUMPDEST,這點和 ROP 可以任選返回地址不同。
通常需要用到 JOP 的合約在編寫時都夾雜著內(nèi)聯(lián)匯編的后門,本實驗通過jop控制程序控制流,實現(xiàn)特定目的。

實驗內(nèi)容

合約中內(nèi)置了簡單的JOP問題,找到合約漏洞并形成利用,觸發(fā)合約的SendFlag(address addr)事件即可
使用python3的web3模塊遠程利用漏洞并獲取flag
實驗地址為nc ip 10015

Jump Oriented Programming實戰(zhàn)一 實驗步驟

獲取合約地址和合約源代碼
nc ip 10015連接到題目,輸入1,獲取部署合約的game account及token
某60區(qū)塊鏈安全之JOP實戰(zhàn)一學習記錄,區(qū)塊鏈,安全,學習

打開http://ip,輸入上述分配的game account,點擊Request獲取eth

某60區(qū)塊鏈安全之JOP實戰(zhàn)一學習記錄,區(qū)塊鏈,安全,學習
nc ip 10015連接到題目,輸入2,獲取部署合約的地址及new token
某60區(qū)塊鏈安全之JOP實戰(zhàn)一學習記錄,區(qū)塊鏈,安全,學習

nc ip 10015連接到題目,輸入4,獲取合約源代碼,或者在題目附件找到合約源代碼
某60區(qū)塊鏈安全之JOP實戰(zhàn)一學習記錄,區(qū)塊鏈,安全,學習文章來源地址http://www.zghlxwxcb.cn/news/detail-752398.html

分析合約源代碼漏洞

pragma solidity ^0.4.23;

contract ETH15 {
   

    address private owner;
    bytes4 internal constant SET = bytes4(keccak256('fifth(uint256)'));
    event SendFlag(address addr);

    struct Func {
   
        function() internal f;
    }

    constructor() public payable {
   
        owner = msg.sender;
    }

    modifier onlyOwner {
   
        require(msg.sender == owner);
        _;
    }

    // 0x4b64e492
    function execute(address _target) public payable{
   
        require(_target.delegatecall(abi.encodeWithSelector(this.execute.selector)) == false, 'unsafe execution');

        bytes4 sel; 
        uint val;

        (sel, val) = getRet();
        require(sel == SET);

        Func memory func;
        func.f = gift;
        assembly {
    
            mstore(

到了這里,關(guān)于某60區(qū)塊鏈安全之JOP實戰(zhàn)一學習記錄的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關(guān)文章

  • 某60區(qū)塊鏈安全之Create2實戰(zhàn)一學習記錄

    某60區(qū)塊鏈安全之Create2實戰(zhàn)一學習記錄

    學會使用python3的web3模塊 學會分析以太坊智能合約Create2引發(fā)的漏洞及其利用 找到合約漏洞進行分析并形成利用 Ubuntu18.04操作機 python3 君士坦丁堡硬升級中引入了一個新操作碼 CREATE2 ,它使用新的方式來計算常見的合約地址,讓生成的合約地址更具有可控性 在 CREATE2 以前,

    2024年02月05日
    瀏覽(21)
  • 某60區(qū)塊鏈安全之Create2實戰(zhàn)二學習記錄

    某60區(qū)塊鏈安全之Create2實戰(zhàn)二學習記錄

    學會使用python3的web3模塊 學會分析以太坊智能合約中的偽隨機數(shù)問題 學會利用Create2可在同一地址部署不同合約特性解決偽隨機數(shù)問題 找到合約漏洞進行分析并形成利用 Ubuntu18.04操作機 python3 君士坦丁堡硬升級中引入了一個新操作碼 CREATE2 ,它使用新的方式來計算常見的合約

    2024年02月03日
    瀏覽(25)
  • 某60區(qū)塊鏈安全之薅羊毛攻擊實戰(zhàn)一學習記錄

    某60區(qū)塊鏈安全之薅羊毛攻擊實戰(zhàn)一學習記錄

    學會使用python3的web3模塊 學會分析以太坊智能合約薅羊毛攻擊漏洞 找到合約漏洞進行分析并形成利用 Ubuntu18.04操作機 python3 薅羊毛攻擊指使用多個不同的新賬戶來調(diào)用空投函數(shù)獲得空投幣并轉(zhuǎn)賬至攻擊者賬戶以達到財富累計的一種攻擊方式。這類攻擊方式較為普通且常見,只

    2024年02月04日
    瀏覽(16)
  • 某60區(qū)塊鏈安全之未初始化的存儲指針實戰(zhàn)一學習記錄

    某60區(qū)塊鏈安全之未初始化的存儲指針實戰(zhàn)一學習記錄

    學會使用python3的web3模塊 學會分析以太坊智能合約未初始化的存儲指針漏洞 找到合約漏洞進行分析并形成利用 Ubuntu18.04操作機 python3 在solidity語言中,像動態(tài)的數(shù)組、struct、mapping這樣的復雜數(shù)據(jù)結(jié)構(gòu)是不能直接在”棧”里面保存的,因為”棧”里只能保存單獨的”字”,也就

    2024年02月03日
    瀏覽(20)
  • 某60區(qū)塊鏈安全之未初始化的存儲指針實戰(zhàn)二學習記錄

    某60區(qū)塊鏈安全之未初始化的存儲指針實戰(zhàn)二學習記錄

    學會使用python3的web3模塊 學會分析以太坊智能合約未初始化的存儲指針漏洞 找到合約漏洞進行分析并形成利用 Ubuntu18.04操作機 python3 在solidity語言中,像動態(tài)的數(shù)組、struct、mapping這樣的復雜數(shù)據(jù)結(jié)構(gòu)是不能直接在”?!崩锩姹4娴模驗椤睏!崩镏荒鼙4鎲为毜摹弊帧?,也就

    2024年02月05日
    瀏覽(23)
  • 某60區(qū)塊鏈安全之Storage任意地址寫實戰(zhàn)學習記錄

    某60區(qū)塊鏈安全之Storage任意地址寫實戰(zhàn)學習記錄

    學會使用python3的web3模塊 學會分析以太坊智能合約中的Storage變量存儲問題 找到合約漏洞進行分析并形成利用 Ubuntu18.04操作機 python3 EVM 中,有三個地方可以存儲變量,分別是 Memory、Stack 和 Storage。Memory 和 Stack 是在執(zhí)行期間臨時生成的存儲空間,主要負責運行時的數(shù)據(jù)存儲,

    2024年02月05日
    瀏覽(18)
  • 某60物聯(lián)網(wǎng)安全之IoT漏洞利用實操1學習記錄

    某60物聯(lián)網(wǎng)安全之IoT漏洞利用實操1學習記錄

    學會使用fat模擬IoT設備固件 學會使用IDA分析設備固件內(nèi)服務程序的邏輯漏洞 學會使用pwntools與IoT設備服務交互并觸發(fā)漏洞 操作機:Ubuntu 20.04【用戶名:user 密碼:user】 qemu fat binwalk pwntools IDA pro IoT 設備中可能存在各種漏洞,總結(jié)來說,這些漏洞可以被大體劃分為兩大類,一

    2024年02月22日
    瀏覽(27)
  • [區(qū)塊鏈安全-CTF Protocol]區(qū)塊鏈智能合約安全實戰(zhàn)(已完結(jié))

    這次是嘗試CTF-PROTOCOL的題目,望與諸君共勉。后面應該會參考DeFiHackLabs推出對一些列攻擊的POC手寫和解析,同時還要參加Hackathon。大家一起努力! 題目分析: HiddenKittyCat 合約中,核心部分為: 可以知道kitty存儲的位置是由 keccak256(abi.encodePacked(block.timestamp, blockhash(block.number

    2024年02月15日
    瀏覽(22)
  • [區(qū)塊鏈安全-Damn_Vulnerable_DeFi]區(qū)塊鏈DeFi智能合約安全實戰(zhàn)(V3.0.0)(已完結(jié))

    很抱歉,很久沒有更新了。這段時間,經(jīng)歷了孩子出生、出國執(zhí)行項目等諸多事情,心里也比較亂,也沒有思緒去完成挑戰(zhàn)。最近總算閑下來了,不過打開一看,發(fā)現(xiàn)[Damn-Vulnerable-DeFi]已經(jīng)執(zhí)行到v3.0.0了,很多東西都發(fā)生了變化,為什么不重頭做一下呢?不過這次我可能會比較

    2024年02月07日
    瀏覽(17)
  • 日常學習記錄之容器,云服務,區(qū)塊鏈基本概念

    云服務:Sssa, Issa,Pssa. 容器:一個容器包含了完整的運行時環(huán)境:除了應用程序以外,這個應用所需的全部依賴,類庫,其他二進制文件,配置文件等,都同意被打入了一個成為容器鏡像的包中。通過將應用程序本身,和其依賴容器化,操作系統(tǒng)發(fā)行版本和其他基礎環(huán)境造成

    2024年01月20日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包