首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
Fortify漏洞之Insecure Randomness(不安全随机数)
】的更多相关文章
Fortify漏洞之Insecure Randomness(不安全随机数)
继续对Fortify的漏洞进行总结,本篇主要针对 Insecure Randomness 漏洞进行总结,如下: 1.Insecure Randomness(不安全随机数) 1.1.产生原因: 成弱随机数的函数是 random(). 电脑是一种具有确定性的机器,因此不可能产生真正的随机性.伪随机数生成器 (PRNG) 近似于随机算法,始于一个能计算后续数值的种子. PRNG 包括两种类型:统计学的 PRNG 和密码学的 PRNG.统计学的 PRNG 可提供有用的统计资料,但其输出结果很容易预测…
Fortify漏洞修复总结
1.代码注入 1.1 命令注入 命令注入是指应用程序执行命令的字符串或字符串的一部分来源于不可信赖的数据源,程序没有对这些不可信赖的数据进行验证.过滤,导致程序执行恶意命令的一种攻击方式. 问题代码: $dir = $_POST['dir'] exec("cmd.exe /c dir" + $dir); 修复方案:(1)程序对非受信的用户输入数据进行净化,删除不安全的字符.(2)限定输入类型, 创建一份安全字符串列表,限制用户只能输入该列表中的数据. 修复例子: //方式1 if (!…
Fortify漏洞之Cross-Site Scripting(XSS 跨站脚本攻击)
书接上文,继续对Fortify漏洞进行总结,本篇主要针对XSS跨站脚步攻击漏洞进行总结,如下: 1.Cross-Site Scripting(XSS 跨站脚本攻击) 1.1.产生原因: 1. 数据通过一个不可信赖的数据源进入 Web 应用程序.对于 Reflected XSS(反射型),不可信赖的源通常为 Web 请求,只影响攻击到当前操作用户:而对于 Persisted(也称为 Stored 持久型)XSS,该源通常为数据库或其他后端数据存储,可能影响多操作用户. 2. 未检验包含在动态内容中…
Fortify漏洞之Portability Flaw: File Separator 和 Poor Error Handling: Return Inside Finally
继续对Fortify的漏洞进行总结,本篇主要针对 Portability Flaw: File Separator 和 Poor Error Handling: Return Inside Finally 漏洞进行总结,如下: 1.Portability Flaw: File Separator(文件分隔符) 1.1.产生原因: 不同的操作系统使用不同的字符作为文件分隔符.例如,Microsoft Windows 系统使用“\”,而 UNIX 系统则使用“/”.应用程序需要在不同的平台上运行时…
Fortify漏洞之Denial of Service: Regular Expression
继续对Fortify的漏洞进行总结,本篇主要针对 Denial of Service: Regular Expression 漏洞进行总结,如下: 1.Denial of Service: Regular Expression 1.1.产生原因: 实施正则表达式评估程序及相关方法时存在漏洞,该漏洞会导致评估线程在处理嵌套和重复的正则表达式组的重复和交替重叠时挂起.此缺陷可被攻击者用于执行拒绝服务 (DoS) 攻击. 示例: (e+)+ ([a-zA-Z]+)* (e|ee)+ 已知的正则表达…
Fortify漏洞之Portability Flaw: Locale Dependent Comparison
继续对Fortify的漏洞进行总结,本篇主要针对 Portability Flaw: Locale Dependent Comparison 漏洞进行总结,如下: 1.Portability Flaw: Locale Dependent Comparison 1.1.产生原因: 对可能与区域设置相关的数据进行比较时,应指定相应的区域设置. 示例 1:以下示例尝试执行验证,以确定用户输入是否包含 <script> 标签. ... public String tagProcessor(String…
Fortify漏洞之 Log Forging(日志伪造)
继续对Fortify的漏洞进行总结,本篇主要针对 Log Forging(日志伪造)的漏洞进行总结,如下: 1.1.产生原因: 在以下情况下会发生 Log Forging 的漏洞: 1. 数据从一个不可信赖的数据源进入应用程序. 2. 数据写入到应用程序或系统日志文件中. 为了便于以后的审阅.统计数据收集或调试,应用程序通常使用日志文件来储存事件或事务的历史记录.根据应用程序自身的特性,审阅日志文件可在必要时手动执行,也可以自动执行,即利用工具自动挑选日志中的重要事件或带有某种倾向性的信息. 如…
Fortify漏洞之 Privacy Violation(隐私泄露)和 Null Dereference(空指针异常)
继续对Fortify的漏洞进行总结,本篇主要针对 Privacy Violation(隐私泄露) 和 Null Dereference(空指针异常) 的漏洞进行总结,如下: 1.1.产生原因: Privacy Violation 会在以下情况下发生: 1. 用户私人信息进入了程序. 2. 数据被写到了一个外部介质,例如控制台.file system 或网络. 示例 1:以下代码包含了一个日志记录语句,该语句通过在日志文件中存储记录信息跟踪添加到数据库中的各条记录信息.在存储的其他数值中,getP…
Fortify漏洞之Dynamic Code Evaluation: Code Injection(动态脚本注入)和 Password Management: Hardcoded Password(密码硬编码)
继续对Fortify的漏洞进行总结,本篇主要针对 Dynamic Code Evaluation: Code Injection(动态脚本注入) 和 Password Management: Hardcoded Password(密码硬编码) 的漏洞进行总结,如下: 1.1.产生原因: 许多现代编程语言都允许动态解析源代码指令.这使得程序员可以执行基于用户输入的动态指令.当程序员错误地认为由用户直接提供的指令仅会执行一些无害的操作时(如对当前的用户对象进行简单的计算或修改用户的状态),就会出…
Fortify漏洞之Open Redirect(开放式重定向)
继续对Fortify的漏洞进行总结,本篇主要针对 Open Redirect(开放式重定向) 的漏洞进行总结,如下: 1.1.产生原因: 通过重定向,Web 应用程序能够引导用户访问同一应用程序内的不同网页或访问外部站点.应用程序利用重定向来帮助进行站点导航,有时还跟踪用户退出站点的方式.当 Web 应用程序将客户端重定向到攻击者可以控制的任意 URL 时,就会发生 Open redirect 漏洞. 攻击者可以利用 Open redirect 漏洞诱骗用户访问某个可信赖站点的 URL,并将…