SQL注入
对输入进行正则过滤,对敏感字符进行替换
常用正则
$pregs = '/select|insert|update|CR|document|LF|eval|delete|script|alert|\>|\<|\'|\/\*|\#|\--|\ --|\/|\*|\-|\+|\=|\~|\*@|\*!|\$|\%|\^|\&|\(|\)|\/|\/\/|\.\.\/|\.\/|union|into|load_file|outfile/';
$_GET['data'] = preg_replace('$pregs','','$_GET['data']');
存在于搜索框中的SQL注入
使用反斜杠处理函数addslashes()函数
$_GET['search'] = addslashes($_GET['search']);
XSS
对用户输入进行正则替换
$pregs = '/select|insert|update|CR|document|LF|eval|delete|script|alert|\>|\<|\'|\/\*|\#|\--|\ --|\/|\*|\-|\+|\=|\~|\*@|\*!|\$|\%|\^|\&|\(|\)|\/|\/\/|\.\.\/|\.\/|union|into|load_file|outfile/';
$_GET['DATA'] = preg_replace('$pregs','','$_GET['DATA']');
存在于搜索框中的XSS
使用htmlspecialchars()函数把预定义字符转换为 HTML 实体
<?php
echo htmlspecialchars($_GET['search']);
?>
文件上传
对上传文件进行编码重命名,重新添加后缀
同时在返回文件名的上传中,可以防止文件名造成XSS
重命名文件名
$clean_user_avatar = $uploaddir . '/' . md5(time().mt_rand(10000,99999))|.'png';
弱口令
没什么说的,赶紧改密码吧!!!
$_SERVER['PHP_SELF']插入恶意代码漏洞
漏洞说明 https://blog.csdn.net/load_life/article/details/7674709
相关安全性:http://www.360doc.com/content/18/0819/20/58821437_779534430.shtml
使用htmlspecialchars()函数把预定义字符准换位HTML实体
在调用时包裹函数即可
htmlspecialchars($SERVER['PHP_SELF'])
文件包含
尽量使用include_once()包含指定文件
避免用户可传入变量包含
目录遍历
更改Apache配置
CSRF
登录界面login.php 登录验证界面logcheck.php
添加token验证
$_SESSION['logtoken'] = md5(unqid(microtime(true),true));
只需通过前端post传输form表单添加标签传输即可
<input type="hidden" name="logtoken" value="<?php echo $_SESSION['logtoken']; ?>">
在登录验证界面可添加if语句验证
if($_POST['logtoken']!=$_SESSION['logtoken']){
die("无效token");
}
1 条评论
《生死环线》科幻片高清在线免费观看:https://www.jgz518.com/xingkong/75270.html