MRCTF 2020 BlockChain Wp

M

SIMPLEREVEAL 区块链签到题,直接找到合约查看一下变量就行: Unwanted Coin 合约代码给出来了: pragma solidity >=0.6.1; contract Modcoin { mapping(uint256 => bool) public is_successful; function recvpay() public payable { require(((msg.value / 0.001 ether ) % 2 == 0 && ((msg.value % 0.001 ether) == 0)), "Not Accepting These Coins."); } function getflag(uint256 target) public { require((address(this)...

WUST-CTF2020 Web Wp

W

武科新生赛,由于 TaQini 师傅号丢了,所以共享了一波账号,被带了个第一,不得不说 TaQini Tql! CheckIn 这题有点恶心,上来就给你放音乐洗脑,还问你 Author 是谁,从题目连接处查到出题人 id,修改下 html 提交: 我怎么就想不到这种给博客引流的办法呢! 翻了翻博客,发现有一个 1970 年的文章,真的是远古博客,文末有一半 flag: 博客首页源代码有另一半: 耗费了我半天经历终于把这个题做了出来,此时不得不叹息出题人的良苦用心,赶紧拿起我的手机给出题人转了一笔辛苦费 admin 万能密码绕登录框,构造 xff 头,get post 传个参,最后给的地址排列组合一下就能拿到flag CV Maker 头像处文件上传,检查了内容,GIF89 文件头绕过直接 getshell。 easyweb...

MRCTF 2020 Web wp

M

北邮新生赛,纪念一下 Nep 登顶(大佬们都是单人打,就我们不要脸的组了个队) 23333 ez_bypass 直接给了源码: <?php include 'flag.php'; $flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}'; if(isset($_GET['gg']) &amp;&amp; isset($_GET['id'])) { $id=$_GET['id']; $gg=$_GET['gg']; if (md5($id) === md5($gg) &amp;&amp; $id !== $gg) { echo 'You got the first step'; if(isset($_POST['passwd'])) { $passwd=$_POST['passwd']; if (...

[BUU] 刷题合集0

[

区块链的内容先告一段落,好久没去 buu 刷题了。buu上有的题目太简单,单开写一篇文章不太合适,所以专门开了个合集简单记录一下。 [SUCTF 2019]CheckIn 文件上传,检测头用 GIF89 绕过,.htaccess 在有脏数据情况下不解析,用 .user.ini (不用重启 apache 也能生效)写入图片马并引用。payload: // .user.ini GIF89a auto_prepend_file=a.png auto_append_file=a.png // 1.png <script language="php">echo file_get_contents("/flag");</script> [CISCN2019 华北赛区 Day2 Web1]Hack World fuzz...

FireShell CTF 2020 WP

F

老外的比赛,老菜狗上去看了两眼没啥思路就溜了,照着国外师傅们的 wp 复现一下。 CaaS 在线c语言编译器,会把输入的 C 代码编译成可执行文件,再以下载文件的方式返回。一开始以为是用任意文件下载收集信息,但是由于比赛的所有题目都是 https 无法用 burp 抓包,因此没有具体定位到下载的 url。 国外师傅的做法是利用 C 语言的 #include 直接将 flag 当做头文件包含,由于包含 flag 无法通过编译会报错,因此会直接在前端显示出来。这个操作确实是没想到,学习了。 URL to PDF 看了师傅们的 wp,这个题目主要考点在这里。题目是个提交框,可以提交一个 url 服务器会访问并转成 pdf 以供下载。用自己的 vps 看一下头信息: 是很不常见的 WeasyPrint,根据上面的考点,这个爬虫虽然不会渲染 js,但是却可以解析 <link...

智能合约 CTF 入门:ETHERNAUT WRITE UP (完)

还有最后几道题,赶紧刷完,加油冲鸭! Naught Coin 题目要求我们把自己的余额变为0,但是限制了我们使用转账函数,源码: pragma solidity ^0.4.18; import 'zeppelin-solidity/contracts/token/ERC20/StandardToken.sol'; contract NaughtCoin is StandardToken { using SafeMath for uint256; string public constant name = 'NaughtCoin'; string public constant symbol = '0x0'; uint public constant decimals = 18; uint public timeLock = now + 10 years; uint public...

智能合约 CTF 入门:Ethernaut Write Up (2)

立一个 flag,明天之前刷完,刷不完让 Y1ng 师傅女装 23333 Delegation pragma solidity ^0.4.18; contract Delegate { address public owner; function Delegate(address _owner) public { owner = _owner; } function pwn() public { owner = msg.sender; } } contract Delegation { address public owner; Delegate delegate; function Delegation(address _delegateAddress) public { delegate = Delegate(_delegateAddress); owner = msg...

2020_2nd_BJDCTF BlockChain Wp

2

坚固性?! tags: 智能合约的部署等基本操作Solidity uint 上溢出 下载附件,给了题目源码以及地址,审计源码: 首先有个 getFlag() 函数: function getFlag() public view returns (string){ require(balances[msg.sender] > 9999999); return flag; } 很明显需要通过攻击合约让自己的 balance 变大,继续审计其他函数,发现只有 Transfer() 有对 balance 的操作: function Transfer(address[] _addr, uint256 _value) public returns (bool){ uint times = _addr.length; uint256 amount = uint256(times) *...

智能合约 CTF 入门:Ethernaut Write Up

xctf 的区块链题目打的自闭,fjh 师傅推荐了个能刷区块链题目的平台,正好来练练手。 准备工作 首先当然是要科学上网啦,提供服务的一些网站基本没有在国内的,所以先网上冲浪吧。 其次安装 chrome 扩展小狐狸 MetaMask,这个相当于我们的区块链钱包,一般的区块链题目都是部署在 Ropsten 测试网络上,在测试网络我们可以无限白嫖 ETH(最多好像是持有 5 个 ETH),所以安装完成后先要去嫖几个币,记录一下能用的水龙头地址: 网上找了几个目前只有这个可以用 最后就是熟悉下 solidity 的语法,跟 go 差不多,几分钟就可以上手。 Hello Ethernaut 这个题目主要面向初学者,只要完成了上述准备工作能与网站交互即可,用浏览器 F12 开着 console 一顿瞎捣鼓即可过关。payload : contract...

Imagin 丨 京ICP备18018700号-1


Your sidebar area is currently empty. Hurry up and add some widgets.