①.、命令注入(Command Injection)
②.、eval注入(Eval Injection)
④.、跨网站脚本攻击(Cross Site Scripting, XSS)
⑤.、SQL注入攻击(SQL injection)
⑥.、跨网站请求伪造攻击(Cross Site Request Forgeries, CSRF)
⑦.、Session 会话劫持(Session Hijacking)
⑧.、Session 固定攻击(Session Fixation)
⑨.、HTTP响应拆分攻击(HTTP Response Splitting)
①.0、文件上传漏洞(File Upload Attack)
①.1、目录穿越漏洞(Directory Traversal)
你这截图上不是有方法么,检查后台的代码,将用户提交过来的信息进行htmlspecialchars()后在操作数据.或者自己编写代码,将特殊符号进行正则匹配然后给替换掉.
①post数据
封装转义函数 防sql注入 ?eag:addslashes($username);addslashes($password);?
eag:防止sql注入函数封装?
function deepslashes($data){
#判断$data的表现形式 并且需要处理空的情况
if(empty($data)){
return($data);
}
#高级简写 return is_array($data) ? array_map('deepslashes',$data) : addslashes($data);
#初级写法
if(is_array($data)){
#递归循环遍历处理多维数组
foreach ($data as $v) {
return deepslashes($v);
}else{
#单一变量
return addslashes($data);
②get数据
指url 传参数导致sql发生改变
解决方案
①强制转换,使用函数intval 或者 数据类型 的关键字int
②隐式转换,通过运算,只需要+0即可
③xss跨站脚本攻击
指恶意攻击向web页面插入html、js标签导致页面出现错误
转义标签'' ''即可,有以下php函数可解决
htmlspecialchars 函数 和 htmlentites函数
eag:
return is_array($data) ? array_map('deepslashes',$data) :?htmlspecialchars?($data);
使用php安全模式
服务器要做好管理,账号权限是否合理.
假定所有用户的输入都是"恶意"的,防止XSS攻击,譬如:对用户的输入输出做好必要的过滤
防止CSRF,表单设置隐藏域,post一个随机字符串到后台,可以有效防止跨站请求伪造.
文件上传,检查是否做好效验,要注意上传文件存储目录权限.
防御SQL注入.?
避免SQL注入漏洞
①使用预编译语句
②使用安全的存储过程
③检查输入数据的数据类型
④从数据库自身的角度考虑,应该使用最小权限原则,不可使用root或dbowner的身份连接数据库.若多个应用使用同一个数据库,也应该为数据库分配不同的账户.web应用使用的数据库账户,不应该有创建自定义函数,操作本地文件的权限.
避免XSS跨站脚本攻击
①假定所有用户输入都是"邪恶"的
②考虑周全的正则表达式
③为cookie设置HttpOnly,防止cookie劫持
④外部js不一定可靠
⑤出去不必要的HTML注释
⑥ 针对非法的HTML代码包括单双引号等,使用htmlspecialchars()函数.
以上就是土嘎嘎小编大虾米为大家整理的相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!