首頁  >  文章  >  後端開發  >  安恒429|复赛 web write up && 决赛经验

安恒429|复赛 web write up && 决赛经验

WBOY
WBOY原創
2016-06-20 12:30:051343瀏覽

由于已经没有复赛的环境,只能文字回忆一下了

复赛给了web 2 350 原本是想考一个SSRF利用gopher去搞定一个fastcgi的外联端口,执行命令

具体的文章

http://zone.wooyun.org/content/1060

http://drops.wooyun.org/web/9845

然而出题人没把好关 长亭3分钟秒掉这道题后基本就猜到有奇解

那么其实就是简单的file协议 file://index.php 拿到了flag

然后一开始卡住的web 1 300呢,是通过注册超长字符串的用户,重复注册爆出dumplicate entry

得到管理员的hash admin_7365598732 24461a3ef270c652949f5fc37f37fcb2

解密后得到RGoN7r}G8lnrYBAX6n

登陆管理页,有一个删除文件的功能,传递的id参数可以用报错注入payload

+and(select+1+from(select+count(*),concat((select+table_name+from+information_schema.tables+limit+0,1),floor(rand(0)*2))x+from+information_schema.tables+group+by+x)a)%23

得到flag,然后居然还是一血。大概因为注起来很麻烦吧。

凭借着自己拿下的650+d神的500以及外校队友拿下的密码学题目 7th进入决赛。

===========================================================================

帅不过三秒 下午决赛开始被血虐

送走大寸自己稍微有点小低落,然后就被抓了先手

web我一开始没审计代码的时候,发现了至少3个点

这里用黑名单进行过滤,导致php5等后缀可以绕过

另外就是前台文章的一个root注入点

然而修复的时候使用的正则表达式/select.*from/i

算是最大的败笔,没有加s修饰符的话,用%0a是可以绕过的。

在注入的时候into outfile一直会把前面的用户数据读进去,一开始想的方法是

用户名注册为 然后导出

得到了wildwolf的webshell。但后来由于插内存马的时候报错,导致整个数据废掉了。

后来用union select来覆盖前面的数据,重新导出了,但是于事无补,自己也只拿到了200多分。

期间pwn和web服务一直被人打挂掉,导致了巨额失分。

最后今天回来的时候重新写了一份php的自动化防护脚本,希望以后攻防赛有机会用上

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn