端玛科技Logo

当前位置:首页新闻资讯

GB/T34946-2017 C#

2021-02-231083

 C#语言是一种面向对象的、运行于.NET Framework之上的高级程序设计语言。它广泛应用于Windows平台应用软件的开发,是.NET开发的首选语言。本标准的C#语言语法遵循ISO/IEC 23270:2006语法标准。众所周知,由于各种人为因素影响,每个软件的源代码都难免会存在漏洞,而软件信息泄露、数据或代码被恶意篡改等安全事件的发生一般都与源代码漏洞有关。为尽量减少C#语言源代码中存在的漏洞,有必要制定针对C#语言的源代码漏洞测试规范。

本标准的漏洞分类与漏洞说明是参照MITRE公司发布的CWE(Common Weakness Enumeration)确定的。本标准主要选取了现行行业主流的自动化静态分析工具能扫描的关键CWE漏洞进行说明。

本标准仅针对自动化静态分析工具支持的关键漏洞进行说明,应用本标准开展源代码漏洞测试时应根据实际需要对漏洞进行裁剪和补充。

1 范围

本标准规定了C#语言源代码漏洞测试的测试总则、漏洞分类和漏洞说明。

本标准适用于开发方或第三方机构的测试人员利用自动化静态分析工具开展的C#语言源代码测试活动,C#语言的程序设计和编码人员也可参考使用。

2 规范性引用文件

下列文件对于本文件的引用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

GB/T 8566 信息技术 软件生存周期过程(GB/T 8566—2007,ISO/IEC 12207:1995,MOD)

GB/T 9386-2008 计算机软件测试文档编制规范

GB/T 11457 信息技术 软件工程术语

GB/T 15532-2008 计算机软件测试规范

GB/T 20158 信息技术 软件生存周期过程配置管理(GB/T 20158—2006,ISO/IEC TR 15846:1998,IDT)


A.1.1 C#标准涉及的 安全漏洞名称 

以下按本标准漏洞出现的顺序列出了本标准所有漏洞的类别和名称,供大家参考 :

a)   行为问题

    1)   不可控的内存分配

b)   路径错误

    1)   不可信的搜索路径

c)   数据处理

   1)   相对路径遍历

   2)   绝对路径遍历

   3)   命令注入

    4)   SQL注入

    5)   信息通过错误消息泄露

    6)   信息通过服务器日志文件泄露

    7)   信息通过持久cookie泄露

    8)   未检查的输入作为循环条件

    9)   XPath注入

d)   处理程序错误

    1)   未限制危险类型文件的上传

e)   不充分的封装

    1)   违反信任边界

f)   安全功能

    1)   明文存储口令

    2)   存储可恢复的口令

    3)   口令硬编码

    4)   依赖referer字段进行身份验证

    5)   Cookie中的敏感信息明文存储

    6)   敏感信息明文传输

    7)   使用已破解或危险的加密算法

    8)   可逆的散列算法

  9)   密码分组链接模式未使用随机初始化矢量

  10)  不充分的随机数

  11)  安全关键的行为依赖反向域名解析

  12)  没有要求使用强口令

   13)  没有对口令域进行掩饰

   14)  依赖未经验证和完整性检查的cookie

   15)  通过用户控制的SQL主键绕过授权

   16)  HTTPS会话中的敏感cookie没有设置安全属性

   17)  未使用盐值计算散列值

  18)  RSA算法未使用最优非对称加密填充

g)   时间和状态

  1)   会话固定

h)   Web问题

 1)   跨站脚本

 2)   跨站请求伪造

 3)   HTTP响应拆分

 4)   开放重定向

 5)   依赖外部提供的文件的名称或扩展名

i)   用户界面错误

  1)   点击劫持


欲了解该标准更为详细的细节, 及如何实现, 请联系我们。 




上一篇:GB/T34944-2017 Java

下一篇:MITRE CWE