很多朋友会发现,在打开自己电脑上的浏览器,浏览器上出现的主页页面地址被篡改且无法修改回来。
这主要是因为我们在下载一些电脑软件的时候,没有在正规软件中心平台下载,现在网络上很多电脑软件都带有病毒推广插件,我们下载安装的时候会把这些病毒推广插件一并安装在自己的电脑上,最常见的情况就是电脑浏览器主页被篡改,电脑桌面经常会弹出广告和电脑桌面出现推广页面的快捷方式图标。
电脑浏览器主页如果被恶意劫持是无法在Internet选项设置中修改回来,解决方法很简单:1、在电脑上打开浏览器进入“百度软件中心”官网;
在“百度软件中心”官网上,找一款电脑防护软件下载并安装在自己电脑上;3、安装好后,直接使用电脑防护软件的浏览器保护功能,来修改浏览器的主页地址,并把设置后的主页地址锁定住;
4、电脑浏览器主页地址修改完成后,我们还需要使用“病毒查杀”和“插件清理”功能把电脑上的推广程序清理掉。
IIS7网站监控可以做到提前预防各类网站劫持、并且是免费在线查询、适用于各大站长、政府网站、学校、公司、医院等网站。他可以做到24小时定时监控、同时它可以让你知道网站是否被黑、被入侵、被改标题、被挂黑链、被劫持、被墙及DNS是否被污染等等功能、更是拥有独家检测网站真实的完全打开时间、让你作为站长能清楚的知道自己网站的健康情况!
官方图
官方地址:IIS7网站监控
如果自己电脑的浏览器主页没有被恶意劫持,也建议大家可以去百度软件中心找一款电脑防护软件安装在自己的电脑上,现在各大电脑防护软件都有浏览器保护功能,如果浏览器主页地址被恶意篡改,这些防护软件会监测到并提示我们是否阻止。
另外,如果要下载某款电脑软件,建议去正规的软件中心平台下载,因为正规软件中心平台上的软件都是经过验证过的,相对来说会安全很多。
json劫持攻击又为”JSON Hijacking”,攻击过程有点类似于csrf,只不过csrf只管发送http请求,但是json-hijack的目的是获取敏感数据。
一些web应用会把一些敏感数据以json的形式返回到前端,如果仅仅通过cookie来判断请求是否合法,那么就可以利用类似csrf的手段,向目标服务器发送请求,以获得敏感数据。
比如下面的链接在已登录的情况下会返回json格式的用户信息:
http://www.test.com/userinfo
攻击者可以在自己的虚假页面中,加入如下标签:
1
如果当前浏览器已经登录了www.test.com,并且cookie未过期,然后访问了攻击者的虚假页面,那么该页面就可以拿到json形式的用户敏感信息,因为script标签会自动解析json数据,生成对应的js对象。然后再通过
1 Object.prototype.defineSetter
这个函数来触发自己的恶意代码。
但是这个函数在当前的新版本chrome和firefox中都已经失效了。
jsonp劫持
jsonp是一个非官方的协议,利用script元素的开放策略,网页可以得到从其他来源动态产生的json数据,因此可以用来实现跨域。(关于JSONP可以参考我的博文:https://www.jb51.net/article/31167.htm)
web程序如果通过这种方式跨域之后,攻击者完全可以在自己的虚假页面中发起恶意的jsonp请求,这就引来了安全问题。比如:
6
如果服务器端的userinfo接口支持jsonp,那就会使虚假页面成功执行useUserInfo函数,从而导致安全问题。
解决方法
其实json劫持和jsonp劫持属于CSRF( Cross-site request forgery 跨站请求伪造)的攻击范畴,所以解决的方法和解决csrf的方法一样。
1、验证 HTTP Referer 头信息;
2、在请求中添加 csrfToken 并在后端进行验证;
关于CSRF攻击可以参考我的博文:https://www.jb51.net/article/157550.htm
PS:JSONP劫持漏洞实例
getUser.php
8 <?php
header(‘Content-type: application/json’);
j
s
o
n
c
a
l
l
b
a
c
k
=
h
t
m
l
s
p
e
c
i
a
l
c
h
a
r
s
(
jsoncallback = htmlspecialchars(
jsoncallback=htmlspecialchars(_REQUEST [‘jsoncallback’]);//获取回调函数名
//json数据
//$json_data = ‘[“id”,“user”]’;
$json_data=’({“id”:“1”,“name”:“Aaron”})’;
echo $jsoncallback . “(” . $json_data . “)”;//输出jsonp格式的数据
?>
Payload利用:
客户端实现 callbackFunction 函数
16
17