13 岁少女因几行 JS 代码被逮了!

2024-02-23 14:30
文章标签 代码 js 13 少女 几行

本文主要是介绍13 岁少女因几行 JS 代码被逮了!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转自CSDN公众号极客宝宝

作者 | 伍杏玲

出品 | 极客宝宝(ID:geek_baby)

只因几行Js代码,她被逮了

13岁,在中国正是上小学六年级或是初中一年级的年纪,他们正忙于做不完的作业和补不完的习。

最近在日本刈谷市,一名13岁的女学生,因为将一段JavaScript代码的链接发布到网上,

而被警察逮捕了。

什么代码这么厉害呢?笔者脑海里已出现“天才黑客少女入侵某某官网”的情景了……

结果一看源码,空气有些凝固。

for ( ; ; ) {
  window.alert(" ∧_∧ ババババn( ?ω?)=つ≡つn(っ ≡つ=つn`/  )n(ノΠUn何回閉じても無駄ですよ~wwnm9(^Д^)プギャー!!n byソル (@0_Infinity_)")
}

笔者将代码拷贝在txt,跑了下:

一段很普通的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岁黑客少年可真的触犯法律了!

海燕3号:黑客少年犯罪事件

在2013年7月,某商业银行在全国范围里连续发生多起银行卡被网上盗刷的案件,受害人达数千人。

经警方排查,这起重大犯罪案件的主犯竟是一位17岁的少年黑客!

他先是通过自编的黑客软件在网上套取了160万条公民个人信息和银行卡账号(其中19万条信息可以直接网上盗刷),再通过中介倒卖这些信息。接着是寻找银行网上支付软件的支付漏洞,用这些偷来的真实用户信息在网上进行盗刷或转账。

据警方统计,涉案金额达14.98亿余元。

有趣的是,这个小伙子只有初中文化,却自学成为一名黑客高手。进了看守所后,他仍勤奋地在自学C++。

以前有人总说“技术无罪”,可真是如此吗?实际上,技术无罪仅是一层滑稽的遮丑布罢了。希望各IT从业者能将合法合规地使用技术,造福人类社会。

 

这篇关于13 岁少女因几行 JS 代码被逮了!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/738947

相关文章

Spring Boot 3.4.3 基于 Spring WebFlux 实现 SSE 功能(代码示例)

《SpringBoot3.4.3基于SpringWebFlux实现SSE功能(代码示例)》SpringBoot3.4.3结合SpringWebFlux实现SSE功能,为实时数据推送提供... 目录1. SSE 简介1.1 什么是 SSE?1.2 SSE 的优点1.3 适用场景2. Spring WebFlu

java之Objects.nonNull用法代码解读

《java之Objects.nonNull用法代码解读》:本文主要介绍java之Objects.nonNull用法代码,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录Java之Objects.nonwww.chinasem.cnNull用法代码Objects.nonN

SpringBoot实现MD5加盐算法的示例代码

《SpringBoot实现MD5加盐算法的示例代码》加盐算法是一种用于增强密码安全性的技术,本文主要介绍了SpringBoot实现MD5加盐算法的示例代码,文中通过示例代码介绍的非常详细,对大家的学习... 目录一、什么是加盐算法二、如何实现加盐算法2.1 加盐算法代码实现2.2 注册页面中进行密码加盐2.

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤

在C#中调用Python代码的两种实现方式

《在C#中调用Python代码的两种实现方式》:本文主要介绍在C#中调用Python代码的两种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#调用python代码的方式1. 使用 Python.NET2. 使用外部进程调用 Python 脚本总结C#调

Java时间轮调度算法的代码实现

《Java时间轮调度算法的代码实现》时间轮是一种高效的定时调度算法,主要用于管理延时任务或周期性任务,它通过一个环形数组(时间轮)和指针来实现,将大量定时任务分摊到固定的时间槽中,极大地降低了时间复杂... 目录1、简述2、时间轮的原理3. 时间轮的实现步骤3.1 定义时间槽3.2 定义时间轮3.3 使用时

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使

Java强制转化示例代码详解

《Java强制转化示例代码详解》:本文主要介绍Java编程语言中的类型转换,包括基本类型之间的强制类型转换和引用类型的强制类型转换,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录引入基本类型强制转换1.数字之间2.数字字符之间引入引用类型的强制转换总结引入在Java编程语言中,类型转换(无论

Vue 调用摄像头扫描条码功能实现代码

《Vue调用摄像头扫描条码功能实现代码》本文介绍了如何使用Vue.js和jsQR库来实现调用摄像头并扫描条码的功能,通过安装依赖、获取摄像头视频流、解析条码等步骤,实现了从开始扫描到停止扫描的完整流... 目录实现步骤:代码实现1. 安装依赖2. vue 页面代码功能说明注意事项以下是一个基于 Vue.js

mybatis-plus 实现查询表名动态修改的示例代码

《mybatis-plus实现查询表名动态修改的示例代码》通过MyBatis-Plus实现表名的动态替换,根据配置或入参选择不同的表,本文主要介绍了mybatis-plus实现查询表名动态修改的示... 目录实现数据库初始化依赖包配置读取类设置 myBATis-plus 插件测试通过 mybatis-plu