您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 资本运营 > WEB应用开发中的安全算法使用策略
WEB应用开发中的安全算法使用策略安天实验室2012-2-20自我介绍姓名:童志明简介:ASM/C/C++程序员,专科肄业,自学未成才职务:目前任安天反病毒引擎研发中心总经理Mail:andy@antiy.com2020/1/29创造安全每一天第2页演讲内容背景介绍我们所面临的威胁那些错误的实现安全算法使用策略结束2020/1/29创造安全每一天第3页背景介绍关于演讲中的名词说明以及泄密事件的背景2020/1/29创造安全每一天第4页背景介绍—名词相关HASH:简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要。加密/密文:把口令变换的过程称为加密,以及把口令变换后的结果称为密文并不科学,但却是公众所能理解的。计算速度:关于HASH的计算速度,本文所指的是单位时间内的计算次数2020/1/29创造安全每一天第5页背景介绍—泄密事件•索尼数据遭窃受影响的用户可能超过1亿索尼•世嘉欧洲分公司承认世嘉的通行证系统遭到非法入侵,有129.0755万用户的资料被盗取。世嘉•约有36万用户受到影响,约有20万位客户的帐户信息被窃花旗银行•600万用户数据泄密CSDN•800万用户数据泄密多玩•约3000万用户数据泄密天涯2020/1/29创造安全每一天第6页我们所面临的威胁我们所面临的安全威胁2020/1/29创造安全每一天第7页威胁无处不在—安全是一个整体在当前0day横行的时代,几乎没有网站和应用可以绝对保证自己数据库系统的安全2020/1/29创造安全每一天第8页数据泄露系统服务运维备份威胁无处不在—信息的二次利用信息被盗后,攻击者会对信息进行二次利用2020/1/29创造安全每一天第9页那些错误的实现在泄密事件发生后我们听到了各种各样的声音……2020/1/29创造安全每一天第10页那些错误的实现—使用标准HASH算法不合理但比较靠谱的实现如何应对统计攻击?2020/1/29创造安全每一天第11页那些错误的实现—使用标准HASH算法不合理但比较靠谱的实现如何应对高频碰撞?2020/1/29创造安全每一天第12页那些错误的实现—联合使用HASH与使用标准HASH算法相同如何应对彩虹表?2020/1/29创造安全每一天第13页简写功能应用场景md5对密码做MD5大量常见网站md5(md5($pass))对密码的MD5值再做MD5大量常见网站md5($pass.$salt)将密码与盐连接,做MD5Joomla等开源CMS系统md5($salt.$pass)将盐与密码连接,做MD5osCommerce等开源电子商务系统md5(md5($pass).$salt)将密码的MD5值与盐连接,再做MD5Vbulletin、IceBB、Discuz等论坛系统md5(md5($salt).$pass)将盐的MD5值与密码连接,再做MD5md5($salt.$pass.$salt)将盐、密码、盐连接到一起,做MD%TBDev等在线P2P系统md5($salt.md5($pass))将盐与密码的MD5值连接,再做MD5md5(md5($pass).md5($salt))将密码的MD5值与盐的MD5值连接,再做MD5md5(md5($salt).md5($pass))将盐的MD5值与密码的MD5值连接,再做MD5ipb、mybb等论坛系统MD5(Unix)对密码做MD5,以Unixshadow风格存储phpBB3等论坛系统、WordPress等博客系统md5(unicode)对密码的Unicode做MD5Unix/Linux系统sha1对密码做SHA-1大量常见网站sha1($salt.$pass)将盐与密码连接,做SHA-1sha1(lower($username).$pass)将小写用户名与密码连接,做SHA-1SMF等论坛系统sha1(upper($username).’:’.upper($pass))将大写用户名连接字符’:’、连接大写密码,做SHA-1ManGOS等网游服务器系统sha1($username.’:’.$pass)将用户名连接字符’:’、连接密码,做SHA-1sha256对密码做SHA-256sha512对密码做SHA-512mysqlMySQL账户密码加密方式MySQL数据库系统第4版及以前mysql5MySQL账户密码加密方式MySQL数据库系统第5版及以后mssqlSQLServer账户密码加密方式微软SQLServer服务器系统Des(unix)对密码做DES加密,以Unixshadow风格存储Unix/Linux系统NTLMWindowsNT域认证协议加密方式WindowsNT、WindowsServer2000等操作系统serv-uServ-U账户密码加密方式Serv-UFTP服务器系统radminv2.xRadmin账户密码加密方式Radmin远程控制系统那些错误的实现—联合使用HASH彩虹表生成器2020/1/29创造安全每一天第14页那些错误的实现—自己设计算法如果保证HASH的均匀性?HashCollisionDoS(通过Hash碰撞进行的拒绝式服务攻击)2020/1/29创造安全每一天第15页引自安天2010.03《基于内存对象对26种HASH方法的测试结果》那些错误的实现—慢速HASH慢速HASH能有多慢?无法解决上述的问题!!!2020/1/29创造安全每一天第16页安全算法使用策略使用正确的设计方案、正确的算法是我们所需要的……2020/1/29创造安全每一天第17页安全算法使用策略—APM介绍2020/1/29创造安全每一天第18页介绍算法RSA、SHA256基于现有开源包的算法合理应用的示例,不是算法实现也不是新算法。一用户一盐个性化量(用户名)盐表同行经验(UID、注册时间)提供还原模式,不建议采用。最无奈——“一号通”无解资源开源安全算法使用策略—为什么要使用标准算法标准的算法是公开的标准的算法其合理性是经过科学验证的有些问题不是算法的问题,是如何合理使用的问题2020/1/29创造安全每一天第19页安全算法使用策略—如何应对密文攻击攻击者掌握的资源-计算速度-计算资源2020/1/29创造安全每一天第20页主机环境:Core2(T7250)2.0G,2Mcache,4GBRAM,Windowsserver200864位虚拟机环境:VmwareServer,Ubuntu10.04,512MBRAM在虚拟机中针对16个字节的数据计算MD5,2.99秒内共1759393次。安全算法使用策略—如何应对密文攻击常态速度2020/1/29创造安全每一天第21页GPU加速之后引自安天2010.03《基于内存对象对26种HASH方法的测试结果》安全算法使用策略—如何应对密文攻击现有的攻击手段2020/1/29创造安全每一天第22页统计攻击•基于密码出现的频率的统计攻击•高频碰撞反向查询•彩虹表•MD5反查网站•….暴力破解•各种HASH计算的工具•…..安全算法使用策略—如何应对密文攻击为什么要使用盐?2020/1/29创造安全每一天第23页安全算法使用策略—如何应对密文攻击当用户首次提供密码时(通常是注册时),由系统自动往这个密码里加入SALT,然后再散列。而当用户登录时,系统为用户提供的代码撒上同样的SALT,然后散列,再比较散列值,已确定密码是否正确。2020/1/29创造安全每一天第24页安全算法使用策略—如何应对密文攻击APM示意图2020/1/29创造安全每一天第25页安全算法使用策略—盐的使用单一SALT一站一盐一用户一盐2020/1/29创造安全每一天第26页密码HASH123456E10ADC3949BA59ABBE56E057F20F883E123456E10ADC3949BA59ABBE56E057F20F883E123456E10ADC3949BA59ABBE56E057F20F883E密码SALTHASH123456Wsdi45406CC18B34EFCEABF801370B6AC0BAC97123456Wsdi45406CC18B34EFCEABF801370B6AC0BAC97123456Wsdi45406CC18B34EFCEABF801370B6AC0BAC97密码SALTHASH123456544dis2455EB95E69898DBB4863CC1D5B9ED69E123456ridkm554BAAE50DD75CD70619B7E0C394E0D08D123456ttdfci29E12FFB5D4ABCD73E9A6D12B07780126123456dkvi6dcF6DD2AA48071D7148BC03BD297F3CA33123456ck6d2wd880C1FE54C171F043B6428BC4437C9B1其它策略—APM中的KC随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。如果阅读过APM代码,你会发现实现中没有使用SQL而是用的KyotoCabinet2020/1/29创造安全每一天第27页其它策略—常见口令规避上述的所有问题中,“一号通”是最无奈的2020/1/29创造安全每一天第28页其它策略—常见口令规避常态“一号通”检查高频密码、已泄漏密码提示动态均衡(亦有弊端)2020/1/29创造安全每一天第29页其它策略—运维不要把鸡蛋放在一个篮子里2020/1/29创造安全每一天第30页参考资料演讲者关于密码相关策略的文章AntiyPasswordMixer关于GPU加速算法创造安全每一天第31页联系方式公司:安天科技股份有限公司姓名:童志明Mail:andy@antiy.com2020/1/29创造安全每一天第32页感谢大家的关注!
本文标题:WEB应用开发中的安全算法使用策略
链接地址:https://www.777doc.com/doc-3369574 .html