php mongodb 注入_PHP教程

php中文网
发布: 2016-07-14 10:09:42
原创
981人浏览过

 


下面就介绍下php+mongodb注入的方法和原理

其中一篇帖子说:login.php?username=admin&passwd[$ne]=1就有可能注入,刚看的时候,我感觉挺纳闷的,这个怎么就存在注入漏洞了呢,终于从这篇帖子http://hi.baidu.com/hi_heige/item/ce93ce926dede4f428164747中发现了原因。因为PHP是可以直接提交array的,也就是说提交的是含有“$ne”索引的数组,我做了个demo:


[php]
$passwd=$_GET["passwd"]; 
var_dump($passwd); 

$passwd=$_GET["passwd"];
var_dump($passwd);
测试结果为:

array(1) { ["$ne"]=> string(1) "1" }

 


这样的话


[php]
$collection->find(array( 
    "username" => "admin", 
    "passwd" => array("$ne" => 1) 
)); 

$collection->find(array(
    "username" => "admin",
    "passwd" => array("$ne" => 1)
));
就变为了:


[php]

$collection->find(array(      "username" => "admin",      "passwd" => array("$ne" => 1)  ));  $collection->find(array(
    "username" => "admin",
    "passwd" => array("$ne" => 1)
));


如果把链接改成这种(username=[$ne]=1&passwd[$ne]=1)的话,那么会把所有的用户信息都获取过来

解决这个bug的方法为在获取参数后都把参数强制转换成string类型下:

豆包AI编程
豆包AI编程

豆包推出的AI编程助手

豆包AI编程 483
查看详情 豆包AI编程

立即学习PHP免费学习笔记(深入)”;

[php]
$collection->find(array( 
    "username" => (string)$_GET['username'], 
    "passwd" => (string)$_GET['passwd'] 
)); 

$collection->find(array(
    "username" => (string)$_GET['username'],
    "passwd" => (string)$_GET['passwd']
));这个与执行下面的mysql语句是一样的道理了,都注入了


[php]

mysql_query("SELECT * FROM collection 
    WHERE username="admin", 
    AND passwd!=1 

mysql_query("SELECT * FROM collection
    WHERE username="admin",
    AND passwd!=1
我做了个demo测试了下,果然好使。

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/477615.htmlTechArticle下面就介绍下php+mongodb注入的方法和原理 其中一篇帖子说:login.php?username=adminpasswd[$ne]=1就有可能注入,刚看的时候,我感觉挺纳闷的,这个...
相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号