晚上没有加班,回来后尝试几个感觉不错的行动:1.列出当天最有意义的五件事;2.靠墙站,纠正自己的姿势同时锻炼眼睛;这两点以后也要坚持成为每天的习惯。然后我又陷入了知乎的各种信息中,一个多小时的时间悄悄地流逝,我浏览过的内容中印象深的是性格改变,自我提升,自我管理,web安全相关的内容。下面摘录我觉得很不错的Web安全相关的内容:

CSRF 攻击

CSRF的全称是Cross Site Request Forgery,就是跨站点伪造请求攻击。 简单理解:Bad guy盗用你的身份,做桌下交易。

详细原理看Cross Site Request Forgery

经典案例:

看看乌云网友如何通过CSRF漏洞,自动加关注和发微博。 我是如何刷新浪微博粉丝的

防御措施:

最有效的措施,对敏感操作增加CSRF Token验证并尽量采用POST请求方式(虽然GET 也可以增加Token验证)。

1、用户第一次请求网站是生成CSRF Token并保存到session中。 2、POST请求时,增加Input Field csrf_token, 参数值通过session获得。 3、服务器端验证Token的合法性,并更新token。

XSS攻击

XSS攻击可以说最常见最严重的漏洞攻击了。

XSS的全称是Cross-site Scripting,就是跨站脚本攻击。主要分为非存储型XSS(反射型)和存储型XSS. 详细介绍看WIKI吧: Cross-site scripting

防御措施:

1、输入过滤, 即使用Filter 过滤一些敏感字符"<" ">" "#" "script"等. 2、输出过滤(output encoding),htmlEncode, javascriptEncode 3、对敏感操作增加验证码

过滤工具推荐(JAVA):

https://code.google.com/p/owaspantisamy  (比较全面,但有点重)
https://code.google.com/p/xssprotect/

SQL注入攻击

SQL注入这种老掉牙的攻击手段,我就不多介绍了。

最简单的防御措施,使用预编译方式绑定变量:

JDBC 使用PreparedStatement.

mybatis/ibatis 使用静态变量#

正确地使用Cookie

1、对于无需JS访问的cookie设置HTTPOnly 2、不要在cookie存放用户敏感数据。

合理设计一个cookie自动登录方案

要保存哪些数据:

1、cookie保存base64 encode(username|sequence|token)的value。

2、服务器使用Redis的Hashs结构保存以下这几个值。

Key: user::cookie hashKey: userAgent_ip,userAgent_sequence,userAgent_token,userAgent_expireTime   

如何验证COOKIE登录:

1、如果expireTime没到而且username,sequence,token均相同,登录成功。

2、如果expireTime没到,username和sequence相同,token不同,但IP相同和userAgent不同,登录成功。为什么要这样的设计?因为同一用户可能会使用的不同设备/浏览器登录。

3、其余情况均登录失败,并清空登录cookie。

4、成功登录后,服务器update token,同时更新cookie。

后续操作:

1、修改密码/点击退出,更新服务器端的token和sequence。

2、对于敏感操作(如修改个人私隐信息,Email,password等)需要输入密码。

数据安全

相信大家还记得CSDN 明文密码被暴库泄露的事件吧。 最近又有被暴库的,300w用户数据。住哪网300W+用户明文密码泄露

防御措施:

对密码采用MD5/SHA(salt+password)进行HASH,salt是一串字符,为防止Rainbow Table 破解用的, salt应该放在一个隐秘的地方(某处代码或配置文件中)。

DDOS攻击

一般来说,防御DDos的攻击是比较难,常见的DDOS方式较多(网络层DDOS、应用层DDOS等)。

一些非物理措施:

1、增加anti-spam 机制

2、限制IP请求频率, 结合ip+cookie定位一个client

3、调小Timeout, KeepAliveTimeOut, 增加MaxClients

4、增加容灾机器,优化网站性能。

5、合理配置防火墙。

摘自:http://www.qixing318.com/article/programmers-need-to-master-the-knowledge-of-web-security.html

  • 一切的安全问题都体现在“输入输出”上,一切的安全问题都存在于“数据流”的整个过程中。
黑客通过输入提交“特殊数据”,特殊数据在数据流的每个层处理,如果某个层没处理好,在输出的时候,就会出现相应层的安全问题。
精彩举例:

1. 如果在操作系统层上没处理好,比如Linux的Bash环境把“特殊数据”当做指令执行时,就产生了OS命令执行的安全问题,这段“特殊数据”可能长得如下这般:
; rm -rf /;

2. 如果在存储层的数据库中没处理好,数据库的SQL解析引擎把这个“特殊数据”当做指令执行时,就产生SQL注入这样的安全问题,这段“特殊数据”可能长得如下这般:
' union select user, pwd, 1, 2, 3, 4 from users--

3. 如果在Web容器层如nginx中没处理好,nginx把“特殊数据”当做指令执行时,可能会产生远程溢出、DoS等各种安全问题,这段“特殊数据”可能长得如下这般:
%c0.%c0./%c0.%c0./%c0.%c0./%c0.%c0./%20

4. 如果在Web开发框架或Web应用层中没处理好,把“特殊数据”当做指令执行时,可能会产生远程命令执行的安全问题,这段“特殊数据”可能长得如下这般:
eval($_REQUEST['x']);

5. 如果在Web前端层中没处理好,浏览器的JS引擎把“特殊数据”当做指令执行时,可能会产生XSS跨站脚本的安全问题,这段“特殊数据”可能长得如下这般:
'"><script>alert(/cos is my hero./)</script>

...

  • 摘自:http://www.zhihu.com/question/21606800

2014第7周1Web安全概念学习相关推荐

  1. 2014第7周日最强大脑

    今天上午在屋里,下午在中影影城看了所有的最强大脑系列节目,兴奋之余有种莫名的失落感,先是为一些选手知道自己的天赋特长而不知道如何用而惋惜,后来想到很多人可能究其一生都无法发现自己的天赋特长,很多人或许 ...

  2. 周小四:秉持技术匠心走向世界舞台

    周小四,1974年出生于湖北省孝感市,中共党员,美国佛罗里达国际大学计算机科学硕士.工商管理硕士.现任北京青云科技股份有限公司多云与边缘计算平台资深总监.精通云计算.大数据技术,有着20多年IT行业工 ...

  3. 租房有深坑?手把手教你如何用R速读评论+科学选房

    图片来源:网络 编译 Hope.臻臻.CoolBoy 文章来源 大数据文摘出品 如有转载,请联系原作者. 最近,租房这事儿成了北漂族的一大bug,要想租到称心如意的房子,不仅要眼明手快,还得看清各类& ...

  4. 用计算机实现工业自动化,计算机技术在工业自动化控制系统中的应用

    摘 要:随着现代社会不断发展,工业产业也得到较快发展,并且得到较理想成果.在现代工业生产中自动化控制系统有着十分广泛的应用,并且在实际生产中发挥着十分重要的作用.在工业自动化控制系统实际运行过程中,计 ...

  5. 转大神的日志 【大杂烩】杂7杂8的东西

    2013.8.21 今天是第一天搬到5栋,新的环境,新的面孔.工作上暂时没有安排,可以先看看资料,早上把iptables重新看了一下,整理了一下链和表的关系,并且在MR3080上进行了实验. 2013 ...

  6. 【大杂烩】杂7杂8的东西

    2013.8.21 今天是第一天搬到5栋,新的环境,新的面孔.工作上暂时没有安排,可以先看看资料,早上把iptables重新看了一下,整理了一下链和表的关系,并且在MR3080上进行了实验. 2013 ...

  7. 包头新松机器人_煤矿机器人现状及发展方向

    随着科技的不断进步和对机器人代替人类工作的不断需求,人工智能在煤矿的研究和应用得到了快速发展.<中国制造2025>发展规划提出,要实现关键工序智能化.关键岗位机器人替代.生产过程智能控制以 ...

  8. 数字化与数据化——概念界定与辨析

    来源:创新科技杂志社 本文约16000字,建议阅读20+分钟本文介绍了神经科学和机器学习的进一步发展.近年来,信息技术迅猛发展,人类社会正在由工业时代迈入以数字化为特征的数字时代. [ 摘要 ] 针对 ...

  9. 你知道自己究竟“想要”什么,又该如何“做到”吗?--《认知觉醒》读书笔记

    你知道自己究竟"想要"什么,又该如何"做到"吗?--<认知觉醒>读书笔记每天有事情做不代表觉醒,每天都努力也不代表觉醒,真正的觉醒是一种发自内心的渴 ...

  10. 三星服务器内存条型号区分,三星内存条怎么样看型号(揭晓三星内存条查看技巧及报价)...

    由于内存条的价格疯涨,笔者曾无耐之下,在闲鱼上捡过服务器 但必须注意,内存条水很深,即使是服务器,一样有山寨条或加工条.笔者事先也是做过不少功课,没有金钢钻,别揽瓷器活!山寨内存条横行,如果以原厂内存 ...

最新文章

  1. mysql查询动态表名的数据类型_Mysql中查询某个数据库中所有表的字段信息
  2. java collections_扫盲java.util.Collections工具包,学习排序、二分、洗牌、旋转算法
  3. 码农回家过个年,真心不容易!
  4. OJ1081: n个数求和 (多实例测试)(C语言数组实现)
  5. poj1163 数字三角形 (动态规划)
  6. gels imagej 图片处理_如何用ImageJ进行粒度分析
  7. linux在哪里储存变量值,关于linux:在bash中,如何在变量中存储返回值?
  8. sudo apt-get:command not found报错解决
  9. ucgui界面 vc_UCGUI在VC下的仿真 | 学步园
  10. 主编编辑器怎么把文章转成长图?
  11. 夜神模拟器调试Android应用程序
  12. springboot中整合elasticsearch(基于springboot2.5.4,es版本7.13.2)
  13. 2021-03-28
  14. 高德地图看各省分界线_高德地图API生成地图(含有各个省份边界线)
  15. python服务器传输wav文件,Python处理wav文件(二进制文件读写)
  16. 揭秘刘德华感恩立志的少年时光
  17. 当电竞选手成为一种职业,游戏手机是否也会炙手可热?
  18. python生成热度图_Python - 场景热力图绘制[转]
  19. linux scons源码安装,SCons 第一章 构建并安装SCons
  20. 天涯明月刀最新服务器,天涯明月刀手游手游开服表_天涯明月刀手游手游开服时间表_新服新区预告_第一手游网...

热门文章

  1. 原码, 反码, 补码
  2. java 对文件名非法字符处理
  3. 位移的单位符号_,(有符号位移)和(无符号位移)的使用方法,及差别
  4. jquerymobile点击图片放大_微信朋友圈心形图片如何制作?电脑文件如何批量编号?...
  5. matlab liccode,车牌识别的matlab程序--(详细注释,并有使用注意点)
  6. 力扣-888 公平的糖果交换
  7. Flutter功能 之去除AppBar 阴影
  8. 基础教程之Spin旋转篇
  9. Ubuntu18.04 安装 Mysql 5.7 问题
  10. Git------GitHub官网