目录

  • WEB
    • checkin
    • admin
    • CV Maker
    • easyweb
    • train yourself to be godly
    • 朴实无华
    • 颜值成绩查询
  • MISC
    • Space Club
    • Welcome
    • Alison likes jojo
    • Shop
    • girlfriend
    • Find me
  • 小结

WEB

checkin

打开页面显示Who’s the author?,回到题目发现作者是52HeRtz,输入52HeRtz发现有截断,f12选中输入框把maxlength改成一个较大的数即可输入。然后发现提交按钮不能用,选中提交按钮删除disabled=“disabled”(意思是禁止点击)即可。提交弹出:一个远古的博客: https://52hertz.tech
打开链接跳到一个博客首页
在最后一篇博客发现名为远古的blog的文章,打开在最下面发现Here is your flag: 5_a_c@nner_can_Can_@_can}。这应该不是完整的flag,回到首页发现会动态显示flag,查看源代码,搜索wctf找到对应的flag的前半段,拼接即可。

admin

题目说作为admin登录,尝试万能密码,用户名为admin’#,密码随便输,成功登入。

提示必须本地IP:X-Forwarded-For:127.0.0.1
用GET方式传一个参数ais, 值为520:?ais=520
用POST方式传一个参数wust, 值为1314 :burpsuite变更请求方法,注意get还是要在网址那传参,wust=131

提示离flag很近了,给了个网址,但应该顺序是乱的

先拼接https://paste.ubuntu.com打开

随便输入个字符结果地址是https://paste.ubuntu.com/p/rJcP4y52Yv/
这和题目给的网址类似,按照这个格式拼接尝试即可

CV Maker

先注册个账号,然后登录。发现页面其他地方不能点击。只有个更换图像,考点应该是文件上传。尝试上传一句话木马均失败,改变content-type均失败,扫描发现有uploads目录,访问发现好多文件,按时间排序上传一个正常的图片发现就在这个目录下,查看别人上传的php文件,发现只能看到GIF89a,谷歌搜了下文件上传发现这是文件头检验。
在burpsuite一句话前面加上GIF89a,然后去uploads目录下查看刚刚上传的php文件,用蚁剑成功连接。

到根目录发现flag文件打开一片空白,然后又发现还有个readflag文件。因为前不久就做过一题成功上传了木马,却找不到flag,情形和现在一样。当时看了wp就是说在终端运行readflag即可。

看来还是得再看看文件上传,这次是碰巧了,hahaha。附上一篇不错的文件上传漏洞(绕过姿势)

easyweb

本来没做出来,结束时群里有人说可以读bash_history,又去做了下,做出来了,不过读bash_history是非预期的答案,haha

上传一个文件返回一个下载地址,在最后输错会暴露绝对路径

我们可以根据这向上层找找到根目录先下载passwd文件查看有哪些用户

http://47.96.229.52:12121/download?file=../../../../../../../etc/passwd

可以看到存在tomajp用户,然后下载它的bash_history文件

47.96.229.52:12121/download?file=../../../../../../../home/tomajp/.bash_history

打开文件一般看最后发现

尝试进入根目录下的flaaaag下的what_you_want
下载文件打开即得到flag

47.96.229.52:12121/download?file=../../../../../../../flaaaag/what_you_want

train yourself to be godly

这题wp来自官方wp:WUST-CTF 2020 官方 Writeup

页面是 examples,其实洞不在这里,好像一般人很难想得到,肯定得需要 hint,于是就有了 Orange 大哥在 BlackHat 上的一个议题,就是那个 pdf,主要内容就是URL路径参数不规范引发的问题,能造成的危害如下

apache中的tomcat/webapps目录如下。

既然题目是用了examples目录作为网站根目录,那么上图中的Web容器控制台和管理界面这一点就显得很有意思了

manage目录是可以上传WAR文件部署服务,也就是说可以通过manage目录实现文件上传,继而实现木马上传,也就是第二个hint。

我们可以看到 pdf 有一个这样的东西,告诉我们可以通过 /…;/manager/html 进入到manager页面。

并且随便加一串路径,根据报错信息知道我们当前的tomcat的root路径为examlpes

目录穿越到 manager 得输入密码验证,这里是弱密码 tomcat/tomcat

接下来就是上传 war 包拿 webshell,github挑一个就好了,这里用 LandGrey 的。

可以直接用jar cvf yourname.war webshell.jsp命令将webshell.jsp打包成war

选择文件,上传。

根据报错信息明显路径拼结完是example/manager/html/upload,缺少一个/…;/,加一个再试

返回一个403,这说明/manager/html/upload路径访问到了,但是权限不够,那一般问题就出在cookie或者session没给,www没有目录访问权限身上。按照目前的思路来说,不会出现服务器权限不足的问题,那就只能是cookie没添。利用burpsuit从头开始抓包,在访问/…;/manager/html出现了Set-Cookie(set-Cookie的Path是指此cookie只在Path目录下起作用),那么我们403的问题就迎刃而解,只需要将/example换成Path参数指定的/manage就行,再把cookie加上就完事了。

修改post,添加cookie(ps: 由于cookie只能用一次,所以还是403的话,再请求一次/…;/manager/html,更换新的cookie就行了 ),上传完毕后可以看到war已安装好了,访问上传的war,注意这里还有一个/…;/的坑,剩下的就是根据自己的马找flag了。

当然直接找flag是找不到的,这道题我改得比较玄学,加了《圣经》新约:《提摩太后书》里的文章。(逃

可以看到在Timothy里面,cat 一下,是一段文章,这里知道flag格式,grep一下 wctf2020,就可以看到flag了。

In the end, train yourself to be godly.

朴实无华

intval(字符串)为0 但是intval(字符串+1) 会自动转换成数值
MD5需要用一个0e开头纯数字加密后仍为0e开头纯数字的数
空格用${IFS}代替

http://101.200.53.102:23333/fl4g.php?num=0x2022&md5=0e215962017&get_flag=cut${IFS}-b${IFS}1-222${IFS}fllllllllllllllllllllllllllllllllllllllllaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag

颜值成绩查询

明显是sql注入,经测试过滤了空格可用/**/代替,过滤了关键字可用大小写替换。剩下没啥了union查询查出flag

http://101.200.53.102:10114/?stunum=-1/**/uNion/**/seleCt/**/1,flag,value/**/frOm/**/flag--+

吐槽一下sqlmap,明明设置了脚本还是没跑出来,最后还是手工注入的,经检查注入代码发现注释的–后面的空格也被替换成/**/了,导致注释失效。看来还是得学学写py脚本了。
补充:官方wp说检查了UA,所以sqlmap根本跑不出来

MISC

Space Club

打开文件一片空白,但是如果Ctrl+a全选文本就会发现

那么flag肯定是0和1搭配然后转换,这里说个技巧,比如这次比赛flag都是wctf2020{},那么我们可以先看看w的二进制是什么,然后往这方面靠。w的二进制是01110111,然而在文本编辑器里不大容易看出来,放到sumlime中发现

这样很明显的发现每行正好对应01110…
把等于第一行的内容全部替换成0,然后第二行正好是00,然后把00替换成1,再把换行替换成空格即可。就会出现01字符串。

上脚本

import base64
import re
def shiZhuanAscii(ls):  #十进制列表转asciiflag=''for i in ls:flag=flag+chr(int(i))return flag
def erZhuanShi(ls):     #二进制列表转十进制列表for i in range(len(ls)):ls[i]=int(ls[i],2)return ls
def splitS(s,n):    #把字符s每n个分到一个列表元素ls=re.findall('.{'+str(n)+'}', s)     return ls#示例:s="011101110110001101110100011001100011001000110000001100100011000001111011011010000011001101110010011001010101111100110001011100110101111101111001001100000111010101110010010111110110011001101100010000000110011101011111011100110011000101111000010111110111001100110001011110000101111101110011001100010111100001111101"
ls=splitS(s,8)  #['1100110', '1101100', '1100001', '1100111', '1111011', '1010111', '0110000', '1010111', '0101010', '1100110', '1110101', '1101110', '1101110', '1111001', '1111101']
ls=erZhuanShi(ls)  #[102, 108, 97, 103, 123, 87, 48, 87, 42, 102, 117, 110, 110, 121, 125]
ls=shiZhuanAscii(ls) #flag{W0W*funny}
print(ls)

直接跑出flag

Welcome

打开发现一个exe程序,还有一个xml文件,题目说明中说会打开摄像头。

搜了下那个xml文件名发现相当于人脸识别。由于我用的Linux,用我姐的电脑打开exe文件等一小会摄像头打开了,发现会有个圈圈圈注你的脸,左晃晃右晃晃也没发现咋整,就在这时突然小黑框出现了flag。hahaha。

然后又研究了下咋回事,题目说三人行,exe中又会有圈,于是尝试在画面中让相机捕捉到三个圈(可以用手比个圈)就出现了flag。

Alison likes jojo

打开文件两个图片,binwalk一波发现其中一个藏有压缩包,分离发现压缩包密码。

这时一般有两种情况
1.根据没用到的那张图片找到解压密码,再继续下一步。这种一般密码都比较复杂。
2.暴力破解得到密码,然后再结合剩下那张图片。

一边暴力破解一边分析下另一张图片。一会暴力破解成功,密码是纯数字。解压发现好像是base64:WVRKc2MySkhWbmxqV0Zac1dsYzBQUT09,几次base64解密得到killerqueen。这应该是个秘钥。这时首先想到了outguess加密(因为前几天bjdctf就有个outguess隐写)。

outguess -r jljy.jpg -k killerqueen  out.txt

然后打开out.txt发现flag

Shop

根据题目提示nc连接,发现是个买flag的商店

1就是查看余额,2买flag有两个选项,买真的flag提示钱不够(一般都是这个套路),但是可以买Cheaper flag,但也只能买两个然后就没钱了

一筹莫展时搜了下这样的ctf题目,虽然没搜到但一篇文章提到了让价钱等于-1溢出,然后尝试买Cheaper flag时输一个较大的数。

我们可以发现花费是负的数,这样余额减去一个负的数就是一个比较大的正数。原理大概是计算机有固定运算能力,如果超过最大运算值会来个循环正太大就从负的开始了。不过现在一般都不会出这种问题,都有防护措施的。
然后去买real flag,成功买到

girlfriend

本来以为是摩丝密码,看wp才知道是九键的声音

原理是DTMF

经搜索找到了软件解密和py脚本,可能会有误差,稍微调整下即可


解密得到flag:wctf2020{youaremygirlfriends}
如果出现提交不对,可能是识别的重复了,可结合AU看频谱图看看它的次数

打开提示flag被图片盖住,本来以为是找那种分离pdf的工具,一番搜索无果,然后binwalk foremost分离试试,分离了一个图片但还是没啥用。

然后突然想到试试把pdf里的图片删除试试。打开分离的图片,然后找到文件头和文件尾。在PDF里删除对应的十六进制。这时打开还是啥都没有。想着改下后缀名吧,再打开就出现了一行十六进制。

这里是个坑,我用的linux,不是根据后缀名打开文件的,打开源文件的是自带的一个软件,改后缀pdf后是默认wps打开。


用qq识图复制十六进制转文本得到flag

看到flag猜测应该是用ps分层把图片那层去掉。
ps解法:打开pdf文件选择图像引入,选择第一个图像即可。

Find me

打开图片查看备注发现⡇⡓⡄⡖⠂⠀⠂⠀⡋⡉⠔⠀⠔⡅⡯⡖⠔⠁⠔⡞⠔⡔⠔⡯⡽⠔⡕⠔⡕⠔⡕⠔⡕⠔⡕⡍=
明显是盲文(几个点最后有等于号)
在线解密,附上网站:盲文解密

小结

总的来说体验还是不错的,这次比赛可能是新生赛比较简单点,题目大多考的不是很难的点而是脑洞吧,不过还是发现了自己的一点不足,还是得继续努力。

WUST-CTF2020-WP相关推荐

  1. [WP]使用ApacheCordova开发HTML5-WindowsPhone应用程序

    下载代码示例 这篇文章介绍 Apache 科尔多瓦,创建使用 HTML5 和 JavaScript,跨平台移动应用程序的框架,并显示了如何使用它为 Windows Phone 开发应用程序. Wind ...

  2. wp实例开发精品文章源码推荐

    qianqianlianmeng wp实例开发精品文章源码推荐 WP8 启动媒体应用         这个示例演示了如何选择正确的msAudioCategory类别的音像(AV)流来配置它作为一个音频 ...

  3. cocos2d-xna for win8源代码轻松移植cocos-xna for wp游戏

    无意间看到杨哥弄了一个cocos2d-xna for win8出来可惜没有放出源代码,我试着要了一下结果他没理我,各种画圈圈. 那我只好自己弄一个了,源代码放出大家供交流学习使用,像杨哥说的一样就是一 ...

  4. linux 更改wp版本号,代码实现移除 WordPress 版本号

    默认情况下,WordPress会在页头输出版本号,有一定安全隐患. 在当前主题的functions.php中添加以下代码,可同时移除feed和js/css中的WordPress版本号: // 同时删除 ...

  5. 图解 wp WordPress 文章 链接 在新窗口打开

    wp WordPress 文章 链接 在新窗口打开 因为wp默认是不在新窗口打开链接的,这对于我们这样习惯关窗口的人,用起来很不方便.其实改起来很简单,下面开始 一.打开外观,选择编辑 二.打开主题页 ...

  6. 正确设置语言,加速WP应用提交

            App Hub在7月18日进行了更新.有些用户反馈新增的默认语言选项有点令人费解.本文简单做个介绍,帮助开发者正确设置语言,加速WP应用提交快速.这次的系统更新后,App Hub可以检 ...

  7. wordpress必装的插件 wp最常用的十个插件

    wordpress是世界上著名的博客系统,简称wp.一般新安装完wordpress以后,往往需要首先安装一些插件,这样才可以使用wordpress的更多功能.wp最常用的十个插件有哪些呢,可能根据每个 ...

  8. WP老杨解迷:开发生态两极化和榜单乱象

    WP老杨解迷:开发生态两极化和榜单乱象 Windows Phone 自2013年的一片浪潮推动下,2014年终于开始引起了各大小CP们的注意,于是大量的产品开始乘风破浪一路涌进Windows Phon ...

  9. WordPress开发之WP Custom Register Login插件试用

    简介 WP Custom Register Login可以为你的WordPress网站前台增加注册.登录.找回密码的功能:你可以通过简码在任何页面上调用. 此外,该插件还支持设置自动通过用户的电子邮件 ...

  10. 逆天通用水印支持Winform,WPF,Web,WP,Win10。支持位置选择(9个位置 ==》[X])...

    常用技能:http://www.cnblogs.com/dunitian/p/4822808.html#skill 逆天博客:http://dnt.dkil.net 逆天通用水印扩展篇~新增剪贴板系列 ...

最新文章

  1. Redis设计与实现之SDS和链表
  2. 干掉RESTful:GraphQL真香!
  3. ropgadgets与ret2syscall技术原理
  4. python列表_Python列表抽象
  5. Java 并发编程之同步工具类栅栏 CyclicBarrier
  6. php服务器安装什么操作系统,php 服务器操作系统
  7. python迭代函数例题_python map 函数使用,遍历访问可迭代对象
  8. 时尚精美电商专题首页设计PSD分层模板资源
  9. linux添加回收站(脚本)
  10. c语言函数调用后必须带回返回值?
  11. SharpDX for Winform
  12. 微信头像卡片制作,听说很火?
  13. HTML-淘宝导航条
  14. 微信公众号关注自动回复得到小程序链接
  15. 2018年 新年目标
  16. 打开cmd命令提示不能输入命令
  17. 热门Java开发工具IDEA入门指南——了解并学习IDE
  18. 理解单模光纤:基本概念篇
  19. 无边界安全成新趋势,志翔科技推出首个体系化“无边界”安全产品
  20. 旅游erp测评:蝶步erp vs小强erp

热门文章

  1. 网站建设流程是什么?
  2. 不仅仅是土豆_设计成功不仅仅需要设计技能
  3. SCSI硬盘数据如何用EasyRecovery恢复
  4. 柔性电子综述2013 ---电子皮肤 The Evolution of Electronic Skin (E-Skin)
  5. 国内用户最多的linux系统,统信UOS将可能超越麒麟系统夺得中国Linux市场份额第一名...
  6. python连连看_Python 连连看连接算法
  7. 搜索命令:whereis/which/locate/find/grep
  8. MATLAB——更换主题颜色
  9. 手机内存不够用,蒲公英X1让U盘秒变私有云
  10. 关于举办“2020·中国边缘计算企业20强”榜单评选通知