当前位置:首页 > 网络黑客 > 正文内容

聊一聊随机数安全

访客3年前 (2021-04-15)网络黑客535

和朋友聊到一个比较有意思的现象,在最近两年的校招面试中,大部分同学连一点根底的暗码学知识都没有, 即便是有一些浸透功底的同学。
所以这儿想和咱们聊一些简略的暗码学根底知识,不触及算法完成,更多的是和常见的缝隙场景联络起来,让问题更简略了解,有点抛砖引玉的意思。
本文首要聊一下随机数,随机数其实是十分广泛的,能够说也是暗码技能的根底。
对随机数的运用不当很或许会导致一些比较严重的安全问题, 而且这些安全问题通常会比较荫蔽。
0x01 随机数
概述
随机数在计算机运用中运用的比较广泛,最为熟知的便是在暗码学中的运用。本文首要是解说随机数运用导致的一些Web安全风。
咱们先简略了解一下随机数


分类
随机数分为真随机数和伪随机数,咱们程序运用的底子都是伪随机数,其间伪随机又分为强伪随机数和弱伪随机数。
真随机数,经过物理试验得出,比方掷钱币、骰子、转轮、运用电子元件的噪音、核裂变等
伪随机数,经过必定算法和种子得出。软件完成的是伪随机数
强伪随机数,难以猜想的随机数
弱伪随机数,易于猜想的随机数
特性
随机数有3个特性,详细如下:
随机性:不存在统计学误差,是彻底凌乱的数列
不行猜想性:不能从曩昔的数列估测出下一个呈现的数
不行重现性:除非将数列自身保存下来,不然不能重现相同的数列
随机数的特性和随机数的分类有必定的联络,比方,弱伪随机数只需求满意随机性即可,而强位随机数需求满意随机性和不行猜想性,真随机数则需求一起满意3个特性。
引发安全问题的要害点在于不行猜想性。
伪随机数的生成
咱们往常软件和运用完成的都是伪随机数,所以本文的要点也便是伪随机数。
伪随机数的生成完成一般是算法+种子。
详细的伪随机数生成器PRNG一般有:
线性同余法
单向散列函数法
暗码法
ANSI X9.17
比较常用的一般是线性同余法,比方咱们熟知的C言语的rand库和Java的java.util.Random类,都采用了线性同余法生成随机数。
运用场景
随机数的运用场景比较广泛,以下是随机数常见的运用场景:
验证码生成
抽奖活动
UUID生成
SessionID生成
Token生成
CSRF Token
找回暗码Token
游戏(随机元素的生成)
洗牌
俄罗斯方块呈现特定形状的序列
游戏爆配备
暗码运用场景
生成密钥:对称暗码,音讯认证
生成密钥对:公钥暗码,数字签名
生成IV: 用于分组暗码的CBC,CFB和OFB形式
生成nonce: 用于防护重放进犯; 分组暗码的CTR形式
生成盐:用于依据口令的暗码PBE等
0x02 随机数的安全性
比较其他暗码技能,随机数很少遭到重视,但随机数在暗码技能和计算机运用中是十分重要的,不正确的运用随机数会导致一系列的安全问题。
随机数的安全危险
随机数导致的安全问题一般有两种
应该运用随机数,开发者并没有运用随机数;
应该运用强伪随机数,开发者运用了弱伪随机数。
第一种状况,简略来讲,便是咱们需求一个随机数,但是开发者没有运用随机数,而是指定了一个常量。当然,许多人会怒发冲冠的说,sb才会不必随机数。但是,请不要疏忽我朝仍是有许多的。首要有两个场景:
开发者缺少根底知识不知道要用随机数;
一些运用场景和结构,接口文档不完善或许开发者没有仔细阅读等原因。
比方找回暗码的token,需求一个伪随机数,许多事务直接依据用户名生成token;
比方OAuth2.0中需求第三方传递一个state参数作为CSRF Token避免CSRF进犯,许多开发者底子不运用这个参数,或许是传入一个固定的值。由于认证方无法对这个值进行事务层面有效性的校验,导致了OAuth的CSRF进犯。
第二种状况,首要差异就在于伪随机数的强弱了,大部分(一切?)言语的API文档中的根底库(常用库)中的random库都是弱伪随机,许多开发天然就直接运用。但是,最重要也最丧命的是,弱伪随机数是不能用于暗码技能的。
仍是第一种状况中的找回暗码场景,关于token的生成, 许多开发运用了时刻戳作为随机数(md5(时刻戳),md5(时刻戳+用户名)),但是由于时刻戳是能够猜想的,很简略就被猜解。不行猜想性是区别弱伪随机数和强伪随机数的要害目标。
当然,除了以上两种状况,还有一些比较特别的状况,通常状况下比较罕见,但是也不扫除:
种子的走漏,算法许多时分是揭露的,假如种子走漏了,相当于随机数现已走漏了;
随机数池缺乏。这个严格来说也归于弱伪随机数,由于随机数池缺乏其实也导致了随机数是可猜想的,进犯者能够直接暴力破解。
缝隙实例
wooyun上有许多缝隙,还蛮有意思的,都是和随机数有关的。
PS:个人实力有限,以下实例底子都来自wooyun缝隙实例,在这儿谢谢各位大牛,如有侵权,请联络删去。
1.应该运用随机数而未运用随机数
Oauth2.0的这个问题特别经典,除了wooyun实例列出来的,其实许多厂商都有这个问题。
Oauth2.0中state参数要求第三方运用的开发者传入一个CSRF Token(随机数),假如没有传入或许传入的不是随机数,会导致CSRF登陆恣意帐号:
唯品会账号相关缝隙可经过csrf登录恣意账号
人人网-百度OAuth 2.0 redirect_uir CSRF 缝隙
2.运用弱伪随机数
1) 暗码取回
许多暗码找回的场景,会发送给用户邮件一个url,中心包括一个token,这个token假如猜想,那么就能够找回其他用户的暗码。
1.Shopex 4.8.5暗码取回处新生成暗码可猜想缝隙
直接运用了时刻函数microtime()作为随机数,然后获取MD5的前6位。
1
substr(md5(print_r(microtime(),true)),0,6);
PHP 中microtime()的值除了当时服务器的秒数外,还有微秒数,奇妙数的改变范围在0.000000 -- 0.999999 之间,一般来说,服务器的时刻能够经过HTTP返回头的DATE字段来获取,因而咱们只需求遍历这1000000或许值即可。但咱们要运用暴力破解的方法建议1000000次网络恳求的话,网络恳求数也会十分之大。但是shopex十分交心的在生成暗码前再次将microtime() 输出了一次:

[1] [2]  黑客接单网

扫描二维码推送至手机访问。

版权声明:本文由黑客接单发布,如需转载请注明出处。

本文链接:http://therlest.com/105900.html

分享给朋友:

“聊一聊随机数安全” 的相关文章

奥运会遭到俄罗斯黑客攻击!黑客攻击微信聊天记录

人民网2021年8月13日02:28:03的消息,黑客攻击微信聊天记录 东京奥运会惨遭俄罗斯黑客攻击! 英国国家网络安全中心日前揭露了一项惊人的黑客计划:俄罗斯军事情报部门曾准备对原定今夏举办的东京奥林匹克运动会和残奥会发起网络攻击。据悉,其攻击目标涵盖赛事组织者、后勤公司和赞助商。 打开百...

【干货知识】高級不断渗透第八季-demo就是远程控制

本季度是《高級不断渗透-第七季demo的发展》的持续。 点一下文尾左下角“阅读”可阅读文章第七季文章正文。 在第一季有关后门中,文章内容提及再次编译程序notepad ,来引入有目标源代码后门结构。 在第六季有关后门中,文章内容假定不在获知notepad 的源代码,来引入无目标源代码沟...

我老公老是让他家的亲戚来我家,我该怎么办?请各位帮我想想办法,我

我老公老是让他家的亲戚来我家,我该怎么办?请各位帮我想想办法,我 请各位帮我想想办法,开网店怎么找女装货源唔爱神起助您成就财富人生,想做微商?想开实体店?想开淘宝店?什么才是你创业的最重要步骤?货源!想在微商卖童装母婴用品纸尿裤女装,开童装女装店铺,你去哪里找最好的货源?如何找童装女装一手货源呢?...

为什么反复烧开的水会有毒?

为什么反复烧开的水会有毒? 千滚水就是在炉上沸腾了一夜或很长时间的水,还有电热水器中反复煮沸的水。这种水因煮过久,水中不挥发性物质,如钙、镁等重金属成分和亚硝酸盐因浓缩后含量很高。久饮这种水,会干扰人的胃肠功能,出现暂时腹泻、腹胀;有毒的亚硝酸盐还会造成机体缺氧,严重者会昏迷惊厥,甚至死亡。 蒸...

茯苓多少钱一克贵吗 - 土茯苓和茯苓哪个贵

因为很难挖到。茯苓2点5-3点5元一两,2016年1月4日更新。 30元左右一斤,还有以后.药店的销售价格通常在20,价格更高些,我在这边收购,2011年茯苓价格分两种价格,也就是两种产品,心;脾;肺;肾经。也和并不容易挖到。 4]渗湿利水;健脾和胃;宁心安神。即使在茯苓产地的山里面,茯苓价格悄悄地...

统一柴机油价格 「柴机油和润滑脂」

不过他们不能混着用的统一,这个价格会便宜一点的,大桶,价格较高。我现在都是在美宴网买的进口机油,其次金引擎柴机油的油压稳定,cSt。 金引擎柴机油基础油均采用合成油,我就知道美孚.价格在280左右,工作小时,但其他渠道假货多。cSt,大桶。 壳,价格根据产品规格不同而定。有知道统一昆仑,长城,嘉实多...

评论列表

萌懂鱼芗
2年前 (2022-07-02)

语的API文档中的根底库(常用库)中的random库都是弱伪随机,许多开发天然就直接运用。但是,最重要也最丧命的是,弱伪随机数是不能用于暗码技能的。仍是第一种状况中的找回暗码场景,关于token的生成, 许多开发运用了时刻戳作为随机数(md5(时刻戳),md5(时刻戳+

酒奴债姬
2年前 (2022-07-03)

用于防护重放进犯; 分组暗码的CTR形式生成盐:用于依据口令的暗码PBE等0x02 随机数的安全性比较其他暗码技能,随机数很少遭到重视,但随机数在暗码技能和计算机运用中是十分重要的,不正确的运用随机数会导致一系列的安全问题。随机数的安全危险随机

可难抹忆
2年前 (2022-07-03)

唯品会账号相关缝隙可经过csrf登录恣意账号人人网-百度OAuth 2.0 redirect_uir CSRF 缝隙2.运用弱伪随机数1) 暗码取回许多暗码找回的场景,会发送给用户邮件一个url,中心包括一个tok

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。