最近都在摸鱼,每天不知道干啥,没法静下心来做题,今天做了这个题,最后对于题目理解模棱两可,所以写一写wp来加固一下知识点,把无字母数字rce的内容巩固一下,这道题目涉及的点比较小,想了解更多的绕过姿势还得阅读p神的文章。
打开靶机,看到源码:
<?php
highlight_file(__FILE__);
$_ = @$_GET['_'];
if ( preg_match('/[\x00- 0-9\'"`$&.,|[{_defgops\x7F]+/i', $_) )
die('rosé will not do it');
if ( strlen(count_chars(strtolower($_), 0x3)) > 0xd )
die('you are so close, omg');
eval($_);
?>
源码意思是绕过两个if,最后eval执行命令
第一个正则匹配:
\x00- 0-9 匹配\x00到空格(\x2