I'm not quite sure I understand it either, though this does execute phpinfo.
$variable = "{${phpinfo()}}";
echo "$variable is fish";
I feel I've missed the point.This is how it is executed:
$variable = "{${phpinfo()}}"; // <- Execution happens here
echo "$variable is fish";
If you pass a "{${phpinfo()}}" via GET, it is not executed. The execution has to happen later - e.g. by eval() or /e.
Re:eBay remote code execution
by snapcracker on Monday December 16, 2013 @08:50AM
(#6914639)
Haha same here… anyone care to explain?
$a = '{${phpinfo()}}'; $b = [$a]; $c = "$b";
Will execute phpinfo()... which it won't.