根据不同类型的攻击:get\post\cookie,采取不同的防御机制
2017-07-20 17:18
375 查看
特点:
1.GET和POST的区别
A. 从字面意思和HTTP的规范来看,GET用于获取资源信息而POST是用来更新资源信息。
B. GET提交请求的数据实体会放在URL的后面
C. GET提交的数据长度是有限制的,因为URL长度有限制,具体的长度限制视浏览器而定。而POST没有,所以提交大量数据选用post
D. GET提交的数据不安全,因为参数都会暴露在URL上。
2.Cookie和Session的区别和联系
Cookie和Session都是为了保存客户端和服务端之间的交互状态,实现机制不同,各有优缺点。
首先一个最大的区别就是Cookie是保存在客户端而Session就保存在服务端的。
Cookie是客户端请求服务端时服务器会将一些信息以键值对的形式返回给客户端,保存在浏览器中,交互的时候可以加上这些Cookie值。用Cookie就可以方便的做一些缓存。Cookie的缺点是大小和数量都有限制;Cookie是存在客户端的可能被禁用、删除、篡改,是不安全的;Cookie如果很大,每次要请求都要带上,这样就影响了传输效率。
Session是基于Cookie来实现的,不同的是Session本身存在于服务端,但是每次传输的时候不会传输数据,只是把代表一个客户端的唯一ID(通常是JSESSIONID)写在客户端的Cookie中,这样每次传输这个ID就可以了。Session的优势就是传输数据量小,比较安全。但是Session也有缺点,就是如果Session不做特殊的处理容易失效、过期、丢失或者Session过多导致服务器内存溢出,并且要实现一个稳定可用安全的分布式Session框架也是有一定复杂度的。在实际使用中就要结合Cookie和Session的优缺点针对不同的问题来设计解决方案。
攻击方式:
1、get提交的攻击
例子: 172.16.7.88?changepassword=admin&dosurepassword=admin&action=change; 设置陷阱,当用户登陆后,伪造一个地址,修改用户名和密码,获得登录后台权限
进入后台,上传一句话木马,一句话目的客户端是 中国菜刀,通过中国菜刀进入系统,获取系统文件
2、针对post的攻击【待更新】
3、针对cookie的攻击
利用工具,监听,截取cookie,两种方式,一种直接攻击,另一种是重放攻击
重放攻击:现在突然间忘了重放攻击是怎么个原理了。
获取cookie,send to repertor, 预登陆,修改上传的参数,传到服务器,由于brupsuit无法直接跳转页面,所以需要重新关闭代理服务器,通过response服务器返回的信息,来判断是否成功登陆。
防御:
1、get:通过一些函数过滤掉特殊字符、特殊的等式
2、post:【待更新】
3、cookie:cookie在客户端,为了避免重放攻击,在客户端需要加入新鲜因子,并且在服务器端还需要重新验证。
1.GET和POST的区别
A. 从字面意思和HTTP的规范来看,GET用于获取资源信息而POST是用来更新资源信息。
B. GET提交请求的数据实体会放在URL的后面
C. GET提交的数据长度是有限制的,因为URL长度有限制,具体的长度限制视浏览器而定。而POST没有,所以提交大量数据选用post
D. GET提交的数据不安全,因为参数都会暴露在URL上。
2.Cookie和Session的区别和联系
Cookie和Session都是为了保存客户端和服务端之间的交互状态,实现机制不同,各有优缺点。
首先一个最大的区别就是Cookie是保存在客户端而Session就保存在服务端的。
Cookie是客户端请求服务端时服务器会将一些信息以键值对的形式返回给客户端,保存在浏览器中,交互的时候可以加上这些Cookie值。用Cookie就可以方便的做一些缓存。Cookie的缺点是大小和数量都有限制;Cookie是存在客户端的可能被禁用、删除、篡改,是不安全的;Cookie如果很大,每次要请求都要带上,这样就影响了传输效率。
Session是基于Cookie来实现的,不同的是Session本身存在于服务端,但是每次传输的时候不会传输数据,只是把代表一个客户端的唯一ID(通常是JSESSIONID)写在客户端的Cookie中,这样每次传输这个ID就可以了。Session的优势就是传输数据量小,比较安全。但是Session也有缺点,就是如果Session不做特殊的处理容易失效、过期、丢失或者Session过多导致服务器内存溢出,并且要实现一个稳定可用安全的分布式Session框架也是有一定复杂度的。在实际使用中就要结合Cookie和Session的优缺点针对不同的问题来设计解决方案。
攻击方式:
1、get提交的攻击
例子: 172.16.7.88?changepassword=admin&dosurepassword=admin&action=change; 设置陷阱,当用户登陆后,伪造一个地址,修改用户名和密码,获得登录后台权限
进入后台,上传一句话木马,一句话目的客户端是 中国菜刀,通过中国菜刀进入系统,获取系统文件
2、针对post的攻击【待更新】
3、针对cookie的攻击
利用工具,监听,截取cookie,两种方式,一种直接攻击,另一种是重放攻击
重放攻击:现在突然间忘了重放攻击是怎么个原理了。
获取cookie,send to repertor, 预登陆,修改上传的参数,传到服务器,由于brupsuit无法直接跳转页面,所以需要重新关闭代理服务器,通过response服务器返回的信息,来判断是否成功登陆。
防御:
1、get:通过一些函数过滤掉特殊字符、特殊的等式
2、post:【待更新】
3、cookie:cookie在客户端,为了避免重放攻击,在客户端需要加入新鲜因子,并且在服务器端还需要重新验证。
相关文章推荐
- SpringMVC 实现根据不同的请求类型(请求方法method=GetOrPost)分别响应
- SpringMVC 实现根据不同的请求类型(请求方法method=GetOrPost)分别响应
- 后台前台传入编码处理filter(最完善版本)(根据不同请求post/get不同处理)
- GET与POST比较(数据大小、数据类型、传送形式)
- [转]post和get的不同之处
- PHP的curl实现get,post 和 cookie(几个实例)
- RecycleView根据网络返回的不同类型显示不同布局
- python 之post、get与cookie实战
- .NET根据oauth授权机制获得新浪微博的coder然后模拟Post请求获得AccessToken
- get与post区别详解,session与cookie区别,转发和重定向区别,如何实现session共享,webservice与httpservice区别
- GET POST区别及SESSION, COOKIE
- 自动根据视频文件类型选择不同播放器的JAVASCRIPT代码
- POST、GET、COOKIE、REQUEST等全局变量编码
- 根据代理机制不同,有以下几种配置方式:
- Ajax 入门之 GET 与 POST 的不同处详解
- Android 手机卫士--解析json与消息机制发送不同类型消息
- cookie,application.get.post.session.Url,transfer传值集合
- jsp乱码解决(get和post请求情况不同)
- [置顶] 针对 android端模拟教务系统登陆,主要针对抓包过程,post,get请求,和解析网页和cookie(二)
- session、cookie区别?get、post区别?