PHP防XXX攻击及性能

 1.php防止xss攻击

什么是XSS攻击

代码实例:

<html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>XSS原理重现</title>

    </head>

<body>

    <form action="" method="get">

    <input type="text" name="xss_input">

    <input type="submit">

    </form>

    <hr>

<?php

$xss = $_GET['xss_input'];

echo '你输入的字符为<br>'.$xss;

// echo '你输入的字符为<br>'."<script>alert('xss')</script>";

?>

</body>

</html>

注意:如果要表单提交数据到自己页面,action就设置为空

如果我们在表单中输入的是"<script>alert('xss')</script>",那么,我们接收到的结果就是

echo '你输入的字符为<br>'."<script>alert('xss')</script>";

于是就弹出了alert框,相当于就修改了程序。除了这些,还能制造其他麻烦,刷新或重定向,损坏网页或表单,窃取cookie,AJAX(XMLHttpRequest)。

注意:有些浏览器自身可以识别简单的XSS攻击字符串,从而阻止简单的XSS攻击;例如chrom,我在chrom中做实验的时候,就会自动阻止,但猎豹浏览浏览器就不行。

XSS(Cross Site Scripting)攻击的全称是跨站脚本攻击,跨站脚本攻击的方式是恶意攻击者在网页中嵌入恶意脚本程序,当用户打开网页的时候脚本程序便在客户端执行,盗取客户的cookie及用户名和密码,下载执行病毒及木马程序,甚至获得客户端的admin权限等。

预防XSS攻击

从根本上说,解决办法是消除网站的XSS漏洞,这就需要网站开发者运用转义安全字符等手段,始终把安全放在心上。

简单点,就是过滤从表单提交来的数据,使用php过滤函数就可以达到很好的目的。

htmlspecialchars() 函数

代码实例:

<?php  

if (isset($_POST['name'])){  

    $str = trim($_POST['name']);  //清理空格  

    $str = strip_tags($str);   //过滤html标签  

    $str = htmlspecialchars($str);   //将字符内容转化为html实体  

    $str = addslashes($str);  //防止SQL注入

    echo $str;  

}  

?>  

<form method="post" action="">  

<input name="name" type="text">  

<input type="submit" value="提交" >  

</form> 

htmlspecialchars() 函数相当于单引号的功能,不会进行解释,你输入什么就是什么,和防SQL注入很类似。

2.open_basedir

open_basedir是php.ini中的一个配置选项,它可将用户访问文件的活动范围限制在指定的区域

PHP设置open_basedir导致的性能问题

PHP绕过open_basedir限制操作文件的方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值