如何利用$_SERVER["PHP_SELF"]变量植入script代码?
2024-09-23 18:29:39
假如我们是黑客,可以诱骗用户访问如下链接,
相当于用户会在浏览器地址栏中输入以下地址:
http://www.xxx.com/test_form.php/%22%3E%3Cscript%3Ealert('hacked')%3C/script%3E
这里文件名后的字符是URL encode characters,其等效于
<form method="post" action="test_form.php/"><script>alert('hacked')</script>
在这个页面中我们设置一个表单,表单的设置如下:
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>"> 当用户提交表单后(表单也可以为空,这样直接执行了),数据交给action指定的文件也就是当前的页面文件,并执行了后面的Javascript脚本代码(由browser自动执行)
<form method="post" action="test_form.php/"><script>alert('hacked')</script> 后面的脚本任何JavaScript代码可以添加在<script>标签中! 黑客可以利用这点重定向页面到另外一台服务器的页面上,页面 代码文件中可以保护恶意代码,代码可以修改全局变量或者获取用户的表单数据。
例如,可用如下脚本重定向页面<script>location.href('http://www.xxx.com')</script>
实际动手如下:我们编号含有以上要求的表单文件在index.php中,本地访问(已经搭好了apache服务器)
http://localhost/phptest/index.php/%22%3E%3Cscript%3Ealert('hacked')%3C/script%3E
在Edge中效果:
然后显示:
在chrome中效果
最新文章
- java面向对象_抽象类和接口
- IntelliJ Idea 常用快捷键列表
- Golang下的Log处理
- Android图表类库:WilliamChart
- SSIS 部署到SQL Job
- 【BZOJ】2818: Gcd(欧拉函数/莫比乌斯)
- linux ssh scp 命令
- duplicate symbol _OBJC_CLASS 错误处理方法
- Windows操作 - Photoshop为图片添加透明立体水印
- CSS3之创建透明边框三角
- 表单提交对chrome记住密码的影响
- sphinx插入css
- yum 安装 kvm
- cocos2d-x游戏开发系列教程-超级玛丽05-CMMenuScene
- (简单) POJ 2029 Get Many Persimmon Trees,暴力。
- js精确计算
- MySQL数据库— 汇总和分组数据
- 再起航,我的学习笔记之JavaScript设计模式11(外观模式)
- zip 格式解析
- js apply使用