Сегодня я нашел интригующий пример website-terminal-copy-paste. Например, вам может понадобиться клонировать репозиторий git. На веб-странице это выглядит так:
git clone git://git.kernel.org/pub/scm/utils/kup/kup.git
но когда вы копируете его в терминал, он становится:
git clone /dev/null; clear; echo -n "Hello ";whoami|tr -d '\n';echo -e '!\nThat was a bad idea. Don'"'"'t copy code from websites you don'"'"'t trust!
Here'"'"'s the first line of your /etc/passwd: ';head -n1 /etc/passwd
git clone git://git.kernel.org/pub/scm/utils/kup/kup.git
потому что остальное скрыто
<p class="codeblock">
<!-- Oh noes, you found it! -->
git clone
<span style="position: absolute; left: -100px; top: -100px">/dev/null; clear; echo -n "Hello ";whoami|tr -d '\n';echo -e '!\nThat was a bad idea. Don'"'"'t copy code from websites you don'"'"'t trust!<br>Here'"'"'s the first line of your /etc/passwd: ';head -n1 /etc/passwd<br>git clone </span>
git://git.kernel.org/pub/scm/utils/kup/kup.git
</p>
Конечно это может быть любая команда. Поэтому мой вопрос заключается в том, чтобы убедиться, что мы не получаем вредоносный код.
Является ли копирование с веб-сайта, вставка его в текстовый редактор (который показывает непечатный символ), проверка команд и копирование-вставка в терминал безопасным способом, чтобы избежать такого рода атак?
РЕДАКТИРОВАТЬ:
Вероятно, лучший способ - никогда не вставлять что-либо непосредственно с веб-сайта в терминал. Проверьте этот случай:
<h1>Welcome on my tutorial site</h1>
<h3>Below code learn you how to use echo command. Copy both commands and paste it to your terminal</h6>
<hr/>
<p class="codeblock" >
<!-- Oh noes, you found it! -->
echo Line1;
<pre style="position: absolute; left: -100px; top: -100px">echo "Owned";</pre>
echo Line2;
</p>
<hr/>
Когда вы копируете и вставляете его в терминал, команда 1 и скрытый будут выполнены немедленно. У вас не будет возможности проверить это в терминале.