1 / 45
文档名称:

阿里巴巴集团web安全标准Ver1.4.doc

格式:doc   大小:2,639KB   页数:45页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

阿里巴巴集团web安全标准Ver1.4.doc

上传人:文艺人生 2022/4/24 文件大小:2.58 MB

下载得到文件列表

阿里巴巴集团web安全标准Ver1.4.doc

文档介绍

文档介绍:
集团web安全标准
ver

刚那个用户。
解决方案
HTML/XML页面输出规范:
在HTML/XML中显示“用户可控数据”前,应该进行html escape转义。
JAVA示例:
<div>#escapeHTML($) </div>
<td>#escapeHTML($)</td>
所有HTML和XML中输出的数据,都应该做html escape转义。
escapeHTML函数参考esapi实现:
-esapi-java/source/browse/trunk/src/main/java/org/owasp/esapi/codecs/
PHP示例:
<div>htmlentities($row[""])</div>
所有HTML和XML中输出的数据,都应该做html escape转义。
escapeHTML需要进行html转义应该按照以下列表进行转义
& --> &
< --> <
> --> >
" --> "
' --> '
2,在javascript内容中输出的“用户可控数据”,需要做javascript escape转义。
html转义并不能保证在脚本执行区域内数据的安全,也不能保证脚本执行代码的正常运行。
JAVA示例:
<script>alert('#escapeJavaScript($)')</script>
<script>x='#escapeJavaScript($)'</script>
<div onmouseover="x='#escapeJavaScript($)'"</div>
需要转义的字符包括
/ --> \/
' --> \'
" --> \"
\ --> \\
escapeJavaScript函数参考esapi实现:
-esapi-java/source/browse/trunk/src/main/java/org/owasp/esapi/codecs/
3,对输出到富文本中的“用户可控数据”,做富文本安全过滤(允许用户输出HTML的情况)。
示例(Fasttext框架):
<td>文章内容:</td><td>#SHTML($)</td>
安全过滤的代码,请参考“Fasttext框架”的富文本输出函数。
Fasttext源码:
-/
4,输出在url中的数据,做url安全输出。
一些html标签的属性,需要,如果接收“用户可控数据”,需要做安全检查。
以下属性的值,如果是用户可控数据,需要做安全检查
'action', 'background', 'codebase', 'dynsrc', 'href', 'lowsrc', 'src',
这些属性的值,一般都是一个URL,如果整串URL都是由“用户可控数据”组成的,则必须满足以下条件:
1)以“http”开头
char[] uc = ();
if(uc[0] != 'h' || uc[1] != 't' || uc[2] != 't' || uc[3] != 'p'){
return "";
}
2)转义“用户可控数据”中的以下字符
< --> %3C
> --> %3E
" --> %22
' --> %27
举例使用:
<a href=”#surl($url)”>链接</a>
<img src=”#surl($imgurl)”>
。。。
Surl函数参考fasttext框架中的实现:
-/