13 岁女学生因两行 JavaScript 代码被捕!
作者 | 伍杏玲
出品 | 极客宝宝(ID:geek_baby)
13岁,在中国正是上初中的年纪,中学生们正忙于做不完的作业和补不完的习。
可最近在日本刈谷市,一名13岁的女学生因为将一段JavaScript代码的链接发布到网上,被警察逮捕了。
只因两行 JavaScript 代码,她被捕了
你可能想问:什么代码这么厉害呢?
笔者脑海里已出现“天才黑客少女入侵某某官网”的情景了……
结果一看源码,空气有些凝固。
for ( ; ; ) {
window.alert(" ∧_∧ ババババn( ?ω?)=つ≡つn(っ ≡つ=つn`/ )n(ノΠUn何回閉じても無駄ですよ~wwnm9(^Д^)プギャー!!n byソル (@0_Infinity_)")
}
笔者将代码拷贝在txt文件,转成Html跑了下:
一段很普通的window.alert代码,上面的日文翻译是“多次关闭它是没用的”。只是加了For循环,点击“确定”还会一直弹出。
在谷歌浏览器里,可以直接叉掉即可。看起来和那女生说的一样,是一个恶作剧实践。她是觉得让别人点开链接但关闭不上弹出框是很好玩的事。
真の熊孩子系列。
有网友也疑惑,不明白为什么这个很简单的脚本会引起警方如此大的动静,这恶作剧脚本早在2014年就有了。
此事仍在发酵,有东京IT工程师Kimikazu Kato认为警方仅因为一段JS的alert代码就将女孩归为犯罪,是一件很滑稽的事。
于是他在GitHub发布一个叫“大家一起被捕吧计划”的项目,借此来抗议警方,在此计划中成员将会分享JS无限弹窗代码。
被“捕”方法的方法是:“只要 Fork 本项目,并建立一个新的 gh-pages Branch。如果分享 ‘http://你的账户.github.io/lets-get-arrested’ 这个 URL 到各大 SNS 平台上口味更佳。”
目前已有25个Issues,Readme如下:
上面的JS代码十分简单且没有危害,为什么会收到警方的重视呢?
因为这是XSS攻击!
XSS攻击
几年前新浪微博曾有一次被攻击的经历:有用户自动向自己的粉丝发送含“有毒”的私信和微博,当粉丝点开链接时,立即中毒再往外传播,形成恶性循环。
这就是XSS攻击。
XSS攻击又叫跨站脚本式攻击,是一种经常出现在WEB应用中的计算机安全漏洞,它可以将恶意代码植入到提供给其它人用的页面中,钓鱼网站就是XSS攻击。简单说,XSS是尽一切办法在目标网站上执行非目标网站上原有的脚本,目的是盗取用户帐号、控制企业数据、非法转账、控制受害者机器向其它网站发起攻击等。
XSS攻击有三种类型:
1.反射型:攻击者诱使用户去访问一个包含恶意代码的 URL,当受害者点击该链接时,恶意代码会直接执行,常用来窃取客户端 Cookies 或进行钓鱼欺骗。
2.存储型
攻击者在网站发布带有恶意代码的文章,此时网站服务器将恶意代码存储了,后续每个访问该文章的人就会触发恶意代码。
3.DOM-based 型
基于文档对象模型Document Objeet Model的一种漏洞,其实也属于反射型。
微博那次攻击属于反射性攻击,是由于网站对部分XSS过滤不严所致,当用户点开有毒链接时,脚本被执行了:www.2kt.cn/images/t.js。
一般来说,这种网址会被拦截,结果程序设计得不够安全,脚本被执行,导致问题的产生。防范XSS攻击需要前后端一起做相应的防御手段才行。
如果说上述的13岁少女拿着简单的编程技术去做恶作剧,以下的17岁黑客少年可真的触犯法律了!
黑客少年盗刷 14.98 亿元信用卡
在2013年7月,某商业银行在全国范围里连续发生多起银行卡被网上盗刷的案件,受害人达数千人,涉案金额达14.98亿余元。
经警方排查,这起重大犯罪案件的主犯竟是一位17岁的少年黑客!
他先是通过自编的黑客软件在网上套取了160万条公民个人信息和银行卡账号(其中19万条信息可以直接网上盗刷),再通过中介倒卖这些信息。接着是寻找银行网上支付软件的支付漏洞,用这些偷来的真实用户信息在网上进行盗刷或转账。
有趣的是,这个小伙子只有初中文化,却自学成为一名黑客高手。进了看守所后,他仍勤奋地在自学C++。
看到这,你还会说“技术无罪”吗?希望各IT从业者能合法合规地使用技术,将技术用在造福人类社会上。
资料:
https://www3.nhk.or.jp/lnews/kobe/20190304/2020003239.html
易网科技:什么是 XSS 攻击,XSS有几种类型?
热 文 推 荐
☞这份“插件英雄榜Top20”才是Chrome的正确打开方式!
☞剧情反转! 创始人去世事件再爆新料, 1.8亿美元难道去了天堂?
System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!\n");
cout << "点个好看吧!" << endl;
Console.WriteLine("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"