签到
打开得到flag
Falg= flag{we1come_t0_qwb_s6}
Game Master
21点游戏
和打游戏没有太多关系
直接分析重要的函数goldFunc就可以看到是异或 + AES
然后对我们的文件进行解密
解密的时候可以吧前面没用的东西删除掉
又得到一个C#
然后解密
有几个字节对不上,根据题目名称补全得到flag
Flag=flag{ Y0u_@re_G3meM3s7er!}
ASR
N先在factordb开根,然后用yafu分解
运行得到flag
Flag=flag{Fear_can_hold_you_prisconer_Hope_can_set_you_free}
babyweb
注册一个账号登录进去,help一下
有一个机器人,他有一个bugreport指令去访问url包括自己的服务器,工具help发现有bugreport http://host:port/login
想到可以劫持登陆的时候有一个admin账户
在自己服务器构造一个能修改admin密码的js文件,通过指令去访问这个页面
然后用admin登录就行了
使用自己服务器构造一个劫持
<html> | |
<script> | |
var url = "ws://" + "127.0.0.1:8888" + "/bot"; | |
var ws = new WebSocket(url); | |
ws.onopen = function(e) { | |
ws.send("changepw 123456"); | |
} | |
</script> | |
</html> |
退出登录admin
可以买flag但是前不够,先买一个提示看看
购买提示给了两个文件,一个是机器人的py文件,一个是交易的go文件,
分析go文件发现可以构造导致溢出,得到flag
使用burp抓包,构造溢出语句,将原来的购买语句改了
{"product":[{"id":1,"num":0},{"id":2,"num":-1}],
"product":[{"id":1,"num":0},{"id":2,"num":0}]}
最后发包,回到页面,得到flag
rcefile
由题目名称得知该题为web中的文件上传题
- 首先使用dirsearch对其提供的web地址进行扫描看看有哪些目录文件
发现其网站下面有以下几个重要目录文件
- 下载www.zip这个源码文件
对其upload.php内容进行查看
可以看到
1)限制了文件上传的大小,文件上传的类型,文件后缀有黑名单检测,
2)以及对返回的文件名进行了随机字符串md5加密
剩下的文件config.inc.php中
数据存储于cookie中,通过php反序列化函数还原并显示
同时包含spl_autoload_ register函数,这个函数是自动注册类用的,在当今特别是新型的框架(laravel、composer)中常用。
这个函数有个特点,如果不指定处理用的函数,就会自动包含“类名.php”或“类名.inc”的文件,并加载其中的“类名”类。
而之前的黑名单是不包括“.inc”文件的,
所以我们可以按照下面方法进行getshell:
1.上传webshell,后缀为.inc,被重命名为a181e810daa28a1ccc9058f88b9d24d2.inc
- 序列化一个类名为a181e810daa28a1ccc9058f88b9d24d2的类对象
- 将序列化以后的字符串作为cookie,发送到服务器上
4.服务器反序列化这个字符串后,将会自动加载a181e810daa28a1ccc9058f88b9d24d2类,由于之前spl_autoload_register函数注册的方法,会自动加载a181e810daa28a1ccc9058f88b9d24d2.inc,从而造成文件包含漏洞,getshell成功
在其目录下发现flag文件
方法二:黑名单后缀的绕过
上传文件后缀.phar的一句话木马,访问files目录解析后蚁剑连接
Factor
第一部分羊城杯的一个题目变形尝试对 *N*1*N*2 进行连分数展开并求其各项渐进的分数
记为 *t**i**s**i* 并验证 *N*1%*t**k*==0 是不是成立,如果是成立的,那么 *q*1=*t**k*,*q*2=*s**k*
成功可以分解n11,n12.第二部分,第三部分则是d^3ctf一道题目的变形
可以按照那个道题的方法分开构造两个等式即可成功分解得到flag
这边我是在github上拿的已经构造好的脚本改了改
得到FLAG