Insecure Randomness(不安全随机数)

无厘头:本是青灯不归客 却因浊酒留风尘。星光不问赶路人,岁月不负有心人。

漏洞级别:高

产生原因:

  成弱随机数的函数是 random()。

  电脑是一种具有确定性的机器,因此不可能产生真正的随机性。伪随机数生成器 (PRNG) 近似于随机算法,始于一个能计算后续数值的种子。

  PRNG 包括两种类型:统计学的 PRNG 和密码学的 PRNG。统计学的 PRNG 可提供有用的统计资料,但其输出结果很容易预测,因此数据流容易复制。若安全性取决于生成数值的不可预测性,则此类型不适用。密码学的 PRNG 通过可产生较难预测的输出结果来应对这一问题。为了使加密数值更为安全,必须使攻击者根本无法、或极不可能将它与真实的随机数加以区分。通常情况下,如果并未声明 PRNG 算法带有加密保护,那么它有可能就是一个统计学的 PRNG,不应在对安全性要求较高的环境中使用,其中随着它的使用可能会导致严重的漏洞(如易于猜测的密码、可预测的加密密钥、会话劫持攻击和 DNS 欺骗)。

解决方式:时间戳

具体操作:(生成四位随机数字)

(new Date()).getTime().toString(16).substring(7)

Fortify-Insecure Randomness相关推荐

  1. 解决Fortify漏洞:Insecure Randomness(不安全随机数)

    1. 解释 Fortify漏洞:Insecure Randomness(不安全随机数)指的是代码中使用了不安全或弱随机数生成器导致的安全漏洞.随机数在密码学应用.加密和解密等领域中经常被使用,如果生成 ...

  2. 用Fortify SCA分析代码漏洞

    http://www.cnblogs.com/hyddd/archive/2009/02/23/1396790.html hyddd原创,转载请说明. 上次介绍了用FindBugs辅助分析代码漏洞,这 ...

  3. fortify源代码扫描问题分析汇总

    编号 漏洞名称 漏洞危害 修复建议 1 Dynamic Code Evaluation: Unsafe Deserialization 动态代码评估:不安全的反序列化 Actuator正是Spring ...

  4. Fortify扫描漏洞解决方案

    目录 Log Forging漏洞: Null Dereference Unreleased Resource: Streams Portability Flaw: File Separator Por ...

  5. Fortify常见漏洞解决方案

    阅读文本大概需要3分钟. Log Forging漏洞: 1.数据从一个不可信赖的数据源进入应用程序. 在这种情况下,数据经由getParameter()到后台.  2. 数据写入到应用程序或系统日志文 ...

  6. 源码扫描工具Fortify SCA和FireLine对比说明

    一.Fortify SCA 1.1软件简介 Fortify SCA是目前业界最为全面的源代码白盒安全测试工具,它能精确定位到代码级的安全问题,完全自动化的完成测试,最广泛的安全漏洞规则,多维度的分析源 ...

  7. fortify java_Fortify SCA扫描JAVA源代码结果总结

    1.SQL注入 在输入的字符串之中注入恶意的SQL指令,这些注入的指令会被数据库误认为是正常的SQL指令进行执行,是系统遭到破坏. 例: String selectid="select&qu ...

  8. Fortify漏洞修复总结

    1.代码注入 1.1 命令注入 命令注入是指应用程序执行命令的字符串或字符串的一部分来源于不可信赖的数据源,程序没有对这些不可信赖的数据进行验证.过滤,导致程序执行恶意命令的一种攻击方式. 问题代码: ...

  9. Fortify SCA 简介

    Fortify SCA 是一个静态的.白盒的软件源代码安全测试工具. 它通过内置的五大主要分析引擎:数据流.语义.结构.控制流.配 置流等对应用软件的源代码进行静态的分析,分析的过程中与它特有 的软件 ...

  10. Fortify SCA

    Fortify SCA简介   Fortify SCA 是一个静态的.白盒的软件源代码安全测试工具.它通过内置的五大主要分析引擎:数据流.语义.结构.控制流.配置流等对应用软件的源代码进行静态的分析, ...

最新文章

  1. build/envsetup.sh脚本分析
  2. Web攻防之XSS,CSRF,SQL注入
  3. Nacos源码NacosAutoServiceRegistration
  4. mysql for mac中文_mysql for Mac 下创建数据表中文显示为?的解决方法
  5. Linux学习总结(45)——Linux服务器出现卡慢的基本解决方法
  6. 成功解决1406, “Data too long for column ‘txt‘ at row 1“
  7. mysql+centos7+主从复制
  8. MSP MCU I2C入门指南
  9. 加拿大计算机工程研究生,加拿大维多利亚大学电子与计算机工程系副教授诚招硕士研究生 - 导师招生 - 小木虫 - 学术 科研 互动社区...
  10. 怎么修改CSDN的个性签名或者个人说明?
  11. MySQL备份报错mysqldump: Got error: 1045: Access denied for user ‘root‘@‘localhost‘ (using password: YES)
  12. 程序员试用期提离职被领导起诉
  13. 用CH341A烧录外挂Flash (W25Q16JV)
  14. 机器学习——线性回归(拟合一条直线)
  15. Vue3 - props
  16. 《微信小程序》 开源项目
  17. 16-K3S Helm
  18. Qt4 Linux下读写excel
  19. c语言输入三个身高输出最高,输入两个人的身高,计算并输出他们的平均身高.(身高以米为单位,最后结果保留两位小数)...
  20. 波澜哥utau音源下载

热门文章

  1. java验证签名_简单API接口签名验证
  2. Continual Learning 经典方法 — Gradient Episodic Memory (GEM)
  3. ResultSet的升级RowSet、离线的CachedRowSet、离线分页查询
  4. java我的世界基本技巧,2022最新
  5. c++中包含empty virtual base class 类的sizeof结果分析
  6. 庆祝一下_如何远距离庆祝母亲节
  7. 原子数组AtomicIntegerArray实现原理简析
  8. J0ker的CISSP之路:复习Access Control(9)
  9. 废弃的marquee标签
  10. MATLAB 阻滞增长模型