evalWEB 未解决

分数: 15 金币: 1
题目作者: harry
一  血: moren448
一血奖励: 1金币
解  决: 20348
提  示:
描  述:
eval
评论
finti 5年前

此题考察php相关,include是将flag.php文件包含进页面代码,顺便提示做题人flag位置,$request可用与接受get和post的传递的参数,eval函数可以把字符串作为php命令执行,知道这些你就可以用get方法传递hello变量,并在hello其中写入查看flag.php的命令了

回复 16

会煮面999 5年前

直接使用system("grep -nr flag{ /")暴力搜索hhh :)

回复 1

jang 5年前

简单,system()绕过,然后括号加ls ../../../看有没flag,直接cat ../../../flag出

回复 1

scr20011125 5年前

为什么用tac而不是cat:因为那个php文件带有<?php和后面的?>,正序输出会被网页当做php代码运行(结果为空),但是<?php 和?>不在同一行,所以tac反序输出使其不闭合,才可以显示其字符串的形式(一个大佬告诉我的)

回复 1
巨人肩膀上的矮子 5年前

用cat也可以。cat只不过必须在源码里面看,而tac显示在前端

回复 1

CHOSEN1 5年前

hello=system("cat flag.php") 查看源码,因为) show_source() 函数对文件进行高亮,所以不会显示,使用tac就不会高亮。

回复 2
scr20011125 5年前

这个说法不是很准确,因为那个php文件带有<?php和后面的?>,正序输出会被网页当做php代码运行(结果为空),但是<?php 和?>不在同一行,所以tac反序输出使其不闭合,才可以显示其字符串的形式(一个大佬告诉我的)

回复 1

Ares157 5年前

那个1)"好像没必要啊

回复 0

endchen 5年前

php还是很重要呀

回复 0

Angelafish 5年前

flag = 'Too Young Too Simple';手动滑稽,注意eval哦!

回复 1

13963065269 5年前

得学一手PHP语言了

回复 4

ikeike 5年前

是因为eval函数可以将字符串当作代码执行,毕竟给了源码,所以呢可以构造payload,闭合之后执行读取flag的函数,比方使用show_source,print_r等等。

回复 0

WriteUp

image
harry

1 金币

评分(13)

解题动态

小白修炼日常 攻破了该题 48分钟前
tafeishi 攻破了该题 2小时前
diandianying 攻破了该题 21小时前
amuliang1 攻破了该题 23小时前
恣睢 攻破了该题 1天前
xiaoqixy1 攻破了该题 1天前
lonely_wolf 攻破了该题 1天前
soymilk 攻破了该题 1天前
gedeer 攻破了该题 2天前
ysjy 攻破了该题 2天前
cholmon 攻破了该题 2天前
ling_x 攻破了该题 2天前
Anos 攻破了该题 3天前
15369226763 攻破了该题 3天前
人生1234 攻破了该题 3天前
asasehotaru 攻破了该题 3天前
wwwwander 攻破了该题 4天前
re_void 攻破了该题 4天前
wefyh 攻破了该题 4天前
16533261 攻破了该题 4天前
问题反馈