赞
踩
明天要去百度钱包面试,整理出一些关于安全的一些东西.
string 型sql注入一般是由对特殊字符过滤不严格导致的. NULL ’ ” \
int 型sql注入 在数字后面加入其它关键字
$res = "1 union select";
echo intval($res); // 1
解决办法:
1.开启GPC 对 COOKIE, POST,GET 的值进行过滤;
2.可利用 addslashes() 函数 实现四种符号过滤( ’ ” \ NULL );
3.可是用PDO prepare处理sql语句,通过预先编译,将sql模板与sql变量分两次发送给mysql,变量的转义处理由mysql来执行
一般攻击者会将一个带有参数的URL进行伪装,诱惑你点击,当你点击后就会获得你的一些信息;
最典型的例子是留言板,将带有特殊标签的代码插入你的数据库,当你读取的时候,代码就会执行;
1.将可执行的标签事件加入白名单中,并用正则表达式匹配,有则行,无责止.
2.可是用一些过滤脚本标签函数进行过滤;
CSRF攻击的原理是基于web浏览器的隐式身份验证机制,可以确保是一个浏览器发出的,但确保不了用户批准与否.
解决方案:
1.可在后台生成一串秘钥,提交表单时验证其一致性,true则过,false则止.
2.在敏感位置加入验证码
3.在加入一个验证cookie 提交的时候带如后台进行验证.
mcrypt 扩展是 php加密支持库.开启后支持一些常见的算法跟模式(未深究)
可凭借加密串对数据进行加密与解密,常见算法有 DES,3DES,RC2,RC4,RC5,AES等.
有私钥 与 公钥,加密解密使用不同的秘钥,创建算法RSA,加密解密速度相对较慢.
常用的单向加密算法有MD5() 32位字符 sha1() 40位字符,相同的字符串产生的结果是一样的,为避免碰撞,建议添加salt.
1.密码设置的尽量复杂,
2.MD5(密码)+salt
防止暴力破解
防止针对该服务器出现的漏洞攻击
防止针对该版本php漏洞进行攻击
单独跑一台API服务器,数据库只允许API服务器访问.
在API服务器上监控调频率.防止拖库
因为会执行比人的JS 尽量选择大厂
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。