https://www.secpulse.com/archives/2338.html

模拟register_globals功能的代码,在GPC为off时会调用addslashes()函数处理变量值,但是如果直接使用$_GET/$_POST/$_COOKIE这样的变量,这个就不起作用了,然而dz的源码里直接使用$_GET/$_POST/$_COOKIE的地方很少,存在漏洞的地方更加少:(

不过还有其他的绕过方法,在register_globals=on下通过提交GLOBALS变量就可以绕过上面的代码了.为了防止这种情况,dz中有如下代码:

if (isset($_REQUEST['GLOBALS']) OR isset($_FILES['GLOBALS'])) {
exit('Request tainting attempted.');
}

这样就没法提交GLOBALS变量了么?

$_REQUEST这个超全局变量的值受php.ini中request_order的影响,在最新的php5.3.x系列中,request_order默认值为GP,也就是说默认配置下$_REQUEST只包含$_GET和$_POST,而不包括$_COOKIE,那么我们就可以通过COOKIE来提交GLOBALS变量了:)

最新文章

  1. -webkit-appearance、sselect
  2. StreamReader和StreamWrite和FileStream区别和用法
  3. Scrum Meeting---Four(2015-10-28)
  4. HighChart 实现从后台取数据来实时更新柱状和折线组图
  5. C++ Variables and Basic Types Notes
  6. JS--Div中数据滚动到最后一条重新从头开始滚动
  7. 从零开始学C++之运算符重载(三):完善String类([]、 +、 += 运算符重载)、>>和<<运算符重载
  8. 数据库中的null问题
  9. 关于ios 推送功能的终极解决
  10. TJ4运行环境
  11. 《xxx系统》可用性与易用性功能增加
  12. 官方Canvas API文档
  13. jquery中innerwidth,outerwidth,outerwidth和width的区别
  14. Alpha、伪Beta 发布个人感想与体会
  15. Error: 实例 "ddd" 执行所请求操作失败,实例处于错误状态。: 请稍后再试 [错误: Exceeded maximum number of retries. Exhausted all hosts available for retrying build failures for instance 6f60bc06-fcb6-4758-a46f-22120ca35a71.].
  16. 使用Puppeteer进行数据抓取(三)——简单的示例
  17. 每日英语:Singles Day in China
  18. unity生成Android apk
  19. node 应用集合
  20. Softwaretechnik

热门文章

  1. 序列变换(hdu5248)
  2. each实现原理
  3. cookie的保存时间
  4. java冒泡排序算法
  5. 夺命雷公狗—angularjs—20—$watch监听的用法
  6. HTML5游戏引擎Phaser初体验
  7. Eclipse启动认定SDK地址,出现Error executing aapt
  8. gerrit
  9. flex datagrid 换行
  10. vs2010 仿XCode风格的头注释宏