cookie
字段的修改,代码审计,数字和字符串弱等于绕过,科学计数法替换长数字,GET请求包转换POST请求包
menu
菜单栏会有个买flag
界面,进去后界面就有要满足的要求,必须是学生,必须密码正确,还必须钱够。password
变量的判断,是一个简单的代码审计,is_numeric
函数使得传入的参数不能全数字,但是结果还得和404
相等。但是由于是弱相等,所以只需要404
后面跟字母即可通过判断,因为字符串和数字进行弱等于比较,会把字符串强转成int
型,就会把后面的字母舍弃,保留前面的数字部分,即password=404a
post
传参,先抓取该页面的数据包,发现请求头cookie
有user
字段值为0
,既然是数字表示那修改成1
应该就是学生用户了。再右键将GET
数据包转化成POST
数据包,传入password
参数
money
为参数,传参成功回显,确定money
为参数。传入足够的钱之后发现回显数字太长,这就可以使用科学计数法,使用1e10
来表示很长的数字了即可拿下flag
cookie: user=1
password=404a&money=1e10