惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 司徒正美
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
美团技术团队
WordPress大学
WordPress大学
罗磊的独立博客
Last Week in AI
Last Week in AI
人人都是产品经理
人人都是产品经理
爱范儿
爱范儿
MongoDB | Blog
MongoDB | Blog
J
Java Code Geeks
H
Hackread – Cybersecurity News, Data Breaches, AI and More
H
Help Net Security
S
SegmentFault 最新的问题
C
Check Point Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
腾讯CDC
Engineering at Meta
Engineering at Meta
The GitHub Blog
The GitHub Blog
F
Fortinet All Blogs
D
DataBreaches.Net
雷峰网
雷峰网
GbyAI
GbyAI
宝玉的分享
宝玉的分享

博客园 - luoluo

各地电信运营商插广告赚钱,北京联通也不甘落后 幻影t-shirt 2010 新年 每天都是GDP CorelDraw工具自动切换到选择工具的问题 要淡定 flash 0day的临时防御 Still Believe 也谈Server Limit DOS的解决方案 实现JavaScript匿名透明递归 发现一篇关于flash垃圾回收机制的文章 开春第一趟单骑上妙峰 杭州归来 IE window对象跨域的一些特性 firebug也支持debugger关键字了 把JS函数转URL形式 看到的一点进步 北京春雪 记忆力衰退
网上流行的JS HTMLDecode不安全
luoluo · 2009-03-17 · via 博客园 - luoluo

网上很多文档提到一个JS利用DOM特性作HTMLDecode的方法:

function HTMLDecode(strEncodeHTML)
{
    
var div = document.createElement('div');
    div.innerHTML 
= strEncodeHTML;
    
return div.innerText;
}

这个函数是不安全的,如果参数带有用户输入,就可能导致执行JS代码:

function HTMLDecode(strEncodeHTML)
{
    
var div = document.createElement('div');
    div.innerHTML 
= strEncodeHTML;
    
return div.innerText;
}

HTMLDecode(

"<img src=1 onerror=alert(1) />");

有人很傻很天真的以为,这个没有被appendChild到dom树的元素,应该不会执行。