javascript劫持属于HTTP劫持中的一种,主要是劫持js文件,然后在网页中通过js脚本往网页中注入图片和链接或者框架广告,也叫流量劫持。 文明一点的劫持只是右下角放一个固定广告,不文明的就自动弹出新广告窗口(一般会被浏览器拦截)或者给整个网页添加点击事件弹出新广告页面。
对网站发动XSS攻击的方式有很多种,仅仅使用php的一些内置过滤函数是对付不了的,即使你将filter_var,mysql_real_escape_string,htmlentities,htmlspecialchars,strip_tags这些函数都使用上了也不一定能保证绝对的安全。
那么如何预防 XSS 注入?主要还是需要在用户数据过滤方面得考虑周全,在这里不完全总结下几个 Tips
1. 假定所有的用户输入数据都是“邪恶”的
2. 弱类型的脚本语言必须保证类型和期望的一致
3. 考虑周全的正则表达式
4. strip_tags、htmlspecialchars 这类函数很好用 <b
一、问题描述:
如果用户输入的数据在未经处理的情况下插入到一条SQL查询语句,那么应用将很可能遭受到SQL注入攻击,正如下面的例子:
$unsafe_variable = $_POST['user_input'];
mysql_query("INSERT INTO `table` (`column`) VALUES ('" . $unsafe_variable . "')");
我们都知道,只要合理正确使用PDO,可以基本上防止SQL注入的产生,本文主要回答以下两个问题:
为什么要使用PDO而不是mysql_connect?
为何PDO能防注入?
使用PDO防注入的时候应该特别注意什么?
一、为何要优先使用PDO?
PHP手册上说得很清楚:
Prepared statements and stored procedures<b
输入值/表单提交参数过滤,防止sql注入或非法攻击的方法: